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

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

Issue 2703033002: Add a diagnostic.getServerPort analysis server request. (Closed)
Patch Set: Created 3 years, 10 months 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
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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; 5 library analysis.server;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import 'dart:collection'; 8 import 'dart:collection';
9 import 'dart:core'; 9 import 'dart:core';
10 import 'dart:io' as io; 10 import 'dart:io' as io;
11 import 'dart:math' show max; 11 import 'dart:math' show max;
12 12
13 import 'package:analysis_server/plugin/protocol/protocol.dart' 13 import 'package:analysis_server/plugin/protocol/protocol.dart'
14 hide AnalysisOptions, Element; 14 hide AnalysisOptions, Element;
15 import 'package:analysis_server/src/analysis_logger.dart'; 15 import 'package:analysis_server/src/analysis_logger.dart';
16 import 'package:analysis_server/src/channel/channel.dart'; 16 import 'package:analysis_server/src/channel/channel.dart';
17 import 'package:analysis_server/src/computer/new_notifications.dart'; 17 import 'package:analysis_server/src/computer/new_notifications.dart';
18 import 'package:analysis_server/src/context_manager.dart'; 18 import 'package:analysis_server/src/context_manager.dart';
19 import 'package:analysis_server/src/operation/operation.dart'; 19 import 'package:analysis_server/src/operation/operation.dart';
20 import 'package:analysis_server/src/operation/operation_analysis.dart'; 20 import 'package:analysis_server/src/operation/operation_analysis.dart';
21 import 'package:analysis_server/src/operation/operation_queue.dart'; 21 import 'package:analysis_server/src/operation/operation_queue.dart';
22 import 'package:analysis_server/src/plugin/server_plugin.dart'; 22 import 'package:analysis_server/src/plugin/server_plugin.dart';
23 import 'package:analysis_server/src/server/diagnostic_server.dart';
23 import 'package:analysis_server/src/services/correction/namespace.dart'; 24 import 'package:analysis_server/src/services/correction/namespace.dart';
24 import 'package:analysis_server/src/services/index/index.dart'; 25 import 'package:analysis_server/src/services/index/index.dart';
25 import 'package:analysis_server/src/services/search/search_engine.dart'; 26 import 'package:analysis_server/src/services/search/search_engine.dart';
26 import 'package:analysis_server/src/services/search/search_engine_internal.dart' ; 27 import 'package:analysis_server/src/services/search/search_engine_internal.dart' ;
27 import 'package:analysis_server/src/services/search/search_engine_internal2.dart '; 28 import 'package:analysis_server/src/services/search/search_engine_internal2.dart ';
28 import 'package:analysis_server/src/single_context_manager.dart'; 29 import 'package:analysis_server/src/single_context_manager.dart';
29 import 'package:analysis_server/src/utilities/null_string_sink.dart'; 30 import 'package:analysis_server/src/utilities/null_string_sink.dart';
30 import 'package:analyzer/dart/ast/ast.dart'; 31 import 'package:analyzer/dart/ast/ast.dart';
31 import 'package:analyzer/dart/ast/standard_resolution_map.dart'; 32 import 'package:analyzer/dart/ast/standard_resolution_map.dart';
32 import 'package:analyzer/dart/element/element.dart'; 33 import 'package:analyzer/dart/element/element.dart';
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after
322 nd.PerformanceLog _analysisPerformanceLogger; 323 nd.PerformanceLog _analysisPerformanceLogger;
323 ByteStore byteStore; 324 ByteStore byteStore;
324 nd.AnalysisDriverScheduler analysisDriverScheduler; 325 nd.AnalysisDriverScheduler analysisDriverScheduler;
325 326
326 /** 327 /**
327 * The set of the files that are currently priority. 328 * The set of the files that are currently priority.
328 */ 329 */
329 final Set<String> priorityFiles = new Set<String>(); 330 final Set<String> priorityFiles = new Set<String>();
330 331
331 /** 332 /**
333 * The DiagnosticServer for this AnalysisServer. If available, it can be used
334 * to start an http diagnostics server or return the port for an existing
335 * server.
336 */
337 DiagnosticServer diagnosticServer;
338
339 /**
332 * Initialize a newly created server to receive requests from and send 340 * Initialize a newly created server to receive requests from and send
333 * responses to the given [channel]. 341 * responses to the given [channel].
334 * 342 *
335 * If [rethrowExceptions] is true, then any exceptions thrown by analysis are 343 * If [rethrowExceptions] is true, then any exceptions thrown by analysis are
336 * propagated up the call stack. The default is true to allow analysis 344 * propagated up the call stack. The default is true to allow analysis
337 * exceptions to show up in unit tests, but it should be set to false when 345 * exceptions to show up in unit tests, but it should be set to false when
338 * running a full analysis server. 346 * running a full analysis server.
339 */ 347 */
340 AnalysisServer( 348 AnalysisServer(
341 this.channel, 349 this.channel,
342 this.resourceProvider, 350 this.resourceProvider,
343 PubPackageMapProvider packageMapProvider, 351 PubPackageMapProvider packageMapProvider,
344 this.index, 352 this.index,
345 this.serverPlugin, 353 this.serverPlugin,
346 this.options, 354 this.options,
347 this.sdkManager, 355 this.sdkManager,
348 this.instrumentationService, 356 this.instrumentationService,
349 {ResolverProvider fileResolverProvider: null, 357 {this.diagnosticServer,
358 ResolverProvider fileResolverProvider: null,
350 ResolverProvider packageResolverProvider: null, 359 ResolverProvider packageResolverProvider: null,
351 bool useSingleContextManager: false, 360 bool useSingleContextManager: false,
352 this.rethrowExceptions: true}) { 361 this.rethrowExceptions: true}) {
353 _performance = performanceDuringStartup; 362 _performance = performanceDuringStartup;
354 defaultContextOptions.incremental = true; 363 defaultContextOptions.incremental = true;
355 defaultContextOptions.incrementalApi = 364 defaultContextOptions.incrementalApi =
356 options.enableIncrementalResolutionApi; 365 options.enableIncrementalResolutionApi;
357 defaultContextOptions.incrementalValidation = 366 defaultContextOptions.incrementalValidation =
358 options.enableIncrementalResolutionValidation; 367 options.enableIncrementalResolutionValidation;
359 defaultContextOptions.finerGrainedInvalidation = 368 defaultContextOptions.finerGrainedInvalidation =
(...skipping 1765 matching lines...) Expand 10 before | Expand all | Expand 10 after
2125 /** 2134 /**
2126 * The [PerformanceTag] for time spent in server request handlers. 2135 * The [PerformanceTag] for time spent in server request handlers.
2127 */ 2136 */
2128 static PerformanceTag serverRequests = new PerformanceTag('serverRequests'); 2137 static PerformanceTag serverRequests = new PerformanceTag('serverRequests');
2129 2138
2130 /** 2139 /**
2131 * The [PerformanceTag] for time spent in split store microtasks. 2140 * The [PerformanceTag] for time spent in split store microtasks.
2132 */ 2141 */
2133 static PerformanceTag splitStore = new PerformanceTag('splitStore'); 2142 static PerformanceTag splitStore = new PerformanceTag('splitStore');
2134 } 2143 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698