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

Side by Side Diff: runtime/bin/vmservice/client/lib/src/elements/observatory_element.dart

Issue 206213004: Add a VM page to the observatory. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 9 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 observatory_element; 5 library observatory_element;
6 6
7 import 'dart:math'; 7 import 'dart:math';
8 import 'package:polymer/polymer.dart'; 8 import 'package:polymer/polymer.dart';
9 9
10 /// Base class for all Observatory custom elements. 10 /// Base class for all Observatory custom elements.
(...skipping 20 matching lines...) Expand all
31 while (pad > 1) { 31 while (pad > 1) {
32 int pow10 = pow(10, pad - 1); 32 int pow10 = pow(10, pad - 1);
33 if (value < pow10) { 33 if (value < pow10) {
34 prefix = prefix + "0"; 34 prefix = prefix + "0";
35 } 35 }
36 pad--; 36 pad--;
37 } 37 }
38 return "${prefix}${value}"; 38 return "${prefix}${value}";
39 } 39 }
40 40
41 String formatTime(double time) { 41 String formatTimePrecise(double time) {
42 if (time == null) { 42 if (time == null) {
43 return "-"; 43 return "-";
44 } 44 }
45 const millisPerHour = 60 * 60 * 1000; 45 const millisPerHour = 60 * 60 * 1000;
46 const millisPerMinute = 60 * 1000; 46 const millisPerMinute = 60 * 1000;
47 const millisPerSecond = 1000; 47 const millisPerSecond = 1000;
48 48
49 var millis = (time * millisPerSecond).round(); 49 var millis = (time * millisPerSecond).round();
50 50
51 var hours = millis ~/ millisPerHour; 51 var hours = millis ~/ millisPerHour;
52 millis = millis % millisPerHour; 52 millis = millis % millisPerHour;
53 53
54 var minutes = millis ~/ millisPerMinute; 54 var minutes = millis ~/ millisPerMinute;
55 millis = millis % millisPerMinute; 55 millis = millis % millisPerMinute;
56 56
57 var seconds = millis ~/ millisPerSecond; 57 var seconds = millis ~/ millisPerSecond;
58 millis = millis % millisPerSecond; 58 millis = millis % millisPerSecond;
59 59
60 return ("${_zeroPad(hours,2)}" 60 return ("${_zeroPad(hours,2)}"
61 ":${_zeroPad(minutes,2)}" 61 ":${_zeroPad(minutes,2)}"
62 ":${_zeroPad(seconds,2)}" 62 ":${_zeroPad(seconds,2)}"
63 ".${_zeroPad(millis,3)}"); 63 ".${_zeroPad(millis,3)}");
64 64
65 } 65 }
66 66
67 String formatTime(double time) {
68 if (time == null) {
69 return "-";
70 }
71 const millisPerHour = 60 * 60 * 1000;
72 const millisPerMinute = 60 * 1000;
73 const millisPerSecond = 1000;
74
75 var millis = (time * millisPerSecond).round();
76
77 var hours = millis ~/ millisPerHour;
78 millis = millis % millisPerHour;
79
80 var minutes = millis ~/ millisPerMinute;
81 millis = millis % millisPerMinute;
82
83 var seconds = millis ~/ millisPerSecond;
84
85 StringBuffer out = new StringBuffer();
86 if (hours != 0) {
87 return '${hours}h ${minutes}m ${seconds}s';
88 }
89 if (minutes != 0) {
90 return '${minutes}m ${seconds}s';
91 }
92 return '${seconds}s';
93 }
94
67 String formatSeconds(double x) { 95 String formatSeconds(double x) {
68 return x.toStringAsFixed(2); 96 return x.toStringAsFixed(2);
69 } 97 }
70 98
71 99
72 String formatSize(int bytes) { 100 String formatSize(int bytes) {
73 const int bytesPerKB = 1024; 101 const int bytesPerKB = 1024;
74 const int bytesPerMB = 1024 * bytesPerKB; 102 const int bytesPerMB = 1024 * bytesPerKB;
75 const int bytesPerGB = 1024 * bytesPerMB; 103 const int bytesPerGB = 1024 * bytesPerMB;
76 const int bytesPerTB = 1024 * bytesPerGB; 104 const int bytesPerTB = 1024 * bytesPerGB;
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 'Bool', 169 'Bool',
142 'String', 170 'String',
143 'Closure', 171 'Closure',
144 'Double', 172 'Double',
145 'Instance', 173 'Instance',
146 'GrowableObjectArray', 174 'GrowableObjectArray',
147 'Array', 175 'Array',
148 'Error'].contains(type)); 176 'Error'].contains(type));
149 } 177 }
150 } 178 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698