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

Unified Diff: runtime/vm/service/message.dart

Issue 1093043004: Do not JSON encode the 'result' of a service rpc. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: code review Created 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/service/client.dart ('k') | runtime/vm/service/vmservice.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/service/message.dart
diff --git a/runtime/vm/service/message.dart b/runtime/vm/service/message.dart
index b4654999c9a8b307cf92beb6fc651c6cbc7fe722..c0ad04e2cb285761af8503eceeac2a9cb37efa5a 100644
--- a/runtime/vm/service/message.dart
+++ b/runtime/vm/service/message.dart
@@ -33,7 +33,8 @@ class Message {
});
}
- Message.fromJsonRpc(Map map) : serial = map['id'], method = map['method'] {
+ Message.fromJsonRpc(Map map)
+ : serial = map['id'], method = map['method'] {
params.addAll(map['params']);
}
@@ -47,7 +48,8 @@ class Message {
return uri.pathSegments[0];
}
- Message.fromUri(Uri uri) : method = _methodNameFromUri(uri) {
+ Message.fromUri(Uri uri)
+ : method = _methodNameFromUri(uri) {
params.addAll(uri.queryParameters);
}
@@ -84,12 +86,13 @@ class Message {
};
var keys = _makeAllString(params.keys.toList(growable:false));
var values = _makeAllString(params.values.toList(growable:false));
- var request = new List(5)
+ var request = new List(6)
..[0] = 0 // Make room for OOB message type.
..[1] = receivePort.sendPort
- ..[2] = method
- ..[3] = keys
- ..[4] = values;
+ ..[2] = serial.toString()
+ ..[3] = method
+ ..[4] = keys
+ ..[5] = values;
if (!sendIsolateServiceMessage(sendPort, request)) {
_completer.complete(JSON.encode({
'type': 'ServiceError',
@@ -110,12 +113,13 @@ class Message {
};
var keys = _makeAllString(params.keys.toList(growable:false));
var values = _makeAllString(params.values.toList(growable:false));
- var request = new List(5)
+ var request = new List(6)
..[0] = 0 // Make room for OOB message type.
..[1] = receivePort.sendPort
- ..[2] = method
- ..[3] = keys
- ..[4] = values;
+ ..[2] = serial.toString()
+ ..[3] = method
+ ..[4] = keys
+ ..[5] = values;
sendRootServiceMessage(request);
return _completer.future;
}
@@ -124,15 +128,19 @@ class Message {
_completer.complete(response);
}
- void setErrorResponse(String error) {
- _completer.complete(JSON.encode({
- 'type': 'ServiceError',
- 'id': '',
- 'kind': 'RequestError',
- 'message': error,
- 'path': path,
- 'params': params
- }));
+ void setErrorResponse(String message) {
+ var response = {
+ 'id': serial,
+ 'result' : {
+ 'type': 'Error',
+ 'message': message,
+ 'request': {
+ 'method': method,
+ 'params': params
+ }
+ }
+ };
+ _completer.complete(JSON.encode(response));
}
}
« no previous file with comments | « runtime/vm/service/client.dart ('k') | runtime/vm/service/vmservice.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698