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 40038be1d2c4c43e54d9fb1d1e4426810885e9fc..df345f5716a03373d427375c8f7d810e0afe3fd8 100644 |
--- a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc |
+++ b/chrome/browser/ui/webui/net_internals/net_internals_ui.cc |
@@ -375,6 +375,7 @@ class NetInternalsMessageHandler::IOThreadImpl |
void OnGetServiceProviders(const base::ListValue* list); |
#endif |
void OnSetLogLevel(const base::ListValue* list); |
+ void OnGetDataReductionProxyInfo(const base::ListValue* list); |
// ChromeNetLog::ThreadSafeObserver implementation: |
void OnAddEntry(const net::NetLog::Entry& entry) override; |
@@ -578,6 +579,10 @@ void NetInternalsMessageHandler::RegisterMessages() { |
"getExtensionInfo", |
base::Bind(&NetInternalsMessageHandler::OnGetExtensionInfo, |
base::Unretained(this))); |
+ web_ui()->RegisterMessageCallback( |
+ "getDataReductionProxyInfo", |
+ base::Bind(&IOThreadImpl::CallbackHelper, |
+ &IOThreadImpl::OnGetDataReductionProxyInfo, proxy_)); |
#if defined(OS_CHROMEOS) |
web_ui()->RegisterMessageCallback( |
"refreshSystemLogs", |
@@ -1292,6 +1297,27 @@ void NetInternalsMessageHandler::IOThreadImpl::OnSetLogLevel( |
this, static_cast<net::NetLog::LogLevel>(log_level)); |
} |
+void NetInternalsMessageHandler::IOThreadImpl::OnGetDataReductionProxyInfo( |
+ const base::ListValue* list) { |
+ DCHECK(!list); |
+ net::HttpNetworkSession* http_network_session = |
+ GetHttpNetworkSession(main_context_getter_->GetURLRequestContext()); |
+ |
+ base::Value* data_reduction_proxy_info = NULL; |
mmenke
2014/12/03 18:58:46
I believe nullptr is now preferred
jeremyim
2014/12/03 20:57:26
Done.
|
+ if (http_network_session) { |
+ ChromeNetworkDelegate* network_delegate = |
+ static_cast<ChromeNetworkDelegate*>( |
+ http_network_session->network_delegate()); |
mmenke
2014/12/03 18:58:46
This is a problem. See https://codereview.chromiu
jeremyim
2014/12/03 20:57:26
Yeah, I'm not too thrilled about it either, and th
|
+ |
+ if (network_delegate) |
+ data_reduction_proxy_info = |
+ network_delegate->DataReductionProxyInfoToValue(); |
+ } |
+ |
+ SendJavascriptCommand( |
+ "receivedDataReductionProxyInfo", data_reduction_proxy_info); |
+} |
+ |
// Note that unlike other methods of IOThreadImpl, this function |
// can be called from ANY THREAD. |
void NetInternalsMessageHandler::IOThreadImpl::OnAddEntry( |