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

Side by Side Diff: pkg/analysis_server/lib/plugin/protocol/protocol.dart

Issue 1852473002: Fix generated server code to be strong mode compliant (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 4 years, 8 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
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 /** 5 /**
6 * Support for client code that needs to interact with the requests, responses 6 * Support for client code that needs to interact with the requests, responses
7 * and notifications that are part of the analysis server's wire protocol. 7 * and notifications that are part of the analysis server's wire protocol.
8 */ 8 */
9 library analysis_server.plugin.protocol.protocol; 9 library analysis_server.plugin.protocol.protocol;
10 10
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 * Initialize a newly created [Notification] to have the given [event] name. 80 * Initialize a newly created [Notification] to have the given [event] name.
81 * If [_params] is provided, it will be used as the params; otherwise no 81 * If [_params] is provided, it will be used as the params; otherwise no
82 * params will be used. 82 * params will be used.
83 */ 83 */
84 Notification(this.event, [this._params]); 84 Notification(this.event, [this._params]);
85 85
86 /** 86 /**
87 * Initialize a newly created instance based on the given JSON data. 87 * Initialize a newly created instance based on the given JSON data.
88 */ 88 */
89 factory Notification.fromJson(Map<String, Object> json) { 89 factory Notification.fromJson(Map<String, Object> json) {
90 return new Notification( 90 return new Notification(json[Notification.EVENT],
91 json[Notification.EVENT], json[Notification.PARAMS]); 91 json[Notification.PARAMS] as Map<String, Object>);
92 } 92 }
93 93
94 /** 94 /**
95 * Return a table representing the structure of the Json object that will be 95 * Return a table representing the structure of the Json object that will be
96 * sent to the client to represent this response. 96 * sent to the client to represent this response.
97 */ 97 */
98 Map<String, Object> toJson() { 98 Map<String, Object> toJson() {
99 Map<String, Object> jsonObject = {}; 99 Map<String, Object> jsonObject = {};
100 jsonObject[EVENT] = event; 100 jsonObject[EVENT] = event;
101 if (_params != null) { 101 if (_params != null) {
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 var method = result[Request.METHOD]; 187 var method = result[Request.METHOD];
188 if (id is! String || method is! String) { 188 if (id is! String || method is! String) {
189 return null; 189 return null;
190 } 190 }
191 var time = result[Request.CLIENT_REQUEST_TIME]; 191 var time = result[Request.CLIENT_REQUEST_TIME];
192 if (time != null && time is! int) { 192 if (time != null && time is! int) {
193 return null; 193 return null;
194 } 194 }
195 var params = result[Request.PARAMS]; 195 var params = result[Request.PARAMS];
196 if (params is Map || params == null) { 196 if (params is Map || params == null) {
197 return new Request(id, method, params, time); 197 return new Request(id, method, params as Map<String, Object>, time);
198 } else { 198 } else {
199 return null; 199 return null;
200 } 200 }
201 } 201 }
202 202
203 /** 203 /**
204 * Return a request parsed from the given [data], or `null` if the [data] is 204 * Return a request parsed from the given [data], or `null` if the [data] is
205 * not a valid json representation of a request. The [data] is expected to 205 * not a valid json representation of a request. The [data] is expected to
206 * have the following format: 206 * have the following format:
207 * 207 *
208 * { 208 * {
209 * 'clientRequestTime': millisecondsSinceEpoch 209 * 'clientRequestTime': millisecondsSinceEpoch
210 * 'id': String, 210 * 'id': String,
211 * 'method': methodName, 211 * 'method': methodName,
212 * 'params': { 212 * 'params': {
213 * paramter_name: value 213 * paramter_name: value
214 * } 214 * }
215 * } 215 * }
216 * 216 *
217 * where both the parameters and clientRequestTime are optional. 217 * where both the parameters and clientRequestTime are optional.
218 * 218 *
219 * The parameters can contain any number of name/value pairs. The 219 * The parameters can contain any number of name/value pairs. The
220 * clientRequestTime must be an int representing the time at which the client 220 * clientRequestTime must be an int representing the time at which the client
221 * issued the request (milliseconds since epoch). 221 * issued the request (milliseconds since epoch).
222 */ 222 */
223 factory Request.fromString(String data) { 223 factory Request.fromString(String data) {
224 try { 224 try {
225 var result = JSON.decode(data); 225 var result = JSON.decode(data);
226 if (result is Map) { 226 if (result is Map) {
227 return new Request.fromJson(result); 227 return new Request.fromJson(result as Map<String, dynamic>);
228 } 228 }
229 return null; 229 return null;
230 } catch (exception) { 230 } catch (exception) {
231 return null; 231 return null;
232 } 232 }
233 } 233 }
234 234
235 /** 235 /**
236 * Return a table representing the structure of the Json object that will be 236 * Return a table representing the structure of the Json object that will be
237 * sent to the client to represent this response. 237 * sent to the client to represent this response.
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 } 376 }
377 Object error = json[Response.ERROR]; 377 Object error = json[Response.ERROR];
378 RequestError decodedError; 378 RequestError decodedError;
379 if (error is Map) { 379 if (error is Map) {
380 decodedError = new RequestError.fromJson( 380 decodedError = new RequestError.fromJson(
381 new ResponseDecoder(null), '.error', error); 381 new ResponseDecoder(null), '.error', error);
382 } 382 }
383 Object result = json[Response.RESULT]; 383 Object result = json[Response.RESULT];
384 Map<String, Object> decodedResult; 384 Map<String, Object> decodedResult;
385 if (result is Map) { 385 if (result is Map) {
386 decodedResult = result; 386 decodedResult = result as Map<String, Object>;
387 } 387 }
388 return new Response(id, error: decodedError, result: decodedResult); 388 return new Response(id, error: decodedError, result: decodedResult);
389 } catch (exception) { 389 } catch (exception) {
390 return null; 390 return null;
391 } 391 }
392 } 392 }
393 393
394 /** 394 /**
395 * Initialize a newly created instance to represent the 395 * Initialize a newly created instance to represent the
396 * GET_ERRORS_INVALID_FILE error condition. 396 * GET_ERRORS_INVALID_FILE error condition.
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
575 jsonObject[ID] = id; 575 jsonObject[ID] = id;
576 if (error != null) { 576 if (error != null) {
577 jsonObject[ERROR] = error.toJson(); 577 jsonObject[ERROR] = error.toJson();
578 } 578 }
579 if (_result != null) { 579 if (_result != null) {
580 jsonObject[RESULT] = _result; 580 jsonObject[RESULT] = _result;
581 } 581 }
582 return jsonObject; 582 return jsonObject;
583 } 583 }
584 } 584 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698