| Index: chrome/browser/ui/webui/net_internals/net_internals_ui.cc
|
| diff --git a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc b/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
|
| index 4d77bf8f2cf30439ff2a6f81c66cfa5f84e1e3e7..9ccef45e7ca8b1e9161469fd3012988164edcc86 100644
|
| --- a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
|
| +++ b/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
|
| @@ -72,6 +72,8 @@
|
| #include "chrome/browser/chromeos/cros/cros_library.h"
|
| #include "chrome/browser/chromeos/cros/network_library.h"
|
| #include "chrome/browser/chromeos/system/syslogs_provider.h"
|
| +#include "chromeos/dbus/dbus_thread_manager.h"
|
| +#include "chromeos/dbus/debug_daemon_client.h"
|
| #endif
|
| #ifdef OS_WIN
|
| #include "chrome/browser/net/service_providers_win.h"
|
| @@ -187,6 +189,9 @@ class NetInternalsMessageHandler
|
| void OnRefreshSystemLogs(const ListValue* list);
|
| void OnGetSystemLog(const ListValue* list);
|
| void OnImportONCFile(const ListValue* list);
|
| + void OnSetNetworkDebugMode(const ListValue* list);
|
| + void OnSetNetworkDebugModeCompleted(const std::string& subsystem,
|
| + bool succeeded);
|
| #endif
|
|
|
| private:
|
| @@ -556,6 +561,10 @@ void NetInternalsMessageHandler::RegisterMessages() {
|
| "importONCFile",
|
| base::Bind(&NetInternalsMessageHandler::OnImportONCFile,
|
| base::Unretained(this)));
|
| + web_ui()->RegisterMessageCallback(
|
| + "setNetworkDebugMode",
|
| + base::Bind(&NetInternalsMessageHandler::OnSetNetworkDebugMode,
|
| + base::Unretained(this)));
|
| #endif
|
| }
|
|
|
| @@ -1268,6 +1277,32 @@ void NetInternalsMessageHandler::OnImportONCFile(const ListValue* list) {
|
| SendJavascriptCommand("receivedONCFileParse",
|
| Value::CreateStringValue(error));
|
| }
|
| +
|
| +void NetInternalsMessageHandler::OnSetNetworkDebugMode(const ListValue* list) {
|
| + std::string subsystem;
|
| + if (list->GetSize() != 1 || !list->GetString(0, &subsystem))
|
| + NOTREACHED();
|
| + chromeos::DBusThreadManager::Get()->GetDebugDaemonClient()->
|
| + SetDebugMode(
|
| + subsystem,
|
| + base::Bind(
|
| + &NetInternalsMessageHandler::OnSetNetworkDebugModeCompleted,
|
| + AsWeakPtr(),
|
| + subsystem));
|
| +}
|
| +
|
| +void NetInternalsMessageHandler::OnSetNetworkDebugModeCompleted(
|
| + const std::string& subsystem,
|
| + bool succeeded) {
|
| + std::string status;
|
| + if (succeeded)
|
| + status = "Debug mode is changed to " + subsystem;
|
| + else
|
| + status = "Failed to change debug mode to " + subsystem;
|
| + SendJavascriptCommand("receivedSetNetworkDebugMode",
|
| + Value::CreateStringValue(status));
|
| +}
|
| +
|
| #endif
|
|
|
| void NetInternalsMessageHandler::IOThreadImpl::OnGetHttpPipeliningStatus(
|
|
|