Index: net/proxy/proxy_service.h |
diff --git a/net/proxy/proxy_service.h b/net/proxy/proxy_service.h |
index f7856e5858067d65735f95425f9106d13c2741e7..cee7ef6eede22cb3a47c72055cdc741b5d310cfd 100644 |
--- a/net/proxy/proxy_service.h |
+++ b/net/proxy/proxy_service.h |
@@ -25,6 +25,7 @@ class MessageLoop; |
namespace net { |
+class DhcpProxyScriptFetcher; |
class HostResolver; |
class InitProxyResolver; |
class NetworkDelegate; |
@@ -98,10 +99,12 @@ class ProxyService : public NetworkChangeNotifier::IPAddressObserver, |
// Call this method with a non-null |pac_request| to cancel the PAC request. |
void CancelPacRequest(PacRequest* pac_request); |
- // Sets the ProxyScriptFetcher dependency. This is needed if the ProxyResolver |
- // is of type ProxyResolverWithoutFetch. ProxyService takes ownership of |
- // |proxy_script_fetcher|. |
- void SetProxyScriptFetcher(ProxyScriptFetcher* proxy_script_fetcher); |
+ // Sets the ProxyScriptFetcher and DhcpProxyScriptFetcher dependencies. This |
+ // is needed if the ProxyResolver is of type ProxyResolverWithoutFetch. |
+ // ProxyService takes ownership of both objects. |
+ void SetProxyScriptFetchers( |
+ ProxyScriptFetcher* proxy_script_fetcher, |
+ DhcpProxyScriptFetcher* dhcp_proxy_script_fetcher); |
ProxyScriptFetcher* GetProxyScriptFetcher() const; |
// Tells this ProxyService to start using a new ProxyConfigService to |
@@ -161,6 +164,10 @@ class ProxyService : public NetworkChangeNotifier::IPAddressObserver, |
// |proxy_script_fetcher| specifies the dependency to use for downloading |
// any PAC scripts. The resulting ProxyService will take ownership of it. |
// |
+ // |dhcp_proxy_script_fetcher| specifies the dependency to use for attempting |
+ // to retrieve the most appropriate PAC script configured in DHCP. The |
+ // resulting ProxyService will take ownership of it. |
+ // |
// |host_resolver| points to the host resolving dependency the PAC script |
// should use for any DNS queries. It must remain valid throughout the |
// lifetime of the ProxyService. |
@@ -174,6 +181,7 @@ class ProxyService : public NetworkChangeNotifier::IPAddressObserver, |
ProxyConfigService* proxy_config_service, |
size_t num_pac_threads, |
ProxyScriptFetcher* proxy_script_fetcher, |
+ DhcpProxyScriptFetcher* dhcp_proxy_script_fetcher, |
HostResolver* host_resolver, |
NetLog* net_log, |
NetworkDelegate* network_delegate); |
@@ -319,6 +327,11 @@ class ProxyService : public NetworkChangeNotifier::IPAddressObserver, |
// external PAC script fetching. |
scoped_ptr<ProxyScriptFetcher> proxy_script_fetcher_; |
+ // The fetcher to use when attempting to download the most appropriate PAC |
+ // script configured in DHCP, if any. Can be NULL if the ProxyResolver has |
+ // no need for DHCP PAC script fetching. |
+ scoped_ptr<DhcpProxyScriptFetcher> dhcp_proxy_script_fetcher_; |
+ |
// Callback for when |init_proxy_resolver_| is done. |
CompletionCallbackImpl<ProxyService> init_proxy_resolver_callback_; |