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

Unified Diff: chrome/browser/ui/webui/chromeos/network_ui.cc

Issue 260083007: Replace chrome://network implementation with networkConfig API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Feedback 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/ui/webui/chromeos/network_ui.cc
diff --git a/chrome/browser/ui/webui/chromeos/network_ui.cc b/chrome/browser/ui/webui/chromeos/network_ui.cc
index 7c3170cbb113e768b2474abb7a9908a667772c9b..944babdeeb17da15c743bbc5a0fabf2156315b04 100644
--- a/chrome/browser/ui/webui/chromeos/network_ui.cc
+++ b/chrome/browser/ui/webui/chromeos/network_ui.cc
@@ -8,14 +8,11 @@
#include "base/bind.h"
#include "base/bind_helpers.h"
-#include "base/json/json_string_value_serializer.h"
#include "base/values.h"
-#include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/ui/webui/chromeos/network_config_message_handler.h"
#include "chrome/common/url_constants.h"
-#include "chromeos/network/favorite_state.h"
#include "chromeos/network/network_event_log.h"
-#include "chromeos/network/network_state.h"
-#include "chromeos/network/network_state_handler.h"
+#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_ui.h"
#include "content/public/browser/web_ui_data_source.h"
#include "content/public/browser/web_ui_message_handler.h"
@@ -26,111 +23,40 @@ namespace chromeos {
namespace {
-const char kStringsJsFile[] = "strings.js";
-const char kRequestNetworkInfoCallback[] = "requestNetworkInfo";
-const char kNetworkEventLogTag[] = "networkEventLog";
-const char kNetworkStateTag[] = "networkStates";
-const char kFavoriteStateTag[] = "favoriteStates";
-const char kOnNetworkInfoReceivedFunction[] = "NetworkUI.onNetworkInfoReceived";
+const int kMaxLogEvents = 1000;
-class NetworkMessageHandler : public content::WebUIMessageHandler {
+class NetworkUIMessageHandler : public content::WebUIMessageHandler {
public:
- NetworkMessageHandler();
- virtual ~NetworkMessageHandler();
+ NetworkUIMessageHandler() {}
+ virtual ~NetworkUIMessageHandler() {}
// WebUIMessageHandler implementation.
- virtual void RegisterMessages() OVERRIDE;
+ virtual void RegisterMessages() OVERRIDE {
+ web_ui()->RegisterMessageCallback(
+ "NetworkUI.getNetworkLog",
+ base::Bind(&NetworkUIMessageHandler::GetNetworkLog,
+ base::Unretained(this)));
+ }
private:
- void CollectNetworkInfo(const base::ListValue* value) const;
- std::string GetNetworkEventLog() const;
- void GetNetworkState(base::DictionaryValue* output) const;
- void GetFavoriteState(base::DictionaryValue* output) const;
- void RespondToPage(const base::DictionaryValue& value) const;
-
- DISALLOW_COPY_AND_ASSIGN(NetworkMessageHandler);
-};
-
-NetworkMessageHandler::NetworkMessageHandler() {
-}
-
-NetworkMessageHandler::~NetworkMessageHandler() {
-}
-
-void NetworkMessageHandler::RegisterMessages() {
- web_ui()->RegisterMessageCallback(
- kRequestNetworkInfoCallback,
- base::Bind(&NetworkMessageHandler::CollectNetworkInfo,
- base::Unretained(this)));
-}
-
-void NetworkMessageHandler::CollectNetworkInfo(
- const base::ListValue* value) const {
- base::DictionaryValue data;
- data.SetString(kNetworkEventLogTag, GetNetworkEventLog());
-
- base::DictionaryValue* networkState = new base::DictionaryValue;
- GetNetworkState(networkState);
- data.Set(kNetworkStateTag, networkState);
-
- base::DictionaryValue* favoriteState = new base::DictionaryValue;
- GetFavoriteState(favoriteState);
- data.Set(kFavoriteStateTag, favoriteState);
-
- RespondToPage(data);
-}
-
-void NetworkMessageHandler::RespondToPage(
- const base::DictionaryValue& value) const {
- web_ui()->CallJavascriptFunction(kOnNetworkInfoReceivedFunction, value);
-}
-
-std::string NetworkMessageHandler::GetNetworkEventLog() const {
- std::string format = "json";
- return chromeos::network_event_log::GetAsString(
- chromeos::network_event_log::NEWEST_FIRST,
- format,
- chromeos::network_event_log::LOG_LEVEL_DEBUG,
- 0);
-}
-
-void NetworkMessageHandler::GetNetworkState(
- base::DictionaryValue* output) const {
- chromeos::NetworkStateHandler* handler =
- chromeos::NetworkHandler::Get()->network_state_handler();
- chromeos::NetworkStateHandler::NetworkStateList network_list;
- handler->GetNetworkList(&network_list);
- for (chromeos::NetworkStateHandler::NetworkStateList::const_iterator it =
- network_list.begin();
- it != network_list.end();
- ++it) {
- base::DictionaryValue* properties = new base::DictionaryValue;
- (*it)->GetStateProperties(properties);
- output->Set((*it)->path(), properties);
+ void GetNetworkLog(const base::ListValue* value) const {
+ base::StringValue data(chromeos::network_event_log::GetAsString(
+ chromeos::network_event_log::NEWEST_FIRST,
+ "json",
+ chromeos::network_event_log::LOG_LEVEL_DEBUG,
+ kMaxLogEvents));
+ web_ui()->CallJavascriptFunction("NetworkUI.getNetworkLogCallback", data);
}
-}
-void NetworkMessageHandler::GetFavoriteState(
- base::DictionaryValue* output) const {
- chromeos::NetworkStateHandler* handler =
- chromeos::NetworkHandler::Get()->network_state_handler();
- chromeos::NetworkStateHandler::FavoriteStateList favorite_list;
- handler->GetFavoriteList(&favorite_list);
- for (chromeos::NetworkStateHandler::FavoriteStateList::const_iterator it =
- favorite_list.begin();
- it != favorite_list.end();
- ++it) {
- base::DictionaryValue* properties = new base::DictionaryValue;
- (*it)->GetStateProperties(properties);
- output->Set((*it)->path(), properties);
- }
-}
+ DISALLOW_COPY_AND_ASSIGN(NetworkUIMessageHandler);
+};
} // namespace
NetworkUI::NetworkUI(content::WebUI* web_ui)
: content::WebUIController(web_ui) {
- web_ui->AddMessageHandler(new NetworkMessageHandler());
+ web_ui->AddMessageHandler(new NetworkConfigMessageHandler());
+ web_ui->AddMessageHandler(new NetworkUIMessageHandler());
content::WebUIDataSource* html =
content::WebUIDataSource::Create(chrome::kChromeUINetworkHost);
@@ -149,14 +75,14 @@ NetworkUI::NetworkUI(content::WebUI* web_ui)
html->AddLocalizedString("logLevelTimeDetailText",
IDS_NETWORK_LOG_LEVEL_TIME_DETAIL);
html->AddLocalizedString("logEntryFormat", IDS_NETWORK_LOG_ENTRY);
- html->SetJsonPath(kStringsJsFile);
-
- html->AddResourcePath("network.css", IDR_NETWORK_CSS);
- html->AddResourcePath("network.js", IDR_NETWORK_JS);
- html->SetDefaultResource(IDR_NETWORK_HTML);
-
- Profile* profile = Profile::FromWebUI(web_ui);
- content::WebUIDataSource::Add(profile, html);
+ html->SetJsonPath("strings.js");
+ html->AddResourcePath("network_config.js", IDR_NETWORK_CONFIG_JS);
+ html->AddResourcePath("network_ui.css", IDR_NETWORK_UI_CSS);
+ html->AddResourcePath("network_ui.js", IDR_NETWORK_UI_JS);
+ html->SetDefaultResource(IDR_NETWORK_UI_HTML);
+
+ content::WebUIDataSource::Add(
+ web_ui->GetWebContents()->GetBrowserContext(), html);
}
NetworkUI::~NetworkUI() {

Powered by Google App Engine
This is Rietveld 408576698