OLD | NEW |
| (Empty) |
1 <link rel="import" href="../../../../packages/polymer/polymer.html"> | |
2 <link rel="import" href="nav_bar.html"> | |
3 <link rel="import" href="observatory_element.html"> | |
4 <link rel="import" href="service_ref.html"> | |
5 | |
6 <polymer-element name="io-view" extends="observatory-element"> | |
7 <template> | |
8 <link rel="stylesheet" href="css/shared.css"> | |
9 | |
10 <nav-bar> | |
11 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
12 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
13 <nav-control></nav-control> | |
14 </nav-bar> | |
15 | |
16 <div class="content"> | |
17 <h1>dart:io</h1> | |
18 | |
19 <br> | |
20 | |
21 <ul class="list-group"> | |
22 <li class="list-group-item"> | |
23 <a on-click="{{ goto }}" _href="{{gotoLink(io.isolate.relativeLink('io
/http/servers'))}}">HTTP Servers</a> | |
24 </li> | |
25 </ul> | |
26 | |
27 <br> | |
28 | |
29 <ul class="list-group"> | |
30 <li class="list-group-item"> | |
31 <a on-click="{{ goto }}" _href="{{gotoLink(io.isolate.relativeLink('io
/sockets'))}}">Sockets</a> | |
32 </li> | |
33 </ul> | |
34 | |
35 <br> | |
36 | |
37 <ul class="list-group"> | |
38 <li class="list-group-item"> | |
39 <a on-click="{{ goto }}" _href="{{gotoLink(io.isolate.relativeLink('io
/websockets'))}}">WebSockets</a> | |
40 </li> | |
41 </ul> | |
42 | |
43 <br> | |
44 | |
45 <ul class="list-group"> | |
46 <li class="list-group-item"> | |
47 <a on-click="{{ goto }}" _href="{{gotoLink(io.isolate.relativeLink('io
/file/randomaccessfiles'))}}">Random Access Files</a> | |
48 </li> | |
49 </ul> | |
50 | |
51 <br> | |
52 | |
53 <ul class="list-group"> | |
54 <li class="list-group-item"> | |
55 <a on-click="{{ goto }}" _href="{{gotoLink(io.isolate.relativeLink('io
/processes'))}}">Processes</a> | |
56 </li> | |
57 </ul> | |
58 | |
59 </div> | |
60 <br> | |
61 <hr> | |
62 </template> | |
63 </polymer-element> | |
64 | |
65 <polymer-element name="io-ref" extends="service-ref"> | |
66 <template> | |
67 <link rel="stylesheet" href="css/shared.css"> | |
68 <template if="{{ ref.type == 'Socket' }}"> | |
69 <io-socket-ref ref="{{ ref }}"></io-socket-ref> | |
70 </template> | |
71 <template if="{{ ref.type == 'HttpServerConnection' }}"> | |
72 <io-http-server-connection-ref ref="{{ ref }}"></io-http-server-connection
-ref> | |
73 </template> | |
74 <template if="{{ ref.type == 'HttpServer' }}"> | |
75 <io-http-server-ref ref="{{ ref }}"></io-http-server-ref> | |
76 </template> | |
77 <template if="{{ ref.type == 'WebSocket' }}"> | |
78 <io-web-socket-ref ref="{{ ref }}"></io-web-socket-ref> | |
79 </template> | |
80 <template if="{{ ref.type == 'Process' }}"> | |
81 <io-process-ref ref="{{ ref }}"></io-process-ref> | |
82 </template> | |
83 </template> | |
84 </polymer-element> | |
85 | |
86 <polymer-element name="io-http-server-list-view" extends="observatory-element"> | |
87 <template> | |
88 <link rel="stylesheet" href="css/shared.css"> | |
89 | |
90 <nav-bar> | |
91 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
92 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
93 </nav-bar> | |
94 | |
95 <div class="content"> | |
96 <h1>HttpServers</h1> | |
97 | |
98 <br> | |
99 | |
100 <ul class="list-group"> | |
101 <template repeat="{{ httpServer in list['members'] }}"> | |
102 <li class="list-group-item"> | |
103 <io-http-server-ref ref="{{ httpServer }}"></io-http-server-ref> | |
104 </li> | |
105 </template> | |
106 </ul> | |
107 </div> | |
108 <br> | |
109 <hr> | |
110 </template> | |
111 </polymer-element> | |
112 | |
113 <polymer-element name="io-http-server-ref" extends="service-ref"> | |
114 <template> | |
115 <link rel="stylesheet" href="css/shared.css"> | |
116 <a on-click="{{ goto }}" _href="{{ url }}">{{ name }}</a> | |
117 </template> | |
118 </polymer-element> | |
119 | |
120 <polymer-element name="io-http-server-view" extends="observatory-element"> | |
121 <template> | |
122 <link rel="stylesheet" href="css/shared.css"> | |
123 | |
124 <nav-bar> | |
125 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
126 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
127 </nav-bar> | |
128 | |
129 <div class="content"> | |
130 <h1>HttpServer</h1> | |
131 | |
132 <br> | |
133 | |
134 <div class="memberList"> | |
135 <div class="memberItem"> | |
136 <div class="memberName">Socket</div> | |
137 <div class="memberValue"><io-socket-ref ref="{{ httpServer['socket'] }
}"></io-socket-ref></div> | |
138 </div> | |
139 <div class="memberItem"> | |
140 <div class="memberName">Address</div> | |
141 <div class="memberValue">{{ httpServer['address'] }}</div> | |
142 </div> | |
143 <div class="memberItem"> | |
144 <div class="memberName">Port</div> | |
145 <div class="memberValue">{{ httpServer['port'] }}</div> | |
146 </div> | |
147 <div class="memberItem"> | |
148 <div class="memberName">Active connections</div> | |
149 <ul class="list-group"> | |
150 <template repeat="{{ connection in httpServer['active'] }}"> | |
151 <li class="list-group-item"> | |
152 <io-http-server-connection-ref ref="{{ connection }}"></io-http-
server-connection-ref> | |
153 </li> | |
154 </template> | |
155 </ul> | |
156 </div> | |
157 <div class="memberItem"> | |
158 <div class="memberName">Idle connections</div> | |
159 <ul class="list-group"> | |
160 <template repeat="{{ connection in httpServer['idle'] }}"> | |
161 <li class="list-group-item"> | |
162 <io-http-server-connection-ref ref="{{ connection }}"></io-http-
server-connection-ref> | |
163 </li> | |
164 </template> | |
165 </ul> | |
166 </div> | |
167 </div> | |
168 </div> | |
169 <br> | |
170 <hr> | |
171 </template> | |
172 </polymer-element> | |
173 | |
174 <polymer-element name="io-http-server-connection-ref" extends="service-ref"> | |
175 <template> | |
176 <link rel="stylesheet" href="css/shared.css"> | |
177 <a _href="{{ url }}">{{ name }}</a> | |
178 </template> | |
179 </polymer-element> | |
180 | |
181 <polymer-element name="io-http-server-connection-view" extends="observatory-elem
ent"> | |
182 <template> | |
183 <link rel="stylesheet" href="css/shared.css"> | |
184 | |
185 <nav-bar> | |
186 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
187 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
188 </nav-bar> | |
189 | |
190 <div class="content"> | |
191 <h1>HttpConnection</h1> | |
192 | |
193 <br> | |
194 | |
195 <div class="memberList"> | |
196 <div class="memberItem"> | |
197 <div class="memberName">Socket</div> | |
198 <div class="memberValue"><io-socket-ref ref="{{ connection['socket'] }
}"></io-socket-ref></div> | |
199 </div> | |
200 <div class="memberItem"> | |
201 <div class="memberName">State</div> | |
202 <div class="memberValue">{{ connection['state'] }}</div> | |
203 </div> | |
204 <div class="memberItem"> | |
205 <div class="memberName">Server</div> | |
206 <div class="memberValue"><io-http-server-ref ref="{{ connection['serve
r'] }}"></io-http-server-ref></div> | |
207 </div> | |
208 </div> | |
209 </div> | |
210 <br> | |
211 <hr> | |
212 </template> | |
213 </polymer-element> | |
214 | |
215 <polymer-element name="io-socket-ref" extends="service-ref"> | |
216 <template> | |
217 <link rel="stylesheet" href="css/shared.css"> | |
218 <a on-click="{{ goto }}" _href="{{ url }}">{{ name }}</a> | |
219 </template> | |
220 </polymer-element> | |
221 | |
222 <polymer-element name="io-socket-list-view" extends="observatory-element"> | |
223 <template> | |
224 <link rel="stylesheet" href="css/shared.css"> | |
225 | |
226 <nav-bar> | |
227 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
228 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
229 </nav-bar> | |
230 | |
231 <div class="content"> | |
232 <h1>Sockets</h1> | |
233 | |
234 <br> | |
235 | |
236 <ul class="list-group"> | |
237 <template repeat="{{ socket in list['members'] }}"> | |
238 <li class="list-group-item"> | |
239 <io-socket-ref ref="{{ socket }}"></io-socket-ref> | |
240 </li> | |
241 </template> | |
242 </ul> | |
243 </div> | |
244 <br> | |
245 <hr> | |
246 </template> | |
247 </polymer-element> | |
248 | |
249 <polymer-element name="io-socket-view" extends="observatory-element"> | |
250 <template> | |
251 <link rel="stylesheet" href="css/shared.css"> | |
252 | |
253 <nav-bar> | |
254 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
255 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
256 </nav-bar> | |
257 | |
258 <div class="content"> | |
259 <!-- Pipe Socket --> | |
260 <template if="{{ socket.isPipe }}"> | |
261 <h1>Pipe Socket</h1> | |
262 <div class="memberList"> | |
263 <template if="{{ socket.socketOwner != null }}"> | |
264 <div class="memberItem"> | |
265 <div class="memberName">Owner</div> | |
266 <div class="memberValue"><io-ref ref="{{ socket.socketOwner }}"></
io-ref></div> | |
267 </div> | |
268 </template> | |
269 <div class="memberItem"> | |
270 <div class="memberName">File descriptor</div> | |
271 <div class="memberValue">{{ socket.fd }}</div> | |
272 </div> | |
273 <div class="memberItem"> | |
274 <div class="memberName">Read Closed</div> | |
275 <div class="memberValue">{{ socket.readClosed }}</div> | |
276 </div> | |
277 <div class="memberItem"> | |
278 <div class="memberName">Write Closed</div> | |
279 <div class="memberValue">{{ socket.writeClosed }}</div> | |
280 </div> | |
281 <div class="memberItem"> | |
282 <div class="memberName">Closing</div> | |
283 <div class="memberValue">{{ socket.closing }}</div> | |
284 </div> | |
285 </div> | |
286 </template> | |
287 <!-- Network Socket --> | |
288 <template if="{{ !socket.isPipe }}"> | |
289 <h1>Network Socket</h1> | |
290 <div class="memberList"> | |
291 <template if="{{ socket.socketOwner != null }}"> | |
292 <div class="memberItem"> | |
293 <div class="memberName">Owner</div> | |
294 <div class="memberValue"><io-ref ref="{{ socket.socketOwner }}"></
io-ref></div> | |
295 </div> | |
296 </template> | |
297 <div class="memberItem"> | |
298 <div class="memberName">Local Address</div> | |
299 <div class="memberValue">{{ socket.localAddress }}</div> | |
300 </div> | |
301 <div class="memberItem"> | |
302 <div class="memberName">Local Port</div> | |
303 <div class="memberValue">{{ socket.localPort }}</div> | |
304 </div> | |
305 <div class="memberItem"> | |
306 <div class="memberName">Remote Address</div> | |
307 <div class="memberValue">{{ socket.remoteAddress }}</div> | |
308 </div> | |
309 <div class="memberItem"> | |
310 <div class="memberName">Remote Port</div> | |
311 <div class="memberValue">{{ socket.remotePort }}</div> | |
312 </div> | |
313 <div class="memberItem"> | |
314 <div class="memberName">File descriptor</div> | |
315 <div class="memberValue">{{ socket.fd }}</div> | |
316 </div> | |
317 <div class="memberItem"> | |
318 <div class="memberName">Read Closed</div> | |
319 <div class="memberValue">{{ socket.readClosed }}</div> | |
320 </div> | |
321 <div class="memberItem"> | |
322 <div class="memberName">Write Closed</div> | |
323 <div class="memberValue">{{ socket.writeClosed }}</div> | |
324 </div> | |
325 <div class="memberItem"> | |
326 <div class="memberName">Closing</div> | |
327 <div class="memberValue">{{ socket.closing }}</div> | |
328 </div> | |
329 <div class="memberItem"> | |
330 <div class="memberName">Listening</div> | |
331 <div class="memberValue">{{ socket.listening }}</div> | |
332 </div> | |
333 <div class="memberItem"> | |
334 <div class="memberName">Protocol</div> | |
335 <div class="memberValue">{{ socket.protocol }}</div> | |
336 </div> | |
337 </div> | |
338 </template> | |
339 </div> | |
340 <br> | |
341 <hr> | |
342 </template> | |
343 </polymer-element> | |
344 | |
345 <polymer-element name="io-web-socket-ref" extends="service-ref"> | |
346 <template> | |
347 <link rel="stylesheet" href="css/shared.css"> | |
348 <a on-click="{{ goto }}" _href="{{ url }}">{{ name }}</a> | |
349 </template> | |
350 </polymer-element> | |
351 | |
352 <polymer-element name="io-web-socket-list-view" extends="observatory-element"> | |
353 <template> | |
354 <link rel="stylesheet" href="css/shared.css"> | |
355 | |
356 <nav-bar> | |
357 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
358 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
359 </nav-bar> | |
360 | |
361 <div class="content"> | |
362 <h1>WebSockets</h1> | |
363 | |
364 <br> | |
365 | |
366 <ul class="list-group"> | |
367 <template repeat="{{ webSocket in list['members'] }}"> | |
368 <li class="list-group-item"> | |
369 <io-web-socket-ref ref="{{ webSocket }}"></io-web-socket-ref> | |
370 </li> | |
371 </template> | |
372 </ul> | |
373 </div> | |
374 <br> | |
375 <hr> | |
376 </template> | |
377 </polymer-element> | |
378 | |
379 <polymer-element name="io-web-socket-view" extends="observatory-element"> | |
380 <template> | |
381 <link rel="stylesheet" href="css/shared.css"> | |
382 | |
383 <nav-bar> | |
384 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
385 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
386 </nav-bar> | |
387 | |
388 <div class="content"> | |
389 <h1>WebSocket</h1> | |
390 | |
391 <br> | |
392 | |
393 <div class="memberList"> | |
394 <div class="memberItem"> | |
395 <div class="memberName">Socket</div> | |
396 <div class="memberValue"><io-socket-ref ref="{{ webSocket['socket'] }}
"></io-socket-ref></div> | |
397 </div> | |
398 </div> | |
399 </div> | |
400 <br> | |
401 <hr> | |
402 </template> | |
403 </polymer-element> | |
404 | |
405 <polymer-element name="io-random-access-file-ref" extends="service-ref"> | |
406 <template> | |
407 <link rel="stylesheet" href="css/shared.css"> | |
408 <a on-click="{{ goto }}" _href="{{ url }}">{{ name }}</a> | |
409 </template> | |
410 </polymer-element> | |
411 | |
412 <polymer-element name="io-random-access-file-list-view" extends="observatory-ele
ment"> | |
413 <template> | |
414 <link rel="stylesheet" href="css/shared.css"> | |
415 | |
416 <nav-bar> | |
417 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
418 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
419 </nav-bar> | |
420 | |
421 <div class="content"> | |
422 <h1>Random Access Files</h1> | |
423 | |
424 <br> | |
425 | |
426 <ul class="list-group"> | |
427 <template repeat="{{ file in list['members'] }}"> | |
428 <li class="list-group-item"> | |
429 <io-random-access-file-ref ref="{{ file }}"></io-random-access-file-
ref> | |
430 </li> | |
431 </template> | |
432 </ul> | |
433 </div> | |
434 <br> | |
435 <hr> | |
436 </template> | |
437 </polymer-element> | |
438 | |
439 <polymer-element name="io-random-access-file-view" extends="observatory-element"
> | |
440 <template> | |
441 <link rel="stylesheet" href="css/shared.css"> | |
442 | |
443 <nav-bar> | |
444 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
445 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
446 </nav-bar> | |
447 | |
448 <div class="content"> | |
449 <h1>Random Access File</h1> | |
450 | |
451 <br> | |
452 | |
453 <div class="memberList"> | |
454 <div class="memberItem"> | |
455 <div class="memberName">Path</div> | |
456 <div class="memberValue">{{ file['name'] }}</div> | |
457 </div> | |
458 <div class="memberItem"> | |
459 <div class="memberName">Pending Operation</div> | |
460 <div class="memberValue">{{ file['asyncDispatched'] }}</div> | |
461 </div> | |
462 <div class="memberItem"> | |
463 <div class="memberName">File Descriptor</div> | |
464 <div class="memberValue">{{ file['fd'] }}</div> | |
465 </div> | |
466 </div> | |
467 </div> | |
468 <br> | |
469 <hr> | |
470 </template> | |
471 </polymer-element> | |
472 | |
473 <polymer-element name="io-process-list-view" extends="observatory-element"> | |
474 <template> | |
475 <link rel="stylesheet" href="css/shared.css"> | |
476 | |
477 <nav-bar> | |
478 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
479 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
480 </nav-bar> | |
481 | |
482 <div class="content"> | |
483 <h1>Processes</h1> | |
484 | |
485 <br> | |
486 | |
487 <ul class="list-group"> | |
488 <template repeat="{{ process in list['members'] }}"> | |
489 <li class="list-group-item"> | |
490 <io-process-ref ref="{{ process }}"></io-process-ref> | |
491 </li> | |
492 </template> | |
493 </ul> | |
494 </div> | |
495 <br> | |
496 <hr> | |
497 </template> | |
498 </polymer-element> | |
499 | |
500 <polymer-element name="io-process-ref" extends="service-ref"> | |
501 <template> | |
502 <link rel="stylesheet" href="css/shared.css"> | |
503 <template if="{{ small }}"> | |
504 <a on-click="{{ goto }}" _href="{{ url }}">{{ name }}</a> | |
505 </template> | |
506 <template if="{{ !small }}"> | |
507 <a on-click="{{ goto }}" _href="{{ url }}">({{ ref['pid'] }}) {{ name }} {
{ ref['arguments'] }}</a> | |
508 </template> | |
509 </template> | |
510 </polymer-element> | |
511 | |
512 <polymer-element name="io-process-view" extends="observatory-element"> | |
513 <template> | |
514 <link rel="stylesheet" href="css/shared.css"> | |
515 | |
516 <nav-bar> | |
517 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
518 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
519 </nav-bar> | |
520 | |
521 <div class="content"> | |
522 <h1>Process</h1> | |
523 | |
524 <br> | |
525 | |
526 <div class="memberList"> | |
527 <div class="memberItem"> | |
528 <div class="memberName">Path</div> | |
529 <div class="memberValue">{{ process['name'] }}</div> | |
530 </div> | |
531 <div class="memberItem"> | |
532 <div class="memberName">Pid</div> | |
533 <div class="memberValue">{{ process['pid'] }}</div> | |
534 </div> | |
535 <div class="memberItem"> | |
536 <div class="memberName">Arguments</div> | |
537 <div class="memberValue">{{ process['arguments'] }}</div> | |
538 </div> | |
539 <div class="memberItem"> | |
540 <div class="memberName">Started</div> | |
541 <div class="memberValue">{{ process['started'] }}</div> | |
542 </div> | |
543 <div class="memberItem"> | |
544 <div class="memberName">Working Directory</div> | |
545 <div class="memberValue">{{ process['workingDirectory'] }}</div> | |
546 </div> | |
547 <template if="{{ process['stdin'] != null }}"> | |
548 <div class="memberItem"> | |
549 <div class="memberName">stdin</div> | |
550 <div class="memberValue"> | |
551 <io-socket-ref ref="{{ process['stdin'] }}"></io-socket-ref> | |
552 </div> | |
553 </div> | |
554 </template> | |
555 <template if="{{ process['stdout'] != null }}"> | |
556 <div class="memberItem"> | |
557 <div class="memberName">stdout</div> | |
558 <div class="memberValue"> | |
559 <io-socket-ref ref="{{ process['stdout'] }}"></io-socket-ref> | |
560 </div> | |
561 </div> | |
562 </template> | |
563 <template if="{{ process['stderr'] != null }}"> | |
564 <div class="memberItem"> | |
565 <div class="memberName">stderr</div> | |
566 <div class="memberValue"> | |
567 <io-socket-ref ref="{{ process['stderr'] }}"></io-socket-ref> | |
568 </div> | |
569 </div> | |
570 </template> | |
571 </div> | |
572 | |
573 <br> | |
574 | |
575 <h2>Environment</h2> | |
576 <div class="well"> | |
577 <div class="monospace break-wrap"> | |
578 <template repeat="{{ variable in process['environment'] }}"> | |
579 {{ variable }} | |
580 <br> | |
581 </template> | |
582 </div> | |
583 </div> | |
584 </div> | |
585 <br> | |
586 <hr> | |
587 </template> | |
588 </polymer-element> | |
589 | |
590 <script type="application/dart" src="io_view.dart"></script> | |
OLD | NEW |