Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(596)

Side by Side Diff: pkg/analysis_server/lib/src/plugin/server_plugin.dart

Issue 1418333002: OptionsValidator plugin extension and linter service. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Review feedback. Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | pkg/analysis_server/lib/src/services/linter/linter.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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' ;
(...skipping 13 matching lines...) Expand all
24 import 'package:analysis_server/src/domain_experimental.dart'; 24 import 'package:analysis_server/src/domain_experimental.dart';
25 import 'package:analysis_server/src/domain_server.dart'; 25 import 'package:analysis_server/src/domain_server.dart';
26 import 'package:analysis_server/src/domains/analysis/navigation_dart.dart'; 26 import 'package:analysis_server/src/domains/analysis/navigation_dart.dart';
27 import 'package:analysis_server/src/domains/analysis/occurrences_dart.dart'; 27 import 'package:analysis_server/src/domains/analysis/occurrences_dart.dart';
28 import 'package:analysis_server/src/edit/edit_domain.dart'; 28 import 'package:analysis_server/src/edit/edit_domain.dart';
29 import 'package:analysis_server/src/provisional/completion/completion_core.dart' ; 29 import 'package:analysis_server/src/provisional/completion/completion_core.dart' ;
30 import 'package:analysis_server/src/search/search_domain.dart'; 30 import 'package:analysis_server/src/search/search_domain.dart';
31 import 'package:analysis_server/src/services/correction/assist_internal.dart'; 31 import 'package:analysis_server/src/services/correction/assist_internal.dart';
32 import 'package:analysis_server/src/services/correction/fix_internal.dart'; 32 import 'package:analysis_server/src/services/correction/fix_internal.dart';
33 import 'package:analysis_server/src/services/index/index_contributor.dart'; 33 import 'package:analysis_server/src/services/index/index_contributor.dart';
34 import 'package:analysis_server/src/services/linter/linter.dart';
34 import 'package:analyzer/file_system/file_system.dart'; 35 import 'package:analyzer/file_system/file_system.dart';
36 import 'package:analyzer/plugin/options.dart';
35 import 'package:analyzer/src/generated/engine.dart'; 37 import 'package:analyzer/src/generated/engine.dart';
36 import 'package:plugin/plugin.dart'; 38 import 'package:plugin/plugin.dart';
37 39
38 /** 40 /**
39 * 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
40 * [server]. 42 * [server].
41 */ 43 */
42 typedef RequestHandler RequestHandlerFactory(AnalysisServer server); 44 typedef RequestHandler RequestHandlerFactory(AnalysisServer server);
43 45
44 /** 46 /**
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 // 313 //
312 // Register fix contributors. 314 // Register fix contributors.
313 // 315 //
314 registerExtension( 316 registerExtension(
315 FIX_CONTRIBUTOR_EXTENSION_POINT_ID, new DefaultFixContributor()); 317 FIX_CONTRIBUTOR_EXTENSION_POINT_ID, new DefaultFixContributor());
316 // 318 //
317 // Register index contributors. 319 // Register index contributors.
318 // 320 //
319 registerExtension( 321 registerExtension(
320 INDEX_CONTRIBUTOR_EXTENSION_POINT_ID, new DartIndexContributor()); 322 INDEX_CONTRIBUTOR_EXTENSION_POINT_ID, new DartIndexContributor());
323
324 //
325 // Register options validators.
326 //
327 registerExtension(
328 OPTIONS_VALIDATOR_EXTENSION_POINT_ID, new LinterRuleOptionsValidator());
321 } 329 }
322 330
323 /** 331 /**
324 * Validate the given extension by throwing an [ExtensionError] if it is not a 332 * Validate the given extension by throwing an [ExtensionError] if it is not a
325 * valid assist contributor. 333 * valid assist contributor.
326 */ 334 */
327 void _validateAnalyzeFileExtension(Object extension) { 335 void _validateAnalyzeFileExtension(Object extension) {
328 if (extension is! ShouldAnalyzeFile) { 336 if (extension is! ShouldAnalyzeFile) {
329 String id = analyzeFileExtensionPoint.uniqueIdentifier; 337 String id = analyzeFileExtensionPoint.uniqueIdentifier;
330 throw new ExtensionError( 338 throw new ExtensionError(
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
419 * valid analysis domain receiver. 427 * valid analysis domain receiver.
420 */ 428 */
421 void _validateSetAnalysisDomainFunction(Object extension) { 429 void _validateSetAnalysisDomainFunction(Object extension) {
422 if (extension is! SetAnalysisDomain) { 430 if (extension is! SetAnalysisDomain) {
423 String id = setAnalysisDomainExtensionPoint.uniqueIdentifier; 431 String id = setAnalysisDomainExtensionPoint.uniqueIdentifier;
424 throw new ExtensionError( 432 throw new ExtensionError(
425 'Extensions to $id must be a SetAnalysisDomain function'); 433 'Extensions to $id must be a SetAnalysisDomain function');
426 } 434 }
427 } 435 }
428 } 436 }
OLDNEW
« no previous file with comments | « no previous file | pkg/analysis_server/lib/src/services/linter/linter.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698