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

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

Issue 479683005: 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, 4 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 domain.completion; 5 library domain.completion;
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/constants.dart'; 8 import 'package:analysis_server/src/constants.dart';
9 import 'package:analysis_server/src/protocol.dart'; 9 import 'package:analysis_server/src/protocol.dart';
10 import 'package:analysis_server/src/protocol2.dart' show 10 import 'package:analysis_server/src/protocol2.dart' show
11 CompletionGetSuggestionsParams; 11 CompletionGetSuggestionsParams, CompletionGetSuggestionsResult;
12 import 'package:analysis_server/src/services/completion/completion_manager.dart' ; 12 import 'package:analysis_server/src/services/completion/completion_manager.dart' ;
13 import 'package:analysis_server/src/services/completion/completion_suggestion.da rt'; 13 import 'package:analysis_server/src/services/completion/completion_suggestion.da rt';
14 14
15 /** 15 /**
16 * Instances of the class [CompletionDomainHandler] implement a [RequestHandler] 16 * Instances of the class [CompletionDomainHandler] implement a [RequestHandler]
17 * that handles requests in the search domain. 17 * that handles requests in the search domain.
18 */ 18 */
19 class CompletionDomainHandler implements RequestHandler { 19 class CompletionDomainHandler implements RequestHandler {
20 /** 20 /**
21 * The analysis server that is using this handler to process requests. 21 * The analysis server that is using this handler to process requests.
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 params.offset, 59 params.offset,
60 server.searchEngine).results().listen((CompletionResult result) { 60 server.searchEngine).results().listen((CompletionResult result) {
61 sendCompletionNotification( 61 sendCompletionNotification(
62 completionId, 62 completionId,
63 result.replacementOffset, 63 result.replacementOffset,
64 result.replacementLength, 64 result.replacementLength,
65 result.suggestions, 65 result.suggestions,
66 result.last); 66 result.last);
67 }); 67 });
68 // initial response without results 68 // initial response without results
69 return new Response(request.id)..setResult(ID, completionId); 69 return new CompletionGetSuggestionsResult(completionId).toResponse(
70 request.id);
70 } 71 }
71 72
72 /** 73 /**
73 * Send completion notification results. 74 * Send completion notification results.
74 */ 75 */
75 void sendCompletionNotification(String completionId, int replacementOffset, 76 void sendCompletionNotification(String completionId, int replacementOffset,
76 int replacementLength, Iterable<CompletionSuggestion> results, bool isLast ) { 77 int replacementLength, Iterable<CompletionSuggestion> results, bool isLast ) {
77 Notification notification = new Notification(COMPLETION_RESULTS); 78 Notification notification = new Notification(COMPLETION_RESULTS);
78 notification.setParameter(ID, completionId); 79 notification.setParameter(ID, completionId);
79 notification.setParameter(REPLACEMENT_OFFSET, replacementOffset); 80 notification.setParameter(REPLACEMENT_OFFSET, replacementOffset);
80 notification.setParameter(REPLACEMENT_LENGTH, replacementLength); 81 notification.setParameter(REPLACEMENT_LENGTH, replacementLength);
81 notification.setParameter(RESULTS, results); 82 notification.setParameter(RESULTS, results);
82 notification.setParameter(LAST, isLast); 83 notification.setParameter(LAST, isLast);
83 server.sendNotification(notification); 84 server.sendNotification(notification);
84 } 85 }
85 } 86 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698