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

Side by Side Diff: runtime/observatory/lib/src/app/page.dart

Issue 2180803002: Converted Observatory vm-connect element (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Renamed DumpRepository to CrashDumpRepository Created 4 years, 4 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 part of app; 5 part of app;
6 6
7 class IsolateNotFound implements Exception { 7 class IsolateNotFound implements Exception {
8 String isolateId; 8 String isolateId;
9 IsolateNotFound(this.isolateId); 9 IsolateNotFound(this.isolateId);
10 String toString() => "IsolateNotFound: $isolateId"; 10 String toString() => "IsolateNotFound: $isolateId";
11 } 11 }
12 12
13 /// A [Page] controls the user interface of Observatory. At any given time 13 /// A [Page] controls the user interface of Observatory. At any given time
14 /// one page will be the current page. Pages are registered at startup. 14 /// one page will be the current page. Pages are registered at startup.
15 /// When the user navigates within the application, each page is asked if it 15 /// When the user navigates within the application, each page is asked if it
16 /// can handle the current location, the first page to say yes, wins. 16 /// can handle the current location, the first page to say yes, wins.
17 abstract class Page extends Observable { 17 abstract class Page extends Observable {
18 final ObservatoryApplication app; 18 final ObservatoryApplication app;
19 final ObservableMap<String, String> internalArguments = 19 final ObservableMap<String, String> internalArguments =
20 new ObservableMap<String, String>(); 20 new ObservableMap<String, String>();
21 @observable ObservatoryElement element; 21 @observable HtmlElement element;
22 22
23 Page(this.app); 23 Page(this.app);
24 24
25 /// Called when the page is installed, this callback must initialize 25 /// Called when the page is installed, this callback must initialize
26 /// [element]. 26 /// [element].
27 void onInstall(); 27 void onInstall();
28 28
29 /// Called when the page is uninstalled, this callback must clear 29 /// Called when the page is uninstalled, this callback must clear
30 /// [element]. 30 /// [element].
31 void onUninstall() { 31 void onUninstall() {
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after
363 363
364 // TODO(turnidge): How to test this page? 364 // TODO(turnidge): How to test this page?
365 bool canVisit(Uri uri) => uri.path == 'error'; 365 bool canVisit(Uri uri) => uri.path == 'error';
366 } 366 }
367 367
368 class VMConnectPage extends Page { 368 class VMConnectPage extends Page {
369 VMConnectPage(app) : super(app); 369 VMConnectPage(app) : super(app);
370 370
371 void onInstall() { 371 void onInstall() {
372 if (element == null) { 372 if (element == null) {
373 element = new Element.tag('vm-connect'); 373 element = new VMConnectElement(
374 ObservatoryApplication.app.targets,
375 new CrashDumpRepositoryMock(
376 load: ObservatoryApplication.app.loadCrashDump),
377 ObservatoryApplication.app.notifications,
378 queue: ObservatoryApplication.app.queue);
374 } 379 }
375 assert(element != null); 380 assert(element != null);
376 } 381 }
377 382
378 void _visit(Uri uri) { 383 void _visit(Uri uri) {
379 assert(element != null); 384 assert(element != null);
380 assert(canVisit(uri)); 385 assert(canVisit(uri));
381 } 386 }
382 387
383 bool canVisit(Uri uri) => uri.path == 'vm-connect'; 388 bool canVisit(Uri uri) => uri.path == 'vm-connect';
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
471 assert(element != null); 476 assert(element != null);
472 } 477 }
473 478
474 void _visit(Uri uri) { 479 void _visit(Uri uri) {
475 assert(element != null); 480 assert(element != null);
476 assert(canVisit(uri)); 481 assert(canVisit(uri));
477 } 482 }
478 483
479 bool canVisit(Uri uri) => uri.path == 'timeline'; 484 bool canVisit(Uri uri) => uri.path == 'timeline';
480 } 485 }
OLDNEW
« no previous file with comments | « runtime/observatory/lib/src/app/application.dart ('k') | runtime/observatory/lib/src/app/target_manager.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698