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

Unified Diff: runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart

Issue 50243002: Extend Observatory to display libraries, classes, fields, functions and code. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 2 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
Index: runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart
diff --git a/runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart b/runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart
index f9272e3b1628b67d9b7963fde970c50934b02b00..97df4564e4b687decc8c236b50123fc7430d30bf 100644
--- a/runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart
+++ b/runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart
@@ -7,7 +7,7 @@ part of observatory;
/// The LocationManager class observes and parses the hash ('#') portion of the
/// URL in window.location. The text after the '#' is used as the request
/// string for the VM service.
-class LocationManager extends Object with ChangeNotifierMixin {
+class LocationManager extends Observable {
static const int InvalidIsolateId = 0;
static const String defaultHash = '#/isolates/';
static final RegExp currentIsolateMatcher = new RegExp(r"#/isolates/\d+/");
@@ -15,7 +15,7 @@ class LocationManager extends Object with ChangeNotifierMixin {
ObservatoryApplication _application;
ObservatoryApplication get application => _application;
- @observable String get currentHash => __$currentHash; String __$currentHash = ''; set currentHash(String value) { __$currentHash = notifyPropertyChange(#currentHash, __$currentHash, value); }
+ @observable String currentHash = '';
void init() {
window.onHashChange.listen((event) {
@@ -80,6 +80,7 @@ class LocationManager extends Object with ChangeNotifierMixin {
}
/// Create a request for [l] on the current isolate.
+ @observable
String currentIsolateRelativeLink(String l) {
var isolateId = currentIsolateId();
if (isolateId == LocationManager.InvalidIsolateId) {
@@ -89,6 +90,7 @@ class LocationManager extends Object with ChangeNotifierMixin {
}
/// Create a request for [objectId] on the current isolate.
+ @observable
String currentIsolateObjectLink(int objectId) {
var isolateId = currentIsolateId();
if (isolateId == LocationManager.InvalidIsolateId) {
@@ -98,6 +100,7 @@ class LocationManager extends Object with ChangeNotifierMixin {
}
/// Create a request for [cid] on the current isolate.
+ @observable
String currentIsolateClassLink(int cid) {
var isolateId = currentIsolateId();
if (isolateId == LocationManager.InvalidIsolateId) {
@@ -107,16 +110,19 @@ class LocationManager extends Object with ChangeNotifierMixin {
}
/// Create a request for [l] on [isolateId].
+ @observable
String relativeLink(int isolateId, String l) {
return '#/isolates/$isolateId/$l';
}
/// Create a request for [objectId] on [isolateId].
+ @observable
String objectLink(int isolateId, int objectId) {
return '#/isolates/$isolateId/objects/$objectId';
}
/// Create a request for [cid] on [isolateId].
+ @observable
String classLink(int isolateId, int cid) {
return '#/isolates/$isolateId/classes/$cid';
}

Powered by Google App Engine
This is Rietveld 408576698