Index: pkg/analysis_server/lib/src/operation/operation_analysis.dart |
diff --git a/pkg/analysis_server/lib/src/operation/operation_analysis.dart b/pkg/analysis_server/lib/src/operation/operation_analysis.dart |
index ce9597fabb54b723ebfa514cdab1797998d1b558..2964916b0a5dc140b8edab0adee7cdd68b778e22 100644 |
--- a/pkg/analysis_server/lib/src/operation/operation_analysis.dart |
+++ b/pkg/analysis_server/lib/src/operation/operation_analysis.dart |
@@ -7,6 +7,7 @@ library operation.analysis; |
import 'package:analysis_server/src/analysis_server.dart'; |
import 'package:analysis_server/src/computer/computer_highlights.dart'; |
import 'package:analysis_server/src/computer/computer_navigation.dart'; |
+import 'package:analysis_server/src/computer/computer_occurrences.dart'; |
import 'package:analysis_server/src/computer/computer_outline.dart'; |
import 'package:analysis_server/src/constants.dart'; |
import 'package:analysis_server/src/operation/operation.dart'; |
@@ -84,6 +85,16 @@ void sendAnalysisNotificationNavigation(AnalysisServer server, String file, |
} |
+void sendAnalysisNotificationOccurrences(AnalysisServer server, String file, |
+ CompilationUnit dartUnit) { |
+ Notification notification = new Notification(ANALYSIS_OCCURRENCES); |
+ notification.setParameter(FILE, file); |
+ notification.setParameter(OCCURRENCES, new DartUnitOccurrencesComputer( |
+ dartUnit).compute()); |
+ server.sendNotification(notification); |
+} |
+ |
+ |
void sendAnalysisNotificationOutline(AnalysisServer server, |
AnalysisContext context, Source source, CompilationUnit dartUnit) { |
Notification notification = new Notification(ANALYSIS_OUTLINE); |
@@ -152,6 +163,9 @@ class PerformAnalysisOperation extends ServerOperation { |
if (server.hasAnalysisSubscription(AnalysisService.NAVIGATION, file)) { |
sendAnalysisNotificationNavigation(server, file, dartUnit); |
} |
+ if (server.hasAnalysisSubscription(AnalysisService.OCCURRENCES, file)) { |
+ sendAnalysisNotificationOccurrences(server, file, dartUnit); |
+ } |
if (server.hasAnalysisSubscription(AnalysisService.OUTLINE, file)) { |
sendAnalysisNotificationOutline(server, context, source, dartUnit); |
} |