Chromium Code Reviews| Index: runtime/bin/vmservice/client/lib/src/elements/io_view.dart |
| diff --git a/runtime/bin/vmservice/client/lib/src/elements/io_view.dart b/runtime/bin/vmservice/client/lib/src/elements/io_view.dart |
| index 0796775f8967da194b7edfa9dec7c8cc174fe882..bc5901478441fffe8dad1f4dee20550d9828f43e 100644 |
| --- a/runtime/bin/vmservice/client/lib/src/elements/io_view.dart |
| +++ b/runtime/bin/vmservice/client/lib/src/elements/io_view.dart |
| @@ -70,4 +70,55 @@ class IOHttpServerViewElement extends ObservatoryElement { |
| _updateTimer = null; |
| } |
| } |
| -} |
| +} |
| + |
| +@CustomTag('io-random-access-file-list-view') |
| +class IORandomAccessFileListViewElement extends ObservatoryElement { |
| + @published ServiceMap list; |
| + |
| + IORandomAccessFileListViewElement.created() : super.created(); |
| + |
| + void refresh(var done) { |
| + list.reload().whenComplete(done); |
| + } |
| +} |
| + |
| +@CustomTag('io-random-access-file-ref') |
| +class IORandomAccessFileRefElement extends ServiceRefElement { |
| + IORandomAccessFileRefElement.created() : super.created(); |
| +} |
| + |
| +@CustomTag('io-random-access-file-view') |
| +class IORandomAccessFileViewElement extends ObservatoryElement { |
| + // TODO(ajohnsen): Create a RandomAccessFile object. |
| + @published ServiceMap file; |
| + Timer _updateTimer; |
| + |
| + IORandomAccessFileViewElement.created() : super.created(); |
| + |
| + void refresh(var done) { |
| + file.reload().whenComplete(done); |
| + } |
| + |
| + void _updateFile() { |
|
Anders Johnsen
2014/05/25 17:59:23
Can we create a RefreshingObservatoryElement class
Cutch
2014/05/26 15:32:17
Yes. We'll clean this up once we have some more el
|
| + refresh(() { |
| + if (_updateTimer != null) { |
| + _updateTimer = new Timer(new Duration(seconds: 1), _updateFile); |
| + } |
| + }); |
| + } |
| + |
| + void enteredView() { |
| + super.enteredView(); |
| + // Start a timer to update the isolate summary once a second. |
| + _updateTimer = new Timer(new Duration(seconds: 1), _updateFile); |
| + } |
| + |
| + void leftView() { |
| + super.leftView(); |
| + if (_updateTimer != null) { |
| + _updateTimer.cancel(); |
| + _updateTimer = null; |
| + } |
| + } |
| +} |