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

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

Issue 497393002: Make more use of generated code in analysis server. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 3 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 | Annotate | Revision Log
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 operation.analysis; 5 library operation.analysis;
6 6
7 import 'package:analysis_server/src/analysis_server.dart'; 7 import 'package:analysis_server/src/analysis_server.dart';
8 import 'package:analysis_server/src/computer/computer_highlights.dart'; 8 import 'package:analysis_server/src/computer/computer_highlights.dart';
9 import 'package:analysis_server/src/computer/computer_navigation.dart'; 9 import 'package:analysis_server/src/computer/computer_navigation.dart';
10 import 'package:analysis_server/src/computer/computer_occurrences.dart'; 10 import 'package:analysis_server/src/computer/computer_occurrences.dart';
11 import 'package:analysis_server/src/computer/computer_outline.dart'; 11 import 'package:analysis_server/src/computer/computer_outline.dart';
12 import 'package:analysis_server/src/computer/computer_overrides.dart'; 12 import 'package:analysis_server/src/computer/computer_overrides.dart';
13 import 'package:analysis_server/src/constants.dart'; 13 import 'package:analysis_server/src/constants.dart';
14 import 'package:analysis_server/src/operation/operation.dart'; 14 import 'package:analysis_server/src/operation/operation.dart';
15 import 'package:analysis_server/src/protocol.dart'; 15 import 'package:analysis_server/src/protocol.dart';
16 import 'package:analysis_server/src/protocol2.dart' show AnalysisService; 16 import 'package:analysis_server/src/protocol2.dart' as protocol;
17 import 'package:analysis_server/src/services/index/index.dart'; 17 import 'package:analysis_server/src/services/index/index.dart';
18 import 'package:analyzer/src/generated/ast.dart'; 18 import 'package:analyzer/src/generated/ast.dart';
19 import 'package:analyzer/src/generated/engine.dart'; 19 import 'package:analyzer/src/generated/engine.dart';
20 import 'package:analyzer/src/generated/error.dart'; 20 import 'package:analyzer/src/generated/error.dart';
21 import 'package:analyzer/src/generated/html.dart'; 21 import 'package:analyzer/src/generated/html.dart';
22 import 'package:analyzer/src/generated/source.dart'; 22 import 'package:analyzer/src/generated/source.dart';
23 import 'package:analysis_server/src/computer/error.dart' as server_prefix;
24 23
25 24
26 void sendAnalysisNotificationErrors(AnalysisServer server, String file, 25 void sendAnalysisNotificationErrors(AnalysisServer server, String file,
27 LineInfo lineInfo, List<AnalysisError> errors) { 26 LineInfo lineInfo, List<AnalysisError> errors) {
28 Notification notification = new Notification(ANALYSIS_ERRORS); 27 server.sendNotification(new protocol.AnalysisErrorsParams(file,
29 notification.setParameter(FILE, file); 28 protocol.AnalysisError.listFromEngine(lineInfo, errors)).toNotification()) ;
30 notification.setParameter(
31 ERRORS,
32 server_prefix.engineErrorsToJson(lineInfo, errors));
33 server.sendNotification(notification);
34 } 29 }
35 30
36 31
37 void sendAnalysisNotificationHighlights(AnalysisServer server, String file, 32 void sendAnalysisNotificationHighlights(AnalysisServer server, String file,
38 CompilationUnit dartUnit) { 33 CompilationUnit dartUnit) {
39 Notification notification = new Notification(ANALYSIS_HIGHLIGHTS); 34 server.sendNotification(new protocol.AnalysisHighlightsParams(file,
40 notification.setParameter(FILE, file); 35 new DartUnitHighlightsComputer(dartUnit).compute()).toNotification());
41 notification.setParameter(
42 REGIONS,
43 new DartUnitHighlightsComputer(dartUnit).compute());
44 server.sendNotification(notification);
45 } 36 }
46 37
47 38
48 void sendAnalysisNotificationNavigation(AnalysisServer server, String file, 39 void sendAnalysisNotificationNavigation(AnalysisServer server, String file,
49 CompilationUnit dartUnit) { 40 CompilationUnit dartUnit) {
50 Notification notification = new Notification(ANALYSIS_NAVIGATION); 41 server.sendNotification(new protocol.AnalysisNavigationParams(file,
51 notification.setParameter(FILE, file); 42 new DartUnitNavigationComputer(dartUnit).compute()).toNotification());
52 notification.setParameter(
53 REGIONS,
54 new DartUnitNavigationComputer(dartUnit).compute());
55 server.sendNotification(notification);
56 } 43 }
57 44
58 45
59 void sendAnalysisNotificationOccurrences(AnalysisServer server, String file, 46 void sendAnalysisNotificationOccurrences(AnalysisServer server, String file,
60 CompilationUnit dartUnit) { 47 CompilationUnit dartUnit) {
61 Notification notification = new Notification(ANALYSIS_OCCURRENCES); 48 Notification notification = new Notification(ANALYSIS_OCCURRENCES);
62 notification.setParameter(FILE, file); 49 notification.setParameter(FILE, file);
63 notification.setParameter( 50 notification.setParameter(
64 OCCURRENCES, 51 OCCURRENCES,
65 new DartUnitOccurrencesComputer(dartUnit).compute()); 52 new DartUnitOccurrencesComputer(dartUnit).compute());
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 * Send the information in the given list of notices back to the client. 122 * Send the information in the given list of notices back to the client.
136 */ 123 */
137 void sendNotices(AnalysisServer server, List<ChangeNotice> notices) { 124 void sendNotices(AnalysisServer server, List<ChangeNotice> notices) {
138 for (int i = 0; i < notices.length; i++) { 125 for (int i = 0; i < notices.length; i++) {
139 ChangeNotice notice = notices[i]; 126 ChangeNotice notice = notices[i];
140 Source source = notice.source; 127 Source source = notice.source;
141 String file = source.fullName; 128 String file = source.fullName;
142 // Dart 129 // Dart
143 CompilationUnit dartUnit = notice.compilationUnit; 130 CompilationUnit dartUnit = notice.compilationUnit;
144 if (dartUnit != null) { 131 if (dartUnit != null) {
145 if (server.hasAnalysisSubscription(AnalysisService.HIGHLIGHTS, file)) { 132 if (server.hasAnalysisSubscription(protocol.AnalysisService.HIGHLIGHTS, file)) {
146 sendAnalysisNotificationHighlights(server, file, dartUnit); 133 sendAnalysisNotificationHighlights(server, file, dartUnit);
147 } 134 }
148 if (server.hasAnalysisSubscription(AnalysisService.NAVIGATION, file)) { 135 if (server.hasAnalysisSubscription(protocol.AnalysisService.NAVIGATION, file)) {
149 sendAnalysisNotificationNavigation(server, file, dartUnit); 136 sendAnalysisNotificationNavigation(server, file, dartUnit);
150 } 137 }
151 if (server.hasAnalysisSubscription(AnalysisService.OCCURRENCES, file)) { 138 if (server.hasAnalysisSubscription(protocol.AnalysisService.OCCURRENCES, file)) {
152 sendAnalysisNotificationOccurrences(server, file, dartUnit); 139 sendAnalysisNotificationOccurrences(server, file, dartUnit);
153 } 140 }
154 if (server.hasAnalysisSubscription(AnalysisService.OUTLINE, file)) { 141 if (server.hasAnalysisSubscription(protocol.AnalysisService.OUTLINE, fil e)) {
155 sendAnalysisNotificationOutline(server, context, source, dartUnit); 142 sendAnalysisNotificationOutline(server, context, source, dartUnit);
156 } 143 }
157 if (server.hasAnalysisSubscription(AnalysisService.OVERRIDES, file)) { 144 if (server.hasAnalysisSubscription(protocol.AnalysisService.OVERRIDES, f ile)) {
158 sendAnalysisNotificationOverrides(server, file, dartUnit); 145 sendAnalysisNotificationOverrides(server, file, dartUnit);
159 } 146 }
160 } 147 }
161 if (server.shouldSendErrorsNotificationFor(file)) { 148 if (server.shouldSendErrorsNotificationFor(file)) {
162 sendAnalysisNotificationErrors( 149 sendAnalysisNotificationErrors(
163 server, 150 server,
164 file, 151 file,
165 notice.lineInfo, 152 notice.lineInfo,
166 notice.errors); 153 notice.errors);
167 } 154 }
(...skipping 15 matching lines...) Expand all
183 // HTML 170 // HTML
184 { 171 {
185 HtmlUnit htmlUnit = notice.htmlUnit; 172 HtmlUnit htmlUnit = notice.htmlUnit;
186 if (htmlUnit != null) { 173 if (htmlUnit != null) {
187 index.indexHtmlUnit(context, htmlUnit); 174 index.indexHtmlUnit(context, htmlUnit);
188 } 175 }
189 } 176 }
190 } 177 }
191 } 178 }
192 } 179 }
OLDNEW
« no previous file with comments | « pkg/analysis_server/lib/src/generated_protocol.dart ('k') | pkg/analysis_server/lib/src/protocol.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698