OLD | NEW |
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 service_common; | 5 library service_common; |
6 | 6 |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 import 'dart:convert'; | 8 import 'dart:convert'; |
9 import 'dart:typed_data'; | 9 import 'dart:typed_data'; |
10 | 10 |
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
202 var data = new ByteData.view( | 202 var data = new ByteData.view( |
203 bytes.buffer, | 203 bytes.buffer, |
204 bytes.offsetInBytes + offset, | 204 bytes.offsetInBytes + offset, |
205 bytes.lengthInBytes - offset); | 205 bytes.lengthInBytes - offset); |
206 var map = _parseJSON(meta); | 206 var map = _parseJSON(meta); |
207 if (map == null || map['method'] != 'streamNotify') { | 207 if (map == null || map['method'] != 'streamNotify') { |
208 return; | 208 return; |
209 } | 209 } |
210 var event = map['params']['event']; | 210 var event = map['params']['event']; |
211 var streamId = map['params']['streamId']; | 211 var streamId = map['params']['streamId']; |
212 postServiceEvent(streamId, event, data); | 212 scheduleMicrotask(() { postServiceEvent(streamId, event, data); }); |
213 }); | 213 }); |
214 } | 214 } |
215 | 215 |
216 void _onStringMessage(String data) { | 216 void _onStringMessage(String data) { |
217 var map = _parseJSON(data); | 217 var map = _parseJSON(data); |
218 if (map == null) { | 218 if (map == null) { |
219 return; | 219 return; |
220 } | 220 } |
221 | 221 |
222 if (map['method'] == 'streamNotify') { | 222 if (map['method'] == 'streamNotify') { |
223 var event = map['params']['event']; | 223 var event = map['params']['event']; |
224 var streamId = map['params']['streamId']; | 224 var streamId = map['params']['streamId']; |
225 postServiceEvent(streamId, event, null); | 225 scheduleMicrotask(() { postServiceEvent(streamId, event, null); }); |
226 return; | 226 return; |
227 } | 227 } |
228 | 228 |
229 // Extract serial and result. | 229 // Extract serial and result. |
230 var serial = map['id']; | 230 var serial = map['id']; |
231 | 231 |
232 // Complete request. | 232 // Complete request. |
233 var request = _pendingRequests.remove(serial); | 233 var request = _pendingRequests.remove(serial); |
234 if (request == null) { | 234 if (request == null) { |
235 Logger.root.severe('Received unexpected message: ${map}'); | 235 Logger.root.severe('Received unexpected message: ${map}'); |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
320 if (request.method != 'getTagProfile' && | 320 if (request.method != 'getTagProfile' && |
321 request.method != 'getIsolateMetric' && | 321 request.method != 'getIsolateMetric' && |
322 request.method != 'getVMMetric') { | 322 request.method != 'getVMMetric') { |
323 Logger.root.info( | 323 Logger.root.info( |
324 'GET [${serial}] ${request.method}(${request.params}) from ${target.ne
tworkAddress}'); | 324 'GET [${serial}] ${request.method}(${request.params}) from ${target.ne
tworkAddress}'); |
325 } | 325 } |
326 // Send message. | 326 // Send message. |
327 _webSocket.send(message); | 327 _webSocket.send(message); |
328 } | 328 } |
329 } | 329 } |
OLD | NEW |