| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * This view displays network related log data and is specific fo ChromeOS. | 6 * This view displays network related log data and is specific fo ChromeOS. |
| 7 * We get log data from chrome by filtering system logs for network related | 7 * We get log data from chrome by filtering system logs for network related |
| 8 * keywords. Logs are not fetched until we actually need them. | 8 * keywords. Logs are not fetched until we actually need them. |
| 9 */ | 9 */ |
| 10 var LogsView = (function() { | 10 var LogsView = (function() { |
| 11 'use strict'; |
| 12 |
| 11 // IDs for special HTML elements in logs_view.html | 13 // IDs for special HTML elements in logs_view.html |
| 12 const MAIN_BOX_ID = 'logs-view-tab-content'; | 14 var MAIN_BOX_ID = 'logs-view-tab-content'; |
| 13 const TABLE_ID = 'logs-view-log-table'; | 15 var TABLE_ID = 'logs-view-log-table'; |
| 14 const GLOBAL_SHOW_BUTTON_ID = 'logs-view-global-show-btn'; | 16 var GLOBAL_SHOW_BUTTON_ID = 'logs-view-global-show-btn'; |
| 15 const GLOBAL_HIDE_BUTTON_ID = 'logs-view-global-hide-btn'; | 17 var GLOBAL_HIDE_BUTTON_ID = 'logs-view-global-hide-btn'; |
| 16 const REFRESH_LOGS_BUTTON_ID = 'logs-view-refresh-btn'; | 18 var REFRESH_LOGS_BUTTON_ID = 'logs-view-refresh-btn'; |
| 17 | 19 |
| 18 // Special classes (defined in logs_view.css). | 20 // Special classes (defined in logs_view.css). |
| 19 const LOG_ROW_COLLAPSED_CLASSNAME = 'logs-view-log-row-collapsed'; | 21 var LOG_ROW_COLLAPSED_CLASSNAME = 'logs-view-log-row-collapsed'; |
| 20 const LOG_ROW_EXPANDED_CLASSNAME = 'logs-view-log-row-expanded'; | 22 var LOG_ROW_EXPANDED_CLASSNAME = 'logs-view-log-row-expanded'; |
| 21 const LOG_CELL_TEXT_CLASSNAME = 'logs-view-log-cell-text'; | 23 var LOG_CELL_TEXT_CLASSNAME = 'logs-view-log-cell-text'; |
| 22 const LOG_CELL_LOG_CLASSNAME = 'logs-view-log-cell-log'; | 24 var LOG_CELL_LOG_CLASSNAME = 'logs-view-log-cell-log'; |
| 23 const LOG_TABLE_BUTTON_COLUMN_CLASSNAME = 'logs-view-log-table-button-column'; | 25 var LOG_TABLE_BUTTON_COLUMN_CLASSNAME = 'logs-view-log-table-button-column'; |
| 24 const LOG_BUTTON_CLASSNAME = 'logs-view-log-button'; | 26 var LOG_BUTTON_CLASSNAME = 'logs-view-log-button'; |
| 25 | 27 |
| 26 // We inherit from DivView. | 28 // We inherit from DivView. |
| 27 var superClass = DivView; | 29 var superClass = DivView; |
| 28 | 30 |
| 29 /** | 31 /** |
| 30 * @constructor | 32 * @constructor |
| 31 */ | 33 */ |
| 32 function LogsView() { | 34 function LogsView() { |
| 35 assertFirstConstructorCall(LogsView); |
| 36 |
| 33 // Call superclass's constructor. | 37 // Call superclass's constructor. |
| 34 superClass.call(this, MAIN_BOX_ID); | 38 superClass.call(this, MAIN_BOX_ID); |
| 35 | 39 |
| 36 var tableDiv = $(TABLE_ID); | 40 var tableDiv = $(TABLE_ID); |
| 37 this.rows = []; | 41 this.rows = []; |
| 38 this.populateTable(tableDiv, kLogFilterList); | 42 this.populateTable(tableDiv, LOG_FILTER_LIST); |
| 39 $(GLOBAL_SHOW_BUTTON_ID).addEventListener('click', | 43 $(GLOBAL_SHOW_BUTTON_ID).addEventListener('click', |
| 40 this.onGlobalChangeVisibleClick_.bind(this, true)); | 44 this.onGlobalChangeVisibleClick_.bind(this, true)); |
| 41 $(GLOBAL_HIDE_BUTTON_ID).addEventListener('click', | 45 $(GLOBAL_HIDE_BUTTON_ID).addEventListener('click', |
| 42 this.onGlobalChangeVisibleClick_.bind(this, false)); | 46 this.onGlobalChangeVisibleClick_.bind(this, false)); |
| 43 $(REFRESH_LOGS_BUTTON_ID).addEventListener('click', | 47 $(REFRESH_LOGS_BUTTON_ID).addEventListener('click', |
| 44 this.onLogsRefresh_.bind(this)); | 48 this.onLogsRefresh_.bind(this)); |
| 45 } | 49 } |
| 46 | 50 |
| 51 cr.addSingletonGetter(LogsView); |
| 52 |
| 47 /** | 53 /** |
| 48 * Contains log keys we are interested in. | 54 * Contains log keys we are interested in. |
| 49 */ | 55 */ |
| 50 const kLogFilterList = [ | 56 var LOG_FILTER_LIST = [ |
| 51 { | 57 { |
| 52 key:'syslog', | 58 key:'syslog', |
| 53 }, | 59 }, |
| 54 { | 60 { |
| 55 key:'ui_log', | 61 key:'ui_log', |
| 56 }, | 62 }, |
| 57 { | 63 { |
| 58 key:'chrome_system_log', | 64 key:'chrome_system_log', |
| 59 }, | 65 }, |
| 60 { | 66 { |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 116 row.expandButton = expandButton; | 122 row.expandButton = expandButton; |
| 117 row.logDiv = logDiv; | 123 row.logDiv = logDiv; |
| 118 row.logVisible = false; | 124 row.logVisible = false; |
| 119 this.rows.push(row); | 125 this.rows.push(row); |
| 120 | 126 |
| 121 return row; | 127 return row; |
| 122 }, | 128 }, |
| 123 | 129 |
| 124 /** | 130 /** |
| 125 * Initializes |tableDiv| to represent data from |logList| which should be | 131 * Initializes |tableDiv| to represent data from |logList| which should be |
| 126 * of type kLogFilterList. | 132 * of type LOG_FILTER_LIST. |
| 127 */ | 133 */ |
| 128 populateTable: function(tableDiv, logList) { | 134 populateTable: function(tableDiv, logList) { |
| 129 for (var i = 0; i < logList.length; i++) { | 135 for (var i = 0; i < logList.length; i++) { |
| 130 var logSource = this.createTableRow(logList[i].key); | 136 var logSource = this.createTableRow(logList[i].key); |
| 131 tableDiv.appendChild(logSource); | 137 tableDiv.appendChild(logSource); |
| 132 } | 138 } |
| 133 }, | 139 }, |
| 134 | 140 |
| 135 /** | 141 /** |
| 136 * Processes clicks on buttons that show or hide log contents in log row. | 142 * Processes clicks on buttons that show or hide log contents in log row. |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 196 // In hidden rows we just clear potential log text, so we know we have to | 202 // In hidden rows we just clear potential log text, so we know we have to |
| 197 // get new contents when we show the row next time. | 203 // get new contents when we show the row next time. |
| 198 for (row in hiddenLogRows) { | 204 for (row in hiddenLogRows) { |
| 199 hiddenLogRows[row].logDiv.textContent = ''; | 205 hiddenLogRows[row].logDiv.textContent = ''; |
| 200 } | 206 } |
| 201 } | 207 } |
| 202 }; | 208 }; |
| 203 | 209 |
| 204 return LogsView; | 210 return LogsView; |
| 205 })(); | 211 })(); |
| OLD | NEW |