| <head> |
| <link rel="import" href="breakpoint_list.html"> |
| <link rel="import" href="class_view.html"> |
| <link rel="import" href="code_view.html"> |
| <link rel="import" href="error_view.html"> |
| <link rel="import" href="field_view.html"> |
| <link rel="import" href="function_view.html"> |
| <link rel="import" href="instance_view.html"> |
| <link rel="import" href="isolate_list.html"> |
| <link rel="import" href="library_view.html"> |
| <link rel="import" href="observatory_element.html"> |
| <link rel="import" href="script_view.html"> |
| <link rel="import" href="source_view.html"> |
| <link rel="import" href="stack_trace.html"> |
| </head> |
| <polymer-element name="message-viewer" extends="observatory-element"> |
| <!-- |
| This is a big switch statement which instantiates the custom element |
| designated to display the message type. |
| --> |
| <template> |
| <!-- If the message type is an IsolateList --> |
| <template if="{{ messageType == 'IsolateList' }}"> |
| <isolate-list app="{{ app }}"></isolate-list> |
| </template> |
| <!-- If the message type is a StackTrace --> |
| <template if="{{ messageType == 'StackTrace' }}"> |
| <stack-trace app="{{ app }}" trace="{{ message }}"></stack-trace> |
| </template> |
| <template if="{{ messageType == 'BreakpointList' }}"> |
| <breakpoint-list app="{{ app }}" msg="{{ message }}"></breakpoint-list> |
| </template> |
| <!-- If the message type is a RequestError --> |
| <template if="{{ messageType == 'RequestError' }}"> |
| <error-view app="{{ app }}" error="{{ message['error'] }}"></error-view> |
| </template> |
| <template if="{{ messageType == 'Library' }}"> |
| <library-view app="{{ app }}" library="{{ message }}"></library-view> |
| </template> |
| <template if="{{ messageType == 'Class' }}"> |
| <class-view app="{{ app }}" cls="{{ message }}"></class-view> |
| </template> |
| <template if="{{ messageType == 'Field' }}"> |
| <field-view app="{{ app }}" field="{{ message }}"></field-view> |
| </template> |
| <template if="{{ messageType == 'Instance' }}"> |
| <instance-view app="{{ app }}" instance="{{ message }}"></instance-view> |
| </template> |
| <template if="{{ messageType == 'Array' }}"> |
| <instance-view app="{{ app }}" instance="{{ message }}"></instance-view> |
| </template> |
| <template if="{{ messageType == 'GrowableObjectArray' }}"> |
| <instance-view app="{{ app }}" instance="{{ message }}"></instance-view> |
| </template> |
| <template if="{{ messageType == 'String' }}"> |
| <instance-view app="{{ app }}" instance="{{ message }}"></instance-view> |
| </template> |
| <template if="{{ messageType == 'Bool' }}"> |
| <instance-view app="{{ app }}" instance="{{ message }}"></instance-view> |
| </template> |
| <template if="{{ messageType == 'Smi' }}"> |
| <instance-view app="{{ app }}" instance="{{ message }}"></instance-view> |
| </template> |
| <template if="{{ messageType == 'Function' }}"> |
| <function-view app="{{ app }}" function="{{ message }}"></function-view> |
| </template> |
| <template if="{{ messageType == 'Code' }}"> |
| <code-view app="{{ app }}" code="{{ message }}"></code-view> |
| </template> |
| <template if="{{ messageType == 'Script' }}"> |
| <script-view app="{{ app }}" script="{{ message }}"></script-view> |
| </template> |
| <!-- Add new views and message types in the future here. --> |
| </template> |
| <script type="application/dart" src="message_viewer.dart"></script> |
| </polymer-element> |