OLD | NEW |
1 <!DOCTYPE html><html><head> | 1 <!DOCTYPE html><html><head> |
2 <meta charset="UTF-8"> | 2 <meta charset="UTF-8"> |
3 <title>Analysis Server Plugin API Specification</title> | 3 <title>Analysis Server Plugin API Specification</title> |
4 <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Code
+Pro|Roboto:500,400italic,300,400" type="text/css"><style>body { | 4 <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Code
+Pro|Roboto:500,400italic,300,400" type="text/css"><style>body { |
5 font-family: 'Roboto', sans-serif; | 5 font-family: 'Roboto', sans-serif; |
6 max-width: 800px; | 6 max-width: 800px; |
7 margin: 0 auto; | 7 margin: 0 auto; |
8 padding: 0 16px; | 8 padding: 0 16px; |
9 font-size: 16px; | 9 font-size: 16px; |
10 line-height: 1.5; | 10 line-height: 1.5; |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 TODO: Add a notification to the server protocol to inform the client of | 137 TODO: Add a notification to the server protocol to inform the client of |
138 problems related to the execution of plugins. | 138 problems related to the execution of plugins. |
139 </p> | 139 </p> |
140 | 140 |
141 | 141 |
142 | 142 |
143 <h3>Requests</h3><dl><dt class="request"><a name="request_plugin.versionCheck">p
lugin.versionCheck</a> (<a href="#request_plugin.versionCheck">#</a>)</dt><dd><d
iv class="box"><pre>request: { | 143 <h3>Requests</h3><dl><dt class="request"><a name="request_plugin.versionCheck">p
lugin.versionCheck</a> (<a href="#request_plugin.versionCheck">#</a>)</dt><dd><d
iv class="box"><pre>request: { |
144 "id": String | 144 "id": String |
145 "method": "plugin.versionCheck" | 145 "method": "plugin.versionCheck" |
146 "params": { | 146 "params": { |
| 147 "<b>byteStorePath</b>": String |
147 "<b>version</b>": String | 148 "<b>version</b>": String |
148 } | 149 } |
149 }</pre><br><pre>response: { | 150 }</pre><br><pre>response: { |
150 "id": String | 151 "id": String |
151 "error": <span style="color:#999999">optional</span> <a href="#type_RequestErr
or">RequestError</a> | 152 "error": <span style="color:#999999">optional</span> <a href="#type_RequestErr
or">RequestError</a> |
152 "result": { | 153 "result": { |
153 "<b>isCompatible</b>": bool | 154 "<b>isCompatible</b>": bool |
154 "<b>name</b>": String | 155 "<b>name</b>": String |
155 "<b>version</b>": String | 156 "<b>version</b>": String |
156 "<b>email</b>": <span style="color:#999999">optional</span> String | 157 "<b>contactInfo</b>": <span style="color:#999999">optional</span> String |
157 "<b>interestingFiles</b>": List<String> | 158 "<b>interestingFiles</b>": List<String> |
158 } | 159 } |
159 }</pre></div> | 160 }</pre></div> |
160 <p> | 161 <p> |
161 Used to request that the plugin perform a version check to confirm that it | 162 Used to request that the plugin perform a version check to confirm that it |
162 works with the version of the analysis server that is executing it. | 163 works with the version of the analysis server that is executing it. |
163 </p> | 164 </p> |
164 | 165 |
165 | 166 |
166 <h4>parameters:</h4><dl><dt class="field"><b>version (String)</b></dt><dd> | 167 <h4>parameters:</h4><dl><dt class="field"><b>byteStorePath (String)</b></dt><d
d> |
| 168 |
| 169 <p> |
| 170 The path to the directory containing the on-disk byte store that is to |
| 171 be used by any analysis drivers that are created. |
| 172 </p> |
| 173 </dd><dt class="field"><b>version (String)</b></dt><dd> |
167 | 174 |
168 <p> | 175 <p> |
169 The version number of the plugin spec supported by the analysis server | 176 The version number of the plugin spec supported by the analysis server |
170 that is executing the plugin. | 177 that is executing the plugin. |
171 </p> | 178 </p> |
172 </dd></dl><h4>returns:</h4><dl><dt class="field"><b>isCompatible (bool)</b
></dt><dd> | 179 </dd></dl><h4>returns:</h4><dl><dt class="field"><b>isCompatible (bool)</b
></dt><dd> |
173 | 180 |
174 <p> | 181 <p> |
175 A flag indicating whether the plugin supports the same version of the | 182 A flag indicating whether the plugin supports the same version of the |
176 plugin spec as the analysis server. If the value is <tt>false</tt>, | 183 plugin spec as the analysis server. If the value is <tt>false</tt>, |
177 then the plugin is expected to shutdown after returning the response. | 184 then the plugin is expected to shutdown after returning the response. |
178 </p> | 185 </p> |
179 </dd><dt class="field"><b>name (String)</b></dt><dd> | 186 </dd><dt class="field"><b>name (String)</b></dt><dd> |
180 | 187 |
181 <p> | 188 <p> |
182 The name of the plugin. This value is only used when the server needs | 189 The name of the plugin. This value is only used when the server needs |
183 to identify the plugin, either to the user or for debugging purposes. | 190 to identify the plugin, either to the user or for debugging purposes. |
184 </p> | 191 </p> |
185 </dd><dt class="field"><b>version (String)</b></dt><dd> | 192 </dd><dt class="field"><b>version (String)</b></dt><dd> |
186 | 193 |
187 <p> | 194 <p> |
188 The version of the plugin. This value is only used when the server | 195 The version of the plugin. This value is only used when the server |
189 needs to identify the plugin, either to the user or for debugging | 196 needs to identify the plugin, either to the user or for debugging |
190 purposes. | 197 purposes. |
191 </p> | 198 </p> |
192 </dd><dt class="field"><b>email (<span style="color:#999999">optional</spa
n> String)</b></dt><dd> | 199 </dd><dt class="field"><b>contactInfo (<span style="color:#999999">optiona
l</span> String)</b></dt><dd> |
193 | 200 |
194 <p> | 201 <p> |
195 An e-mail address that either the client or the user can use to | 202 Information that the user can use to use to contact the maintainers of |
196 contact the maintainers of the plugin when there is a problem. | 203 the plugin when there is a problem. |
197 </p> | 204 </p> |
198 </dd><dt class="field"><b>interestingFiles (List<String>)</b></dt><d
d> | 205 </dd><dt class="field"><b>interestingFiles (List<String>)</b></dt><d
d> |
199 | 206 |
200 <p> | 207 <p> |
201 The glob patterns of the files for which the plugin will provide | 208 The glob patterns of the files for which the plugin will provide |
202 information. This value is ignored if the <tt>isCompatible</tt> | 209 information. This value is ignored if the <tt>isCompatible</tt> |
203 field is <tt>false</tt>. Otherwise, it will be used to identify | 210 field is <tt>false</tt>. Otherwise, it will be used to identify |
204 the files for which the plugin should be notified of changes. | 211 the files for which the plugin should be notified of changes. |
205 </p> | 212 </p> |
206 </dd></dl></dd><dt class="request"><a name="request_plugin.shutdown">plugi
n.shutdown</a> (<a href="#request_plugin.shutdown">#</a>)</dt><dd><div class="bo
x"><pre>request: { | 213 </dd></dl></dd><dt class="request"><a name="request_plugin.shutdown">plugi
n.shutdown</a> (<a href="#request_plugin.shutdown">#</a>)</dt><dd><div class="bo
x"><pre>request: { |
(...skipping 2259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2466 | 2473 |
2467 <p> | 2474 <p> |
2468 The name that the element should have after the refactoring. | 2475 The name that the element should have after the refactoring. |
2469 </p> | 2476 </p> |
2470 </dd></dl></dd></dl> | 2477 </dd></dl></dd></dl> |
2471 <h2 class="domain"><a name="index">Index</a></h2> | 2478 <h2 class="domain"><a name="index">Index</a></h2> |
2472 <h3>Domains</h3><h4>plugin (<a href="#domain_plugin">↑</a>)</h4><div class="subi
ndex"><h5>Requests</h5><ul><li><a href="#request_plugin.versionCheck">versionChe
ck</a></li><li><a href="#request_plugin.shutdown">shutdown</a></li></ul><h5>Noti
fications</h5><div class="subindex"><ul><li><a href="#notification_plugin.error"
>error</a></li></ul></div></div><h4>analysis (<a href="#domain_analysis">↑</a>)<
/h4><div class="subindex"><h5>Requests</h5><ul><li><a href="#request_analysis.ha
ndleWatchEvents">handleWatchEvents</a></li><li><a href="#request_analysis.reanal
yze">reanalyze</a></li><li><a href="#request_analysis.setContextBuilderOptions">
setContextBuilderOptions</a></li><li><a href="#request_analysis.setContextRoots"
>setContextRoots</a></li><li><a href="#request_analysis.setPriorityFiles">setPri
orityFiles</a></li><li><a href="#request_analysis.setSubscriptions">setSubscript
ions</a></li><li><a href="#request_analysis.updateContent">updateContent</a></li
></ul><h5>Notifications</h5><div class="subindex"><ul><li><a href="#notification
_analysis.errors">errors</a></li><li><a href="#notification_analysis.folding">fo
lding</a></li><li><a href="#notification_analysis.highlights">highlights</a></li
><li><a href="#notification_analysis.navigation">navigation</a></li><li><a href=
"#notification_analysis.occurrences">occurrences</a></li><li><a href="#notificat
ion_analysis.outline">outline</a></li></ul></div></div><h4>completion (<a href="
#domain_completion">↑</a>)</h4><div class="subindex"><h5>Requests</h5><ul><li><a
href="#request_completion.getSuggestions">getSuggestions</a></li></ul></div><h4
>edit (<a href="#domain_edit">↑</a>)</h4><div class="subindex"><h5>Requests</h5>
<ul><li><a href="#request_edit.getAssists">getAssists</a></li><li><a href="#requ
est_edit.getAvailableRefactorings">getAvailableRefactorings</a></li><li><a href=
"#request_edit.getFixes">getFixes</a></li><li><a href="#request_edit.getRefactor
ing">getRefactoring</a></li></ul></div><h3>Types (<a href="#types">↑</a>)</h3><d
iv class="subindex"><ul><li><a href="#type_AddContentOverlay">AddContentOverlay<
/a></li><li><a href="#type_AnalysisError">AnalysisError</a></li><li><a href="#ty
pe_AnalysisErrorFixes">AnalysisErrorFixes</a></li><li><a href="#type_AnalysisErr
orSeverity">AnalysisErrorSeverity</a></li><li><a href="#type_AnalysisErrorType">
AnalysisErrorType</a></li><li><a href="#type_AnalysisService">AnalysisService</a
></li><li><a href="#type_ChangeContentOverlay">ChangeContentOverlay</a></li><li>
<a href="#type_CompletionSuggestion">CompletionSuggestion</a></li><li><a href="#
type_CompletionSuggestionKind">CompletionSuggestionKind</a></li><li><a href="#ty
pe_ContextBuilderOptions">ContextBuilderOptions</a></li><li><a href="#type_Conte
xtRoot">ContextRoot</a></li><li><a href="#type_Element">Element</a></li><li><a h
ref="#type_ElementKind">ElementKind</a></li><li><a href="#type_FilePath">FilePat
h</a></li><li><a href="#type_FoldingKind">FoldingKind</a></li><li><a href="#type
_FoldingRegion">FoldingRegion</a></li><li><a href="#type_HighlightRegion">Highli
ghtRegion</a></li><li><a href="#type_HighlightRegionType">HighlightRegionType</a
></li><li><a href="#type_LinkedEditGroup">LinkedEditGroup</a></li><li><a href="#
type_LinkedEditSuggestion">LinkedEditSuggestion</a></li><li><a href="#type_Linke
dEditSuggestionKind">LinkedEditSuggestionKind</a></li><li><a href="#type_Locatio
n">Location</a></li><li><a href="#type_NavigationRegion">NavigationRegion</a></l
i><li><a href="#type_NavigationTarget">NavigationTarget</a></li><li><a href="#ty
pe_Occurrences">Occurrences</a></li><li><a href="#type_Outline">Outline</a></li>
<li><a href="#type_Position">Position</a></li><li><a href="#type_RefactoringFeed
back">RefactoringFeedback</a></li><li><a href="#type_RefactoringKind">Refactorin
gKind</a></li><li><a href="#type_RefactoringMethodParameter">RefactoringMethodPa
rameter</a></li><li><a href="#type_RefactoringOptions">RefactoringOptions</a></l
i><li><a href="#type_RefactoringMethodParameterKind">RefactoringMethodParameterK
ind</a></li><li><a href="#type_RefactoringProblem">RefactoringProblem</a></li><l
i><a href="#type_RefactoringProblemSeverity">RefactoringProblemSeverity</a></li>
<li><a href="#type_RemoveContentOverlay">RemoveContentOverlay</a></li><li><a hre
f="#type_RequestError">RequestError</a></li><li><a href="#type_RequestErrorCode"
>RequestErrorCode</a></li><li><a href="#type_SourceChange">SourceChange</a></li>
<li><a href="#type_SourceEdit">SourceEdit</a></li><li><a href="#type_SourceFileE
dit">SourceFileEdit</a></li><li><a href="#type_WatchEvent">WatchEvent</a></li><l
i><a href="#type_WatchEventType">WatchEventType</a></li></ul></div><h3>Refactori
ngs (<a href="#refactorings">↑</a>)</h3><div class="subindex"><ul><li><a href="#
refactoring_CONVERT_GETTER_TO_METHOD">CONVERT_GETTER_TO_METHOD</a></li><li><a hr
ef="#refactoring_CONVERT_METHOD_TO_GETTER">CONVERT_METHOD_TO_GETTER</a></li><li>
<a href="#refactoring_EXTRACT_LOCAL_VARIABLE">EXTRACT_LOCAL_VARIABLE</a></li><li
><a href="#refactoring_EXTRACT_METHOD">EXTRACT_METHOD</a></li><li><a href="#refa
ctoring_INLINE_LOCAL_VARIABLE">INLINE_LOCAL_VARIABLE</a></li><li><a href="#refac
toring_INLINE_METHOD">INLINE_METHOD</a></li><li><a href="#refactoring_MOVE_FILE"
>MOVE_FILE</a></li><li><a href="#refactoring_RENAME">RENAME</a></li></ul></div> | 2479 <h3>Domains</h3><h4>plugin (<a href="#domain_plugin">↑</a>)</h4><div class="subi
ndex"><h5>Requests</h5><ul><li><a href="#request_plugin.versionCheck">versionChe
ck</a></li><li><a href="#request_plugin.shutdown">shutdown</a></li></ul><h5>Noti
fications</h5><div class="subindex"><ul><li><a href="#notification_plugin.error"
>error</a></li></ul></div></div><h4>analysis (<a href="#domain_analysis">↑</a>)<
/h4><div class="subindex"><h5>Requests</h5><ul><li><a href="#request_analysis.ha
ndleWatchEvents">handleWatchEvents</a></li><li><a href="#request_analysis.reanal
yze">reanalyze</a></li><li><a href="#request_analysis.setContextBuilderOptions">
setContextBuilderOptions</a></li><li><a href="#request_analysis.setContextRoots"
>setContextRoots</a></li><li><a href="#request_analysis.setPriorityFiles">setPri
orityFiles</a></li><li><a href="#request_analysis.setSubscriptions">setSubscript
ions</a></li><li><a href="#request_analysis.updateContent">updateContent</a></li
></ul><h5>Notifications</h5><div class="subindex"><ul><li><a href="#notification
_analysis.errors">errors</a></li><li><a href="#notification_analysis.folding">fo
lding</a></li><li><a href="#notification_analysis.highlights">highlights</a></li
><li><a href="#notification_analysis.navigation">navigation</a></li><li><a href=
"#notification_analysis.occurrences">occurrences</a></li><li><a href="#notificat
ion_analysis.outline">outline</a></li></ul></div></div><h4>completion (<a href="
#domain_completion">↑</a>)</h4><div class="subindex"><h5>Requests</h5><ul><li><a
href="#request_completion.getSuggestions">getSuggestions</a></li></ul></div><h4
>edit (<a href="#domain_edit">↑</a>)</h4><div class="subindex"><h5>Requests</h5>
<ul><li><a href="#request_edit.getAssists">getAssists</a></li><li><a href="#requ
est_edit.getAvailableRefactorings">getAvailableRefactorings</a></li><li><a href=
"#request_edit.getFixes">getFixes</a></li><li><a href="#request_edit.getRefactor
ing">getRefactoring</a></li></ul></div><h3>Types (<a href="#types">↑</a>)</h3><d
iv class="subindex"><ul><li><a href="#type_AddContentOverlay">AddContentOverlay<
/a></li><li><a href="#type_AnalysisError">AnalysisError</a></li><li><a href="#ty
pe_AnalysisErrorFixes">AnalysisErrorFixes</a></li><li><a href="#type_AnalysisErr
orSeverity">AnalysisErrorSeverity</a></li><li><a href="#type_AnalysisErrorType">
AnalysisErrorType</a></li><li><a href="#type_AnalysisService">AnalysisService</a
></li><li><a href="#type_ChangeContentOverlay">ChangeContentOverlay</a></li><li>
<a href="#type_CompletionSuggestion">CompletionSuggestion</a></li><li><a href="#
type_CompletionSuggestionKind">CompletionSuggestionKind</a></li><li><a href="#ty
pe_ContextBuilderOptions">ContextBuilderOptions</a></li><li><a href="#type_Conte
xtRoot">ContextRoot</a></li><li><a href="#type_Element">Element</a></li><li><a h
ref="#type_ElementKind">ElementKind</a></li><li><a href="#type_FilePath">FilePat
h</a></li><li><a href="#type_FoldingKind">FoldingKind</a></li><li><a href="#type
_FoldingRegion">FoldingRegion</a></li><li><a href="#type_HighlightRegion">Highli
ghtRegion</a></li><li><a href="#type_HighlightRegionType">HighlightRegionType</a
></li><li><a href="#type_LinkedEditGroup">LinkedEditGroup</a></li><li><a href="#
type_LinkedEditSuggestion">LinkedEditSuggestion</a></li><li><a href="#type_Linke
dEditSuggestionKind">LinkedEditSuggestionKind</a></li><li><a href="#type_Locatio
n">Location</a></li><li><a href="#type_NavigationRegion">NavigationRegion</a></l
i><li><a href="#type_NavigationTarget">NavigationTarget</a></li><li><a href="#ty
pe_Occurrences">Occurrences</a></li><li><a href="#type_Outline">Outline</a></li>
<li><a href="#type_Position">Position</a></li><li><a href="#type_RefactoringFeed
back">RefactoringFeedback</a></li><li><a href="#type_RefactoringKind">Refactorin
gKind</a></li><li><a href="#type_RefactoringMethodParameter">RefactoringMethodPa
rameter</a></li><li><a href="#type_RefactoringOptions">RefactoringOptions</a></l
i><li><a href="#type_RefactoringMethodParameterKind">RefactoringMethodParameterK
ind</a></li><li><a href="#type_RefactoringProblem">RefactoringProblem</a></li><l
i><a href="#type_RefactoringProblemSeverity">RefactoringProblemSeverity</a></li>
<li><a href="#type_RemoveContentOverlay">RemoveContentOverlay</a></li><li><a hre
f="#type_RequestError">RequestError</a></li><li><a href="#type_RequestErrorCode"
>RequestErrorCode</a></li><li><a href="#type_SourceChange">SourceChange</a></li>
<li><a href="#type_SourceEdit">SourceEdit</a></li><li><a href="#type_SourceFileE
dit">SourceFileEdit</a></li><li><a href="#type_WatchEvent">WatchEvent</a></li><l
i><a href="#type_WatchEventType">WatchEventType</a></li></ul></div><h3>Refactori
ngs (<a href="#refactorings">↑</a>)</h3><div class="subindex"><ul><li><a href="#
refactoring_CONVERT_GETTER_TO_METHOD">CONVERT_GETTER_TO_METHOD</a></li><li><a hr
ef="#refactoring_CONVERT_METHOD_TO_GETTER">CONVERT_METHOD_TO_GETTER</a></li><li>
<a href="#refactoring_EXTRACT_LOCAL_VARIABLE">EXTRACT_LOCAL_VARIABLE</a></li><li
><a href="#refactoring_EXTRACT_METHOD">EXTRACT_METHOD</a></li><li><a href="#refa
ctoring_INLINE_LOCAL_VARIABLE">INLINE_LOCAL_VARIABLE</a></li><li><a href="#refac
toring_INLINE_METHOD">INLINE_METHOD</a></li><li><a href="#refactoring_MOVE_FILE"
>MOVE_FILE</a></li><li><a href="#refactoring_RENAME">RENAME</a></li></ul></div> |
2473 | 2480 |
2474 | 2481 |
2475 </body></html> | 2482 </body></html> |
OLD | NEW |