Index: chrome/browser/net/chrome_network_delegate.h |
diff --git a/chrome/browser/net/chrome_network_delegate.h b/chrome/browser/net/chrome_network_delegate.h |
index 976e1bbbb5256eb10bef925dd50b8279cb3178d1..436c69d3a16f6378a2b22aebcb08947bda7f44cd 100644 |
--- a/chrome/browser/net/chrome_network_delegate.h |
+++ b/chrome/browser/net/chrome_network_delegate.h |
@@ -142,6 +142,19 @@ class ChromeNetworkDelegate : public net::NetworkDelegate { |
data_reduction_proxy_auth_request_handler_ = handler; |
} |
+ // Provides an opportunity to interpose on proxy resolution. Called before |
+ // ProxyService.ResolveProxy() returns. |proxy_info| contains information |
+ // about the proxy being used, and may be modified by this callback. |
+ typedef base::Callback<void( |
+ const GURL& url, |
+ int load_flags, |
+ const data_reduction_proxy::DataReductionProxyParams* params, |
+ net::ProxyInfo* result)> OnResolveProxyHandler; |
mmenke
2014/07/07 20:21:59
nit: Per Google style guide, typedefs (and enums)
rcs
2014/07/07 22:08:49
Done.
|
+ |
+ void set_on_resolve_proxy_handler(OnResolveProxyHandler* handler) { |
+ on_resolve_proxy_handler_ = handler; |
+ } |
+ |
// Adds the Client Hints header to HTTP requests. |
void SetEnableClientHints(); |
@@ -178,6 +191,8 @@ class ChromeNetworkDelegate : public net::NetworkDelegate { |
virtual int OnBeforeURLRequest(net::URLRequest* request, |
const net::CompletionCallback& callback, |
GURL* new_url) OVERRIDE; |
+ virtual void OnResolveProxy( |
+ const GURL& url, int load_flags, net::ProxyInfo* result) OVERRIDE; |
virtual int OnBeforeSendHeaders(net::URLRequest* request, |
const net::CompletionCallback& callback, |
net::HttpRequestHeaders* headers) OVERRIDE; |
@@ -280,6 +295,8 @@ class ChromeNetworkDelegate : public net::NetworkDelegate { |
data_reduction_proxy::DataReductionProxyAuthRequestHandler* |
data_reduction_proxy_auth_request_handler_; |
+ OnResolveProxyHandler* on_resolve_proxy_handler_; |
mmenke
2014/07/07 20:21:59
Suggest not making this a pointer. Callbacks have
rcs
2014/07/07 22:08:49
Done.
|
+ |
DISALLOW_COPY_AND_ASSIGN(ChromeNetworkDelegate); |
}; |