blob: 2fcb7cc2b6dfb327caae27253721387ec8d27c0e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
// 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.plugins;
import "ws-commons.proto";
option java_package = "org.sonarqube.ws";
option java_outer_classname = "Plugins";
option optimize_for = SPEED;
// WS api/plugins/available
message AvailablePluginsWsResponse {
repeated AvailablePlugin plugins = 1;
optional string updateCenterRefresh = 2;
}
message AvailablePlugin {
optional string key = 1;
optional string name = 2;
optional string category = 3;
optional string description = 4;
optional string license = 5;
optional string termsAndConditionsUrl = 6;
optional string organizationName = 7;
optional string organizationUrl = 8;
optional string issueTrackerUrl = 9;
optional string homepageUrl = 10;
optional bool editionBundled = 11;
optional Release release = 12;
optional Update update = 13;
}
message Release {
optional string version = 1;
optional string date = 2;
optional string description = 3;
optional string changeLogUrl = 4;
}
message Update {
optional UpdateStatus status = 1;
repeated Require requires = 2;
}
enum UpdateStatus {
COMPATIBLE = 0;
INCOMPATIBLE = 1;
REQUIRES_SYSTEM_UPGRADE = 2;
DEPS_REQUIRE_SYSTEM_UPGRADE = 3;
}
message Require {
optional string key = 1;
optional string name = 2;
optional string description = 3;
}
// WS api/plugins/updates
message UpdatesPluginsWsResponse {
repeated UpdatablePlugin plugins = 1;
optional string updateCenterRefresh = 2;
}
message UpdatablePlugin {
optional string key = 1;
optional string name = 2;
optional string category = 3;
optional string description = 4;
optional string license = 5;
optional string termsAndConditionsUrl = 6;
optional string organizationName = 7;
optional string organizationUrl = 8;
optional string issueTrackerUrl = 9;
optional string homepageUrl = 10;
optional bool editionBundled = 11;
repeated AvailableUpdate updates = 12;
}
message AvailableUpdate {
optional Release release = 1;
optional UpdateStatus status = 2;
repeated Require requires = 3;
}
// WS api/plugins/installed
message InstalledPluginsWsResponse {
repeated PluginDetails plugins = 1;
}
message PluginDetails {
optional string key = 1;
optional string name = 2;
optional string description = 3;
optional string category = 4;
optional string version = 5;
optional string license = 6;
optional string organizationName = 7;
optional string organizationUrl = 8;
optional bool editionBundled = 9;
optional string homepageUrl = 10;
optional string issueTrackerUrl = 11;
optional string implementationBuild = 12;
optional string filename = 13;
optional string hash = 14;
optional bool sonarLintSupported = 15;
optional string documentationPath = 16;
optional int64 updatedAt = 17;
optional string type = 18;
repeated string requiredForLanguages = 19;
}
// WS api/plugins/pending
message PendingPluginsWsResponse {
repeated PluginDetails installing = 1;
repeated PluginDetails updating = 2;
repeated PluginDetails removing = 3;
}
|