| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library analysis_server.src.plugin.server_plugin; | 5 library analysis_server.src.plugin.server_plugin; |
| 6 | 6 |
| 7 import 'package:analysis_server/plugin/analysis/analysis_domain.dart'; | 7 import 'package:analysis_server/plugin/analysis/analysis_domain.dart'; |
| 8 import 'package:analysis_server/plugin/analysis/analyzed_files.dart'; | 8 import 'package:analysis_server/plugin/analysis/analyzed_files.dart'; |
| 9 import 'package:analysis_server/plugin/analysis/navigation/navigation.dart'; | 9 import 'package:analysis_server/plugin/analysis/navigation/navigation.dart'; |
| 10 import 'package:analysis_server/plugin/analysis/navigation/navigation_core.dart'
; | 10 import 'package:analysis_server/plugin/analysis/navigation/navigation_core.dart'
; |
| 11 import 'package:analysis_server/plugin/analysis/occurrences/occurrences.dart'; | 11 import 'package:analysis_server/plugin/analysis/occurrences/occurrences.dart'; |
| 12 import 'package:analysis_server/plugin/analysis/occurrences/occurrences_core.dar
t'; | 12 import 'package:analysis_server/plugin/analysis/occurrences/occurrences_core.dar
t'; |
| 13 import 'package:analysis_server/plugin/edit/assist/assist.dart'; | 13 import 'package:analysis_server/plugin/edit/assist/assist.dart'; |
| 14 import 'package:analysis_server/plugin/edit/assist/assist_core.dart'; | 14 import 'package:analysis_server/plugin/edit/assist/assist_core.dart'; |
| 15 import 'package:analysis_server/plugin/edit/fix/fix.dart'; | 15 import 'package:analysis_server/plugin/edit/fix/fix.dart'; |
| 16 import 'package:analysis_server/plugin/edit/fix/fix_core.dart'; | 16 import 'package:analysis_server/plugin/edit/fix/fix_core.dart'; |
| 17 import 'package:analysis_server/plugin/protocol/protocol.dart'; | 17 import 'package:analysis_server/plugin/protocol/protocol.dart'; |
| 18 import 'package:analysis_server/src/analysis_server.dart'; | 18 import 'package:analysis_server/src/analysis_server.dart'; |
| 19 import 'package:analysis_server/src/domain_analysis.dart'; | 19 import 'package:analysis_server/src/domain_analysis.dart'; |
| 20 import 'package:analysis_server/src/domain_completion.dart'; | 20 import 'package:analysis_server/src/domain_completion.dart'; |
| 21 import 'package:analysis_server/src/domain_diagnostic.dart'; | 21 import 'package:analysis_server/src/domain_diagnostic.dart'; |
| 22 import 'package:analysis_server/src/domain_execution.dart'; | 22 import 'package:analysis_server/src/domain_execution.dart'; |
| 23 import 'package:analysis_server/src/domain_server.dart'; | 23 import 'package:analysis_server/src/domain_server.dart'; |
| 24 import 'package:analysis_server/src/domains/analysis/navigation_dart.dart'; | 24 import 'package:analysis_server/src/domains/analysis/navigation_dart.dart'; |
| 25 import 'package:analysis_server/src/domains/analysis/occurrences_dart.dart'; | 25 import 'package:analysis_server/src/domains/analysis/occurrences_dart.dart'; |
| 26 import 'package:analysis_server/src/edit/edit_domain.dart'; | 26 import 'package:analysis_server/src/edit/edit_domain.dart'; |
| 27 import 'package:analysis_server/src/provisional/completion/completion_core.dart'
; | 27 import 'package:analysis_server/src/provisional/completion/completion_core.dart'
; |
| 28 import 'package:analysis_server/src/provisional/completion/dart/completion.dart'
; |
| 29 import 'package:analysis_server/src/provisional/completion/dart/completion_dart.
dart'; |
| 28 import 'package:analysis_server/src/provisional/index/index.dart'; | 30 import 'package:analysis_server/src/provisional/index/index.dart'; |
| 29 import 'package:analysis_server/src/provisional/index/index_core.dart'; | 31 import 'package:analysis_server/src/provisional/index/index_core.dart'; |
| 30 import 'package:analysis_server/src/search/search_domain.dart'; | 32 import 'package:analysis_server/src/search/search_domain.dart'; |
| 33 import 'package:analysis_server/src/services/completion/dart/completion_manager.
dart'; |
| 31 import 'package:analysis_server/src/services/correction/assist_internal.dart'; | 34 import 'package:analysis_server/src/services/correction/assist_internal.dart'; |
| 32 import 'package:analysis_server/src/services/correction/fix_internal.dart'; | 35 import 'package:analysis_server/src/services/correction/fix_internal.dart'; |
| 33 import 'package:analysis_server/src/services/index/index_contributor.dart'; | 36 import 'package:analysis_server/src/services/index/index_contributor.dart'; |
| 34 import 'package:analyzer/src/generated/engine.dart'; | 37 import 'package:analyzer/src/generated/engine.dart'; |
| 35 import 'package:plugin/plugin.dart'; | 38 import 'package:plugin/plugin.dart'; |
| 36 | 39 |
| 37 /** | 40 /** |
| 38 * A function that will create a request handler that can be used by the given | 41 * A function that will create a request handler that can be used by the given |
| 39 * [server]. | 42 * [server]. |
| 40 */ | 43 */ |
| (...skipping 19 matching lines...) Expand all Loading... |
| 60 | 63 |
| 61 /** | 64 /** |
| 62 * The simple identifier of the extension point that allows plugins to | 65 * The simple identifier of the extension point that allows plugins to |
| 63 * register completion contributors. | 66 * register completion contributors. |
| 64 */ | 67 */ |
| 65 static const String COMPLETION_CONTRIBUTOR_EXTENSION_POINT = | 68 static const String COMPLETION_CONTRIBUTOR_EXTENSION_POINT = |
| 66 'completionContributor'; | 69 'completionContributor'; |
| 67 | 70 |
| 68 /** | 71 /** |
| 69 * The simple identifier of the extension point that allows plugins to | 72 * The simple identifier of the extension point that allows plugins to |
| 73 * register Dart specific completion contributor factories. |
| 74 */ |
| 75 static const String DART_COMPLETION_CONTRIBUTOR_EXTENSION_POINT = |
| 76 'dartCompletionContributor'; |
| 77 |
| 78 /** |
| 79 * The simple identifier of the extension point that allows plugins to |
| 70 * register domains. | 80 * register domains. |
| 71 */ | 81 */ |
| 72 static const String DOMAIN_EXTENSION_POINT = 'domain'; | 82 static const String DOMAIN_EXTENSION_POINT = 'domain'; |
| 73 | 83 |
| 74 /** | 84 /** |
| 75 * The simple identifier of the extension point that allows plugins to | 85 * The simple identifier of the extension point that allows plugins to |
| 76 * register fix contributors. | 86 * register fix contributors. |
| 77 */ | 87 */ |
| 78 static const String FIX_CONTRIBUTOR_EXTENSION_POINT = 'fixContributor'; | 88 static const String FIX_CONTRIBUTOR_EXTENSION_POINT = 'fixContributor'; |
| 79 | 89 |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 119 */ | 129 */ |
| 120 ExtensionPoint assistContributorExtensionPoint; | 130 ExtensionPoint assistContributorExtensionPoint; |
| 121 | 131 |
| 122 /** | 132 /** |
| 123 * The extension point that allows plugins to register completion | 133 * The extension point that allows plugins to register completion |
| 124 * contributors. | 134 * contributors. |
| 125 */ | 135 */ |
| 126 ExtensionPoint completionContributorExtensionPoint; | 136 ExtensionPoint completionContributorExtensionPoint; |
| 127 | 137 |
| 128 /** | 138 /** |
| 139 * The extension point that allows plugins to register Dart specific |
| 140 * completion contributor factories. |
| 141 */ |
| 142 ExtensionPoint dartCompletionContributorExtensionPoint; |
| 143 |
| 144 /** |
| 129 * The extension point that allows plugins to register domains with the | 145 * The extension point that allows plugins to register domains with the |
| 130 * server. | 146 * server. |
| 131 */ | 147 */ |
| 132 ExtensionPoint domainExtensionPoint; | 148 ExtensionPoint domainExtensionPoint; |
| 133 | 149 |
| 134 /** | 150 /** |
| 135 * The extension point that allows plugins to register fix contributors with | 151 * The extension point that allows plugins to register fix contributors with |
| 136 * the server. | 152 * the server. |
| 137 */ | 153 */ |
| 138 ExtensionPoint fixContributorExtensionPoint; | 154 ExtensionPoint fixContributorExtensionPoint; |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 186 assistContributorExtensionPoint.extensions; | 202 assistContributorExtensionPoint.extensions; |
| 187 | 203 |
| 188 /** | 204 /** |
| 189 * Return a list containing all of the completion contributors that were | 205 * Return a list containing all of the completion contributors that were |
| 190 * contributed. | 206 * contributed. |
| 191 */ | 207 */ |
| 192 List<CompletionContributor> get completionContributors => | 208 List<CompletionContributor> get completionContributors => |
| 193 completionContributorExtensionPoint.extensions; | 209 completionContributorExtensionPoint.extensions; |
| 194 | 210 |
| 195 /** | 211 /** |
| 212 * Return a list containing all of the Dart specific completion contributor |
| 213 * factories that were contributed. |
| 214 */ |
| 215 List< |
| 216 DartCompletionContributorFactory> get dartCompletionContributorFactories =
> |
| 217 dartCompletionContributorExtensionPoint.extensions; |
| 218 |
| 219 /** |
| 196 * Return a list containing all of the fix contributors that were contributed. | 220 * Return a list containing all of the fix contributors that were contributed. |
| 197 */ | 221 */ |
| 198 List<FixContributor> get fixContributors => | 222 List<FixContributor> get fixContributors => |
| 199 fixContributorExtensionPoint.extensions; | 223 fixContributorExtensionPoint.extensions; |
| 200 | 224 |
| 201 /** | 225 /** |
| 202 * Return a list containing all of the index contributors that were | 226 * Return a list containing all of the index contributors that were |
| 203 * contributed. | 227 * contributed. |
| 204 */ | 228 */ |
| 205 List<IndexContributor> get indexContributors => | 229 List<IndexContributor> get indexContributors => |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 _validateSetAnalysisDomainFunction); | 273 _validateSetAnalysisDomainFunction); |
| 250 analyzedFilePatternsExtensionPoint = registerExtensionPoint( | 274 analyzedFilePatternsExtensionPoint = registerExtensionPoint( |
| 251 ANALYZED_FILE_PATTERNS_EXTENSION_POINT, | 275 ANALYZED_FILE_PATTERNS_EXTENSION_POINT, |
| 252 _validateAnalyzedFilePatternsExtension); | 276 _validateAnalyzedFilePatternsExtension); |
| 253 assistContributorExtensionPoint = registerExtensionPoint( | 277 assistContributorExtensionPoint = registerExtensionPoint( |
| 254 ASSIST_CONTRIBUTOR_EXTENSION_POINT, | 278 ASSIST_CONTRIBUTOR_EXTENSION_POINT, |
| 255 _validateAssistContributorExtension); | 279 _validateAssistContributorExtension); |
| 256 completionContributorExtensionPoint = registerExtensionPoint( | 280 completionContributorExtensionPoint = registerExtensionPoint( |
| 257 COMPLETION_CONTRIBUTOR_EXTENSION_POINT, | 281 COMPLETION_CONTRIBUTOR_EXTENSION_POINT, |
| 258 _validateCompletionContributorExtension); | 282 _validateCompletionContributorExtension); |
| 283 dartCompletionContributorExtensionPoint = registerExtensionPoint( |
| 284 DART_COMPLETION_CONTRIBUTOR_EXTENSION_POINT, |
| 285 _validateDartCompletionContributorExtension); |
| 259 domainExtensionPoint = registerExtensionPoint( | 286 domainExtensionPoint = registerExtensionPoint( |
| 260 DOMAIN_EXTENSION_POINT, _validateDomainExtension); | 287 DOMAIN_EXTENSION_POINT, _validateDomainExtension); |
| 261 fixContributorExtensionPoint = registerExtensionPoint( | 288 fixContributorExtensionPoint = registerExtensionPoint( |
| 262 FIX_CONTRIBUTOR_EXTENSION_POINT, _validateFixContributorExtension); | 289 FIX_CONTRIBUTOR_EXTENSION_POINT, _validateFixContributorExtension); |
| 263 indexContributorExtensionPoint = registerExtensionPoint( | 290 indexContributorExtensionPoint = registerExtensionPoint( |
| 264 INDEX_CONTRIBUTOR_EXTENSION_POINT, _validateIndexContributorExtension); | 291 INDEX_CONTRIBUTOR_EXTENSION_POINT, _validateIndexContributorExtension); |
| 265 navigationContributorExtensionPoint = registerExtensionPoint( | 292 navigationContributorExtensionPoint = registerExtensionPoint( |
| 266 NAVIGATION_CONTRIBUTOR_EXTENSION_POINT, | 293 NAVIGATION_CONTRIBUTOR_EXTENSION_POINT, |
| 267 _validateNavigationContributorExtension); | 294 _validateNavigationContributorExtension); |
| 268 occurrencesContributorExtensionPoint = registerExtensionPoint( | 295 occurrencesContributorExtensionPoint = registerExtensionPoint( |
| (...skipping 15 matching lines...) Expand all Loading... |
| 284 registerExtension(ANALYZED_FILE_PATTERNS_EXTENSION_POINT_ID, patterns); | 311 registerExtension(ANALYZED_FILE_PATTERNS_EXTENSION_POINT_ID, patterns); |
| 285 // | 312 // |
| 286 // Register assist contributors. | 313 // Register assist contributors. |
| 287 // | 314 // |
| 288 registerExtension( | 315 registerExtension( |
| 289 ASSIST_CONTRIBUTOR_EXTENSION_POINT_ID, new DefaultAssistContributor()); | 316 ASSIST_CONTRIBUTOR_EXTENSION_POINT_ID, new DefaultAssistContributor()); |
| 290 // | 317 // |
| 291 // Register completion contributors. | 318 // Register completion contributors. |
| 292 // | 319 // |
| 293 // TODO(brianwilkerson) Register the completion contributors. | 320 // TODO(brianwilkerson) Register the completion contributors. |
| 294 // registerExtension(COMPLETION_CONTRIBUTOR_EXTENSION_POINT_ID, ???); | 321 //registerExtension(COMPLETION_CONTRIBUTOR_EXTENSION_POINT_ID, ???); |
| 322 registerExtension(DART_COMPLETION_CONTRIBUTOR_EXTENSION_POINT_ID, |
| 323 defaultDartCompletionContributorFactory); |
| 295 // | 324 // |
| 296 // Register analysis contributors. | 325 // Register analysis contributors. |
| 297 // | 326 // |
| 298 registerExtension(NAVIGATION_CONTRIBUTOR_EXTENSION_POINT_ID, | 327 registerExtension(NAVIGATION_CONTRIBUTOR_EXTENSION_POINT_ID, |
| 299 new DartNavigationComputer()); | 328 new DartNavigationComputer()); |
| 300 registerExtension(OCCURRENCES_CONTRIBUTOR_EXTENSION_POINT_ID, | 329 registerExtension(OCCURRENCES_CONTRIBUTOR_EXTENSION_POINT_ID, |
| 301 new DartOccurrencesComputer()); | 330 new DartOccurrencesComputer()); |
| 302 // | 331 // |
| 303 // Register domains. | 332 // Register domains. |
| 304 // | 333 // |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 372 void _validateCompletionContributorExtension(Object extension) { | 401 void _validateCompletionContributorExtension(Object extension) { |
| 373 if (extension is! CompletionContributor) { | 402 if (extension is! CompletionContributor) { |
| 374 String id = completionContributorExtensionPoint.uniqueIdentifier; | 403 String id = completionContributorExtensionPoint.uniqueIdentifier; |
| 375 throw new ExtensionError( | 404 throw new ExtensionError( |
| 376 'Extensions to $id must be an CompletionContributor'); | 405 'Extensions to $id must be an CompletionContributor'); |
| 377 } | 406 } |
| 378 } | 407 } |
| 379 | 408 |
| 380 /** | 409 /** |
| 381 * Validate the given extension by throwing an [ExtensionError] if it is not a | 410 * Validate the given extension by throwing an [ExtensionError] if it is not a |
| 411 * valid Dart specific completion contributor. |
| 412 */ |
| 413 void _validateDartCompletionContributorExtension(Object extension) { |
| 414 if (extension is! DartCompletionContributorFactory) { |
| 415 String id = dartCompletionContributorExtensionPoint.uniqueIdentifier; |
| 416 throw new ExtensionError( |
| 417 'Extensions to $id must be a DartCompletionContributorFactory'); |
| 418 } |
| 419 } |
| 420 |
| 421 /** |
| 422 * Validate the given extension by throwing an [ExtensionError] if it is not a |
| 382 * valid domain. | 423 * valid domain. |
| 383 */ | 424 */ |
| 384 void _validateDomainExtension(Object extension) { | 425 void _validateDomainExtension(Object extension) { |
| 385 if (extension is! RequestHandlerFactory) { | 426 if (extension is! RequestHandlerFactory) { |
| 386 String id = domainExtensionPoint.uniqueIdentifier; | 427 String id = domainExtensionPoint.uniqueIdentifier; |
| 387 throw new ExtensionError( | 428 throw new ExtensionError( |
| 388 'Extensions to $id must be a RequestHandlerFactory'); | 429 'Extensions to $id must be a RequestHandlerFactory'); |
| 389 } | 430 } |
| 390 } | 431 } |
| 391 | 432 |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 440 * valid analysis domain receiver. | 481 * valid analysis domain receiver. |
| 441 */ | 482 */ |
| 442 void _validateSetAnalysisDomainFunction(Object extension) { | 483 void _validateSetAnalysisDomainFunction(Object extension) { |
| 443 if (extension is! SetAnalysisDomain) { | 484 if (extension is! SetAnalysisDomain) { |
| 444 String id = setAnalysisDomainExtensionPoint.uniqueIdentifier; | 485 String id = setAnalysisDomainExtensionPoint.uniqueIdentifier; |
| 445 throw new ExtensionError( | 486 throw new ExtensionError( |
| 446 'Extensions to $id must be a SetAnalysisDomain function'); | 487 'Extensions to $id must be a SetAnalysisDomain function'); |
| 447 } | 488 } |
| 448 } | 489 } |
| 449 } | 490 } |
| OLD | NEW |