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 part of service; | 5 part of service; |
6 | 6 |
7 /// A [ServiceObject] represents a persistent object within the vm. | 7 /// A [ServiceObject] represents a persistent object within the vm. |
8 abstract class ServiceObject extends Observable { | 8 abstract class ServiceObject extends Observable { |
9 static int LexicalSortName(ServiceObject o1, ServiceObject o2) { | 9 static int LexicalSortName(ServiceObject o1, ServiceObject o2) { |
10 return o1.name.compareTo(o2.name); | 10 return o1.name.compareTo(o2.name); |
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
275 | 275 |
276 _update(map, mapIsRef); | 276 _update(map, mapIsRef); |
277 } | 277 } |
278 | 278 |
279 // Updates internal state from [map]. [map] can be a reference. | 279 // Updates internal state from [map]. [map] can be a reference. |
280 void _update(ObservableMap map, bool mapIsRef); | 280 void _update(ObservableMap map, bool mapIsRef); |
281 } | 281 } |
282 | 282 |
283 abstract class Coverage { | 283 abstract class Coverage { |
284 // Following getters and functions will be provided by [ServiceObject]. | 284 // Following getters and functions will be provided by [ServiceObject]. |
285 ServiceObjectOwner get owner; | 285 String get id; |
286 String get type; | 286 Isolate get isolate; |
287 VM get vm; | |
288 | 287 |
289 /// Default handler for coverage data. | 288 /// Default handler for coverage data. |
290 void processCoverageData(List coverageData) { | 289 void processCoverageData(List coverageData) { |
291 coverageData.forEach((scriptCoverage) { | 290 coverageData.forEach((scriptCoverage) { |
292 assert(scriptCoverage['script'] != null); | 291 assert(scriptCoverage['script'] != null); |
293 scriptCoverage['script']._processHits(scriptCoverage['hits']); | 292 scriptCoverage['script']._processHits(scriptCoverage['hits']); |
294 }); | 293 }); |
295 } | 294 } |
296 | 295 |
297 Future refreshCoverage() { | 296 Future refreshCoverage() { |
298 Map params = {}; | 297 Map params = {}; |
299 if (this is! Isolate) { | 298 if (this is! Isolate) { |
300 params['targetId'] = id; | 299 params['targetId'] = id; |
301 } | 300 } |
302 return isolate.invokeRpcNoUpgrade('getCoverage', params).then( | 301 return isolate.invokeRpcNoUpgrade('getCoverage', params).then( |
303 (ObservableMap map) { | 302 (ObservableMap map) { |
304 var coverageOwner = (type == 'Isolate') ? this : owner; | 303 var coverage = new ServiceObject._fromMap(isolate, map); |
305 var coverage = new ServiceObject._fromMap(coverageOwner, map); | |
306 assert(coverage.type == 'CodeCoverage'); | 304 assert(coverage.type == 'CodeCoverage'); |
307 var coverageList = coverage['coverage']; | 305 var coverageList = coverage['coverage']; |
308 assert(coverageList != null); | 306 assert(coverageList != null); |
309 processCoverageData(coverageList); | 307 processCoverageData(coverageList); |
310 }); | 308 }); |
311 } | 309 } |
312 } | 310 } |
313 | 311 |
314 abstract class ServiceObjectOwner extends ServiceObject { | 312 abstract class ServiceObjectOwner extends ServiceObject { |
315 /// Creates an empty [ServiceObjectOwner]. | 313 /// Creates an empty [ServiceObjectOwner]. |
(...skipping 2538 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2854 var v = list[i]; | 2852 var v = list[i]; |
2855 if ((v is ObservableMap) && _isServiceMap(v)) { | 2853 if ((v is ObservableMap) && _isServiceMap(v)) { |
2856 list[i] = owner.getFromMap(v); | 2854 list[i] = owner.getFromMap(v); |
2857 } else if (v is ObservableList) { | 2855 } else if (v is ObservableList) { |
2858 _upgradeObservableList(v, owner); | 2856 _upgradeObservableList(v, owner); |
2859 } else if (v is ObservableMap) { | 2857 } else if (v is ObservableMap) { |
2860 _upgradeObservableMap(v, owner); | 2858 _upgradeObservableMap(v, owner); |
2861 } | 2859 } |
2862 } | 2860 } |
2863 } | 2861 } |
OLD | NEW |