Chromium Code Reviews| 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..89501191b30be1f5e3a0575564c45c2fdba72445 100644 |
| --- a/chrome/browser/net/chrome_network_delegate.h |
| +++ b/chrome/browser/net/chrome_network_delegate.h |
| @@ -52,6 +52,7 @@ class InfoMap; |
| namespace net { |
| class ProxyInfo; |
| class URLRequest; |
| +class ProxyInfo; |
|
mmenke
2014/07/01 19:45:12
nit: Already forward declared.
rcs
2014/07/02 00:56:20
Done.
|
| } |
| namespace policy { |
| @@ -142,6 +143,16 @@ 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, |
| + net::ProxyInfo* result)> OnResolveProxyHandler; |
| + |
| + 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 +189,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 +293,8 @@ class ChromeNetworkDelegate : public net::NetworkDelegate { |
| data_reduction_proxy::DataReductionProxyAuthRequestHandler* |
| data_reduction_proxy_auth_request_handler_; |
| + OnResolveProxyHandler* on_resolve_proxy_handler_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(ChromeNetworkDelegate); |
| }; |