| OLD | NEW |
| 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 domain.analysis; | 5 library domain.analysis; |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 | 8 |
| 9 import 'package:analysis_server/src/analysis_server.dart'; | 9 import 'package:analysis_server/src/analysis_server.dart'; |
| 10 import 'package:analysis_server/src/computer/computer_hover.dart'; | 10 import 'package:analysis_server/src/computer/computer_hover.dart'; |
| 11 import 'package:analysis_server/src/constants.dart'; | 11 import 'package:analysis_server/src/constants.dart'; |
| 12 import 'package:analysis_server/src/protocol_server.dart'; | 12 import 'package:analysis_server/src/protocol_server.dart'; |
| 13 import 'package:analysis_server/src/services/dependencies/library_dependencies.d
art'; |
| 13 import 'package:analyzer/src/generated/ast.dart'; | 14 import 'package:analyzer/src/generated/ast.dart'; |
| 14 import 'package:analyzer/src/generated/engine.dart' as engine; | 15 import 'package:analyzer/src/generated/engine.dart' as engine; |
| 15 | 16 |
| 16 | 17 |
| 17 /** | 18 /** |
| 18 * Instances of the class [AnalysisDomainHandler] implement a [RequestHandler] | 19 * Instances of the class [AnalysisDomainHandler] implement a [RequestHandler] |
| 19 * that handles requests in the `analysis` domain. | 20 * that handles requests in the `analysis` domain. |
| 20 */ | 21 */ |
| 21 class AnalysisDomainHandler implements RequestHandler { | 22 class AnalysisDomainHandler implements RequestHandler { |
| 22 /** | 23 /** |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 80 HoverInformation hoverInformation = | 81 HoverInformation hoverInformation = |
| 81 new DartUnitHoverComputer(unit, params.offset).compute(); | 82 new DartUnitHoverComputer(unit, params.offset).compute(); |
| 82 if (hoverInformation != null) { | 83 if (hoverInformation != null) { |
| 83 hovers.add(hoverInformation); | 84 hovers.add(hoverInformation); |
| 84 } | 85 } |
| 85 } | 86 } |
| 86 // send response | 87 // send response |
| 87 return new AnalysisGetHoverResult(hovers).toResponse(request.id); | 88 return new AnalysisGetHoverResult(hovers).toResponse(request.id); |
| 88 } | 89 } |
| 89 | 90 |
| 91 /// Implement the `analysis.getLibraryDependencies` request. |
| 92 Response getLibraryDependencies(Request request) { |
| 93 Set<String> directories = new LibraryDependencyCollector( |
| 94 server.getAnalysisContexts()).collectFolderDependencies(); |
| 95 new AnalysisGetLibraryDependenciesResult( |
| 96 directories.toList(growable: false)).toResponse(request.id); |
| 97 } |
| 98 |
| 90 @override | 99 @override |
| 91 Response handleRequest(Request request) { | 100 Response handleRequest(Request request) { |
| 92 try { | 101 try { |
| 93 String requestName = request.method; | 102 String requestName = request.method; |
| 94 if (requestName == ANALYSIS_GET_ERRORS) { | 103 if (requestName == ANALYSIS_GET_ERRORS) { |
| 95 return getErrors(request); | 104 return getErrors(request); |
| 96 } else if (requestName == ANALYSIS_GET_HOVER) { | 105 } else if (requestName == ANALYSIS_GET_HOVER) { |
| 97 return getHover(request); | 106 return getHover(request); |
| 107 } else if (requestName == ANALYSIS_GET_LIBRARY_DEPENDENCIES) { |
| 108 return getLibraryDependencies(request); |
| 98 } else if (requestName == ANALYSIS_REANALYZE) { | 109 } else if (requestName == ANALYSIS_REANALYZE) { |
| 99 return reanalyze(request); | 110 return reanalyze(request); |
| 100 } else if (requestName == ANALYSIS_SET_ANALYSIS_ROOTS) { | 111 } else if (requestName == ANALYSIS_SET_ANALYSIS_ROOTS) { |
| 101 return setAnalysisRoots(request); | 112 return setAnalysisRoots(request); |
| 102 } else if (requestName == ANALYSIS_SET_PRIORITY_FILES) { | 113 } else if (requestName == ANALYSIS_SET_PRIORITY_FILES) { |
| 103 return setPriorityFiles(request); | 114 return setPriorityFiles(request); |
| 104 } else if (requestName == ANALYSIS_SET_SUBSCRIPTIONS) { | 115 } else if (requestName == ANALYSIS_SET_SUBSCRIPTIONS) { |
| 105 return setSubscriptions(request); | 116 return setSubscriptions(request); |
| 106 } else if (requestName == ANALYSIS_UPDATE_CONTENT) { | 117 } else if (requestName == ANALYSIS_UPDATE_CONTENT) { |
| 107 return updateContent(request); | 118 return updateContent(request); |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 182 } | 193 } |
| 183 if (newOptions.generateHints != null) { | 194 if (newOptions.generateHints != null) { |
| 184 updaters.add((engine.AnalysisOptionsImpl options) { | 195 updaters.add((engine.AnalysisOptionsImpl options) { |
| 185 options.hint = newOptions.generateHints; | 196 options.hint = newOptions.generateHints; |
| 186 }); | 197 }); |
| 187 } | 198 } |
| 188 server.updateOptions(updaters); | 199 server.updateOptions(updaters); |
| 189 return new AnalysisUpdateOptionsResult().toResponse(request.id); | 200 return new AnalysisUpdateOptionsResult().toResponse(request.id); |
| 190 } | 201 } |
| 191 } | 202 } |
| OLD | NEW |