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

Unified Diff: chrome/browser/resources/chromeos/network_ui/network_ui.js

Issue 260083007: Replace chrome://network implementation with networkConfig API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/chromeos/network_ui/network_ui.js
diff --git a/chrome/browser/resources/chromeos/network.js b/chrome/browser/resources/chromeos/network_ui/network_ui.js
similarity index 75%
rename from chrome/browser/resources/chromeos/network.js
rename to chrome/browser/resources/chromeos/network_ui/network_ui.js
index 4f952bc1d55c77d75aae979282600fd17d9bf715..afd65692dd2f96b8c24cca522783a33c8efd3bad 100644
--- a/chrome/browser/resources/chromeos/network.js
+++ b/chrome/browser/resources/chromeos/network_ui/network_ui.js
@@ -2,20 +2,35 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-var NetworkUI = function() {
+var NetworkUI = (function() {
+ 'use strict';
+
// Properties to display in the network state table. Each entry can be either
// a single state field or an array of state fields. If more than one is
// specified then the first non empty value is used.
var NETWORK_STATE_FIELDS = [
- 'Name', 'Type', 'State', 'Profile', 'Connectable',
michaelpg 2014/04/29 19:51:00 Why remove Profile?
stevenjb 2014/04/29 21:44:03 Profile isn't applicable to visible networks, only
- 'Error', 'Security',
- ['Cellular.NetworkTechnology', 'EAP.EAP'],
- 'Cellular.ActivationState', 'Cellular.RoamingState',
- 'Cellular.OutOfCredits', 'Strength'
+ networkConfig.Service.ServicePath,
+ networkConfig.Service.GUID,
+ networkConfig.Service.Name,
+ networkConfig.Service.Type,
+ networkConfig.Service.ConnectionState,
+ networkConfig.Service.ErrorState,
+ networkConfig.Service.WiFi.Security,
+ [networkConfig.Service.Cellular.NetworkTechnology,
+ networkConfig.Service.EAP.EAP],
+ networkConfig.Service.Cellular.ActivationState,
+ networkConfig.Service.Cellular.RoamingState,
+ networkConfig.Service.Cellular.OutOfCredits,
+ networkConfig.Service.WiFi.SignalStrength
];
var FAVORITE_STATE_FIELDS = [
- 'Name', 'Type', 'Profile', 'onc_source'
+ networkConfig.Service.ServicePath,
+ networkConfig.Service.GUID,
+ networkConfig.Service.Name,
+ networkConfig.Service.Type,
+ networkConfig.Service.Profile,
+ networkConfig.Service.OncSource
];
var LOG_LEVEL_CLASSNAME = {
@@ -128,25 +143,28 @@ var NetworkUI = function() {
* Create a row in the network state table.
*
* @param {string} stateFields The state fields to use for the row.
- * @param {string} path The network or favorite path.
* @param {dictionary} state Property values for the network or favorite.
* @return {DOMElement} The created tr element that contains the network
* state information.
*/
- var createStateTableRow = function(stateFields, path, state) {
+ var createStateTableRow = function(stateFields, state) {
var row = document.createElement('tr');
row.className = 'state-table-row';
row.appendChild(createStateTableExpandButton(state));
- row.appendChild(createStateTableCell(path));
- var guid = state['GUID'];
- if (guid)
- guid = guid.slice(1, 9);
- row.appendChild(createStateTableCell(guid));
for (var i = 0; i < stateFields.length; ++i) {
var field = stateFields[i];
var value = '';
if (typeof field == 'string') {
- value = state[field];
+ var dot = field.indexOf('.');
+ if (dot > 0) {
+ var field1 = field.substring(0, dot);
+ var field2 = field.substring(dot + 1);
+ var fieldobj = state[field1];
+ if (fieldobj)
+ value = fieldobj[field2];
+ } else {
+ value = state[field];
+ }
} else {
for (var j = 0; j < field.length; ++j) {
value = state[field[j]];
@@ -154,6 +172,8 @@ var NetworkUI = function() {
break;
}
}
+ if (field == networkConfig.Service.GUID)
+ value = value.slice(1, 9);
row.appendChild(createStateTableCell(value));
}
return row;
@@ -171,22 +191,37 @@ var NetworkUI = function() {
var oldRows = table.querySelectorAll('.state-table-row');
for (var i = 0; i < oldRows.length; ++i)
table.removeChild(oldRows[i]);
- for (var path in states)
- table.appendChild(createStateTableRow(stateFields, path, states[path]));
+ for (var s in states)
+ table.appendChild(createStateTableRow(stateFields, states[s]));
+ };
+
+ /**
+ * This callback function is triggered when the network log is received.
+ *
+ * @param {dictionary} data A JSON structure of event log entries.
+ */
+ var getNetworkLogCallback = function(data) {
+ createEventLog(JSON.parse(data));
+ };
+
+ /**
+ * This callback function is triggered when visible networks are received.
+ *
+ * @param {dictionary} data A list of network state information for each
+ * visible network.
+ */
+ var onVisibleNetworksReceived = function(data) {
+ createStateTable('network-state-table', NETWORK_STATE_FIELDS, data);
};
/**
- * This callback function is triggered when the data is received.
+ * This callback function is triggered when favorite networks are received.
*
- * @param {dictionary} data A dictionary that contains network state
- * information.
+ * @param {dictionary} data A list of network state information for each
+ * favorite network.
*/
- var onNetworkInfoReceived = function(data) {
- createEventLog(JSON.parse(data.networkEventLog));
- createStateTable(
- 'network-state-table', NETWORK_STATE_FIELDS, data.networkStates);
- createStateTable(
- 'favorite-state-table', FAVORITE_STATE_FIELDS, data.favoriteStates);
+ var onFavoriteNetworksReceived = function(data) {
+ createStateTable('favorite-state-table', FAVORITE_STATE_FIELDS, data);
};
/**
@@ -234,7 +269,11 @@ var NetworkUI = function() {
* Sends a refresh request.
michaelpg 2014/04/29 19:51:00 Update comment (and maybe function name)
stevenjb 2014/05/01 01:45:14 Done.
*/
var sendRefresh = function() {
- chrome.send('requestNetworkInfo');
+ chrome.send('NetworkUI.getNetworkLog');
+ networkConfig.getVisibleNetworks(networkConfig.Type.All,
+ onVisibleNetworksReceived);
+ networkConfig.getFavoriteNetworks(networkConfig.Type.All,
+ onFavoriteNetworksReceived);
};
/**
@@ -268,6 +307,6 @@ var NetworkUI = function() {
});
return {
- onNetworkInfoReceived: onNetworkInfoReceived
+ getNetworkLogCallback: getNetworkLogCallback
};
-}();
+})();

Powered by Google App Engine
This is Rietveld 408576698