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

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

Issue 402493002: Remove 'errorCode' field from AnalysisError in the analysis server API. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 5 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.edit; 5 library domain.edit;
6 6
7 import 'package:analyzer/src/generated/error.dart';
8 import 'package:analysis_server/src/analysis_server.dart'; 7 import 'package:analysis_server/src/analysis_server.dart';
9 import 'package:analysis_server/src/constants.dart'; 8 import 'package:analysis_server/src/constants.dart';
10 import 'package:analysis_server/src/protocol.dart'; 9 import 'package:analysis_server/src/protocol.dart';
11 10
12 /** 11 /**
13 * Instances of the class [EditDomainHandler] implement a [RequestHandler] 12 * Instances of the class [EditDomainHandler] implement a [RequestHandler]
14 * that handles requests in the edit domain. 13 * that handles requests in the edit domain.
15 */ 14 */
16 class EditDomainHandler implements RequestHandler { 15 class EditDomainHandler implements RequestHandler {
17 /** 16 /**
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 // length 91 // length
93 RequestDatum lengthDatum = request.getRequiredParameter(LENGTH); 92 RequestDatum lengthDatum = request.getRequiredParameter(LENGTH);
94 int length = lengthDatum.asInt(); 93 int length = lengthDatum.asInt();
95 // TODO(brianwilkerson) implement 94 // TODO(brianwilkerson) implement
96 return null; 95 return null;
97 } 96 }
98 97
99 Response getFixes(Request request) { 98 Response getFixes(Request request) {
100 // errors 99 // errors
101 RequestDatum errorsDatum = request.getRequiredParameter(ERRORS); 100 RequestDatum errorsDatum = request.getRequiredParameter(ERRORS);
102 List<AnalysisError> errors = errorsDatum.asList((RequestDatum datum) { 101 // TODO(paulberry): the API for edit.getFixes should be changed to so that
103 return _createAnalysisError(request, datum); 102 // it doesn't use AnalysisError as an input type. This is necessary
104 }); 103 // because the JSON protocol for an AnalysisError doesn't contain the
104 // errorCode, so we don't have enough information to reconstitute the error
105 // object.
106 // List<AnalysisError> errors = errorsDatum.asList((RequestDatum datum) {
107 // return _createAnalysisError(request, datum);
108 // });
109
105 // TODO(brianwilkerson) implement 110 // TODO(brianwilkerson) implement
106 return null; 111 return null;
107 } 112 }
108 113
109 Response getRefactorings(Request request) { 114 Response getRefactorings(Request request) {
110 // file 115 // file
111 RequestDatum fileDatum = request.getRequiredParameter(FILE); 116 RequestDatum fileDatum = request.getRequiredParameter(FILE);
112 String file = fileDatum.asString(); 117 String file = fileDatum.asString();
113 // offset 118 // offset
114 RequestDatum offsetDatum = request.getRequiredParameter(OFFSET); 119 RequestDatum offsetDatum = request.getRequiredParameter(OFFSET);
115 int offset = offsetDatum.asInt(); 120 int offset = offsetDatum.asInt();
116 // length 121 // length
117 RequestDatum lengthDatum = request.getRequiredParameter(LENGTH); 122 RequestDatum lengthDatum = request.getRequiredParameter(LENGTH);
118 int length = lengthDatum.asInt(); 123 int length = lengthDatum.asInt();
119 // TODO(brianwilkerson) implement 124 // TODO(brianwilkerson) implement
120 return null; 125 return null;
121 } 126 }
122 127
123 Response setRefactoringOptions(Request request) { 128 Response setRefactoringOptions(Request request) {
124 // id 129 // id
125 RequestDatum idDatum = request.getRequiredParameter(ID); 130 RequestDatum idDatum = request.getRequiredParameter(ID);
126 String id = idDatum.asString(); 131 String id = idDatum.asString();
127 // TODO(brianwilkerson) implement 132 // TODO(brianwilkerson) implement
128 return null; 133 return null;
129 } 134 }
130
131 /**
132 * Convert the given data from a request into an analysis error.
133 */
134 AnalysisError _createAnalysisError(Request request, RequestDatum datum) {
135 String file = datum[FILE].asString();
136 String errorCodeName = datum[ERROR_CODE].asString();
137 int offset = datum[OFFSET].asInt();
138 int length = datum[LENGTH].asInt();
139 String message = datum[MESSAGE].asString();
140 String correction;
141 if (datum.hasKey(CORRECTION)) {
142 correction = datum[CORRECTION].asString();
143 }
144 ErrorCode errorCode = convertErrorCode(errorCodeName);
145 if (errorCode == null) {
146 // throw new RequestFailure(new Response.invalidErrorCode(request));
147 }
148 // TODO(brianwilkerson) Implement this.
149 // return new AnalysisError.con2(
150 // server.sourceFromFile(file),
151 // offset,
152 // length,
153 // errorCode,
154 // null);
155 return null;
156 }
157
158 /**
159 * Return the error code corresponding to the given [errorCodeName], or `null`
160 * if the given name is not a valid error code.
161 */
162 ErrorCode convertErrorCode(String errorCodeName) {
163 // TODO(brianwilkerson) Implement this.
164 // Enum2 errorCode = Enum2.valueOf(AngularCode.values, errorCodeName);
165 // if (errorCode == null) {
166 // errorCode = Enum2.valueOf(CompileTimeErrorCode.values, errorCodeName);
167 // }
168 // if (errorCode == null) {
169 // errorCode = Enum2.valueOf(HintCode.values, errorCodeName);
170 // }
171 // if (errorCode == null) {
172 // errorCode = Enum2.valueOf(HtmlWarningCode.values, errorCodeName);
173 // }
174 // if (errorCode == null) {
175 // errorCode = Enum2.valueOf(ParserErrorCode.values, errorCodeName);
176 // }
177 // if (errorCode == null) {
178 // errorCode = Enum2.valueOf(PolymerCode.values, errorCodeName);
179 // }
180 // if (errorCode == null) {
181 // errorCode = Enum2.valueOf(PubSuggestionCode.values, errorCodeName);
182 // }
183 // if (errorCode == null) {
184 // errorCode = Enum2.valueOf(ResolverErrorCode.values, errorCodeName);
185 // }
186 // if (errorCode == null) {
187 // errorCode = Enum2.valueOf(ScannerErrorCode.values, errorCodeName);
188 // }
189 // if (errorCode == null) {
190 // errorCode = Enum2.valueOf(StaticTypeErrorCode.values, errorCodeName);
191 // }
192 // if (errorCode == null) {
193 // errorCode = Enum2.valueOf(StaticWarningErrorCode.values, errorCodeName);
194 // }
195 // if (errorCode == null) {
196 // errorCode = Enum2.valueOf(TodoCode.values, errorCodeName);
197 // }
198 return null;
199 }
200 } 135 }
OLDNEW
« no previous file with comments | « pkg/analysis_server/lib/src/constants.dart ('k') | pkg/analysis_server/lib/src/operation/operation_analysis.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698