- // SonarQube, open source software quality management tool.
- // Copyright (C) 2008-2016 SonarSource
- // mailto:contact AT sonarsource DOT com
- //
- // SonarQube is free software; you can redistribute it and/or
- // modify it under the terms of the GNU Lesser General Public
- // License as published by the Free Software Foundation; either
- // version 3 of the License, or (at your option) any later version.
- //
- // SonarQube is distributed in the hope that it will be useful,
- // but WITHOUT ANY WARRANTY; without even the implied warranty of
- // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- // Lesser General Public License for more details.
- //
- // You should have received a copy of the GNU Lesser General Public License
- // along with this program; if not, write to the Free Software Foundation,
- // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
- syntax = "proto2";
-
- package sonarqube.ws.issues;
-
- import "ws-commons.proto";
-
- option java_package = "org.sonarqube.ws";
- option java_outer_classname = "Issues";
- option optimize_for = SPEED;
-
- // Response of GET api/issues/search
- message SearchWsResponse {
- reserved 5;
- reserved 1;
- reserved 2;
- reserved 3;
- optional sonarqube.ws.commons.Paging paging = 4;
-
- // Total amount of effort, only when the facet "total" is enabled
- optional int64 effortTotal = 13;
-
- repeated Issue issues = 6;
- repeated Component components = 7;
- optional sonarqube.ws.commons.Rules rules = 8;
- optional Users users = 9;
-
- // Deprecated since 5.5, action plan has been removed
- optional ActionPlans unusedActionPlans = 10;
- optional Languages languages = 11;
- optional sonarqube.ws.commons.Facets facets = 12;
- }
-
- message Operation {
- optional Issue issue = 1;
- repeated Component components = 2;
- repeated sonarqube.ws.commons.Rule rules = 3;
- repeated sonarqube.ws.commons.User users = 4;
- }
- message AddCommentResponse {
- optional Issue issue = 1;
- repeated Component components = 2;
- repeated sonarqube.ws.commons.Rule rules = 3;
- repeated sonarqube.ws.commons.User users = 4;
- }
- message AssignResponse {
- optional Issue issue = 1;
- repeated Component components = 2;
- repeated sonarqube.ws.commons.Rule rules = 3;
- repeated sonarqube.ws.commons.User users = 4;
- }
- message DeleteCommentResponse {
- optional Issue issue = 1;
- repeated Component components = 2;
- repeated sonarqube.ws.commons.Rule rules = 3;
- repeated sonarqube.ws.commons.User users = 4;
- }
- message DoTransitionResponse {
- optional Issue issue = 1;
- repeated Component components = 2;
- repeated sonarqube.ws.commons.Rule rules = 3;
- repeated sonarqube.ws.commons.User users = 4;
- }
- message SetSeverityResponse {
- optional Issue issue = 1;
- repeated Component components = 2;
- repeated sonarqube.ws.commons.Rule rules = 3;
- repeated sonarqube.ws.commons.User users = 4;
- }
- message SetTagsResponse {
- optional Issue issue = 1;
- repeated Component components = 2;
- repeated sonarqube.ws.commons.Rule rules = 3;
- repeated sonarqube.ws.commons.User users = 4;
- }
- message SetTypeResponse {
- optional Issue issue = 1;
- repeated Component components = 2;
- repeated sonarqube.ws.commons.Rule rules = 3;
- repeated sonarqube.ws.commons.User users = 4;
- }
- message TagsResponse {
- repeated string tags = 1;
- }
-
- message Issue {
- reserved 29; //drop organization
-
- optional string key = 1;
- optional string rule = 2;
- optional sonarqube.ws.commons.Severity severity = 3;
- optional string component = 4;
- optional int64 unusedComponentId = 5;
- optional string project = 6;
- reserved 7; // drop subProject
- optional int32 line = 8;
- optional string hash = 31;
- optional sonarqube.ws.commons.TextRange textRange = 9;
- repeated sonarqube.ws.commons.Flow flows = 10;
- optional string resolution = 11;
- optional string status = 12;
- optional string message = 13;
-
- optional string effort = 28;
- // Deprecated since 5.5, replaced by effort
- optional string debt = 14;
-
- optional string assignee = 15;
-
- // Unused since 5.5, manual issues feature has been removed
- optional string unusedReporter = 16;
-
- // SCM login of the committer who introduced the issue
- optional string author = 17;
-
- // Deprecated since 5.5, action plan has been removed
- optional string actionPlan = 18;
-
- repeated string tags = 19;
-
- // the transitions allowed for the requesting user.
- optional Transitions transitions = 20;
-
- // the actions allowed for the requesting user.
- optional Actions actions = 21;
-
- optional Comments comments = 22;
- optional string creationDate = 23;
- optional string updateDate = 24;
- optional string fUpdateAge = 25;
- optional string closeDate = 26;
-
- optional sonarqube.ws.commons.RuleType type = 27;
-
-
- optional string branch = 30;
- optional string pullRequest = 32;
-
- optional string externalRuleEngine = 33;
- reserved 34; //drop fromHotspot
- optional string scope = 35;
-
- optional bool quickFixAvailable = 36;
- optional string ruleDescriptionContextKey = 37;
-
- repeated sonarqube.ws.commons.MessageFormatting messageFormattings = 38;
-
- repeated string codeVariants = 39;
- }
-
- message Transitions {
- repeated string transitions = 1;
- }
-
- message Actions {
- repeated string actions = 1;
- }
-
- message Comments {
- repeated sonarqube.ws.commons.Comment comments = 1;
- }
-
- // Deprecated since 5.5
- message ActionPlan {
- optional string key = 1;
- optional string name = 2;
-
- // TODO define enum
- optional string status = 3;
- optional string deadLine = 4;
- // TODO to be renamed, is it id or key ?
- optional string project = 5;
- }
-
- // Deprecated since 5.5
- message ActionPlans {
- repeated ActionPlan actionPlans = 1;
- }
-
- message Language {
- optional string key = 1;
- optional string name = 2;
- }
-
- message Languages {
- repeated Language languages = 1;
- }
-
- message Component {
- reserved 3, 11; //drop organization
- optional int64 deprecatedId = 1;
- optional string key = 2;
- optional bool enabled = 4;
- optional string qualifier = 5;
- optional string name = 6;
- optional string longName = 7;
- optional string path = 8;
- optional int64 unusedProjectId = 9;
- optional int64 unusedSubProjectId = 10;
- optional string branch = 12;
- optional string pullRequest = 13;
- }
-
- // Response of GET api/issues/changelog
- message ChangelogWsResponse {
- repeated sonarqube.ws.commons.Changelog changelog = 1;
- }
-
- // Response of POST api/issues/bulk_change
- message BulkChangeWsResponse {
- optional int64 total = 1;
- optional int64 success = 2;
- optional int64 ignored = 3;
- optional int64 failures = 4;
- }
-
- message Users {
- repeated sonarqube.ws.commons.User users = 1;
- }
-
- // Response of GET api/issues/authors
- message AuthorsResponse {
- repeated string authors = 1;
- }
-
- // Response of GET api/issues/pull
- message IssuesPullQueryTimestamp {
- required int64 queryTimestamp = 1;
- }
-
- message TextRange {
- optional int32 startLine = 1;
- optional int32 startLineOffset = 2;
- optional int32 endLine = 3;
- optional int32 endLineOffset = 4;
- optional string hash = 5;
- }
-
- message Location {
- optional string filePath = 1;
- optional string message = 2;
- optional TextRange textRange = 3;
- repeated sonarqube.ws.commons.MessageFormatting messageFormattings = 4;
- }
-
- message IssueLite {
- required string key = 1;
- optional int64 creationDate = 2;
- optional bool resolved = 3;
- optional string ruleKey = 4;
- optional sonarqube.ws.commons.Severity userSeverity = 5;
- optional sonarqube.ws.commons.RuleType type = 6;
- optional Location mainLocation = 7;
- optional bool closed = 8;
- }
-
-
- // Response of GET api/issues/pull_taint
- message TaintVulnerabilityPullQueryTimestamp {
- required int64 queryTimestamp = 1;
- }
-
- message TaintVulnerabilityLite {
- required string key = 1;
- optional int64 creationDate = 2;
- optional bool resolved = 3;
- optional string ruleKey = 4;
- optional sonarqube.ws.commons.Severity severity = 5;
- optional sonarqube.ws.commons.RuleType type = 6;
- optional Location mainLocation = 7;
- optional bool closed = 8;
- repeated Flow flows = 9;
- optional bool assignedToSubscribedUser = 10;
- optional string ruleDescriptionContextKey = 11;
- }
-
- message Flow {
- repeated Location locations = 1;
- optional string description = 2;
- optional sonarqube.ws.commons.FlowType type = 3;
- }
-
- // Response of GET api/issues/list
- message ListWsResponse {
- optional sonarqube.ws.commons.Paging paging = 1;
- repeated Issue issues = 2;
- repeated Component components = 3;
- }
|