diff options
author | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-08 04:05:10 +0000 |
---|---|---|
committer | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-08 04:05:10 +0000 |
commit | bd45292e5c21fcb3fef1fd5dfb8207ae29277f8a (patch) | |
tree | 1eca5cafa1a1b87a5f5182f1d7f12aaf588fc809 /chrome | |
parent | 3ffe71e020ea8e3597c2835f1ba0ebb8fb85ab9e (diff) | |
download | chromium_src-bd45292e5c21fcb3fef1fd5dfb8207ae29277f8a.zip chromium_src-bd45292e5c21fcb3fef1fd5dfb8207ae29277f8a.tar.gz chromium_src-bd45292e5c21fcb3fef1fd5dfb8207ae29277f8a.tar.bz2 |
Adds a NetworkChangeNotifier dependency to ProxyService; when we observer a network change through the notifier, the ProxyService re-configures itself.
So for example, if you were to switch to VPN and are using a custom PAC URL, we will re-download that URL on the new network.
Similarly if you are using auto-detect PAC settings, we will re-run the autodiscovery steps for the next resolve.
Note that Chromium is still passing a NULL NetworkChangeNotifier dependency into its ProxyService -- until it passes a real implementation, this will not impact Chrome.
BUG=12293
TEST=ProxyServiceTest.NetworkChangeTriggersPacRefetch
Review URL: http://codereview.chromium.org/525104
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35772 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/net/chrome_url_request_context.cc | 2 | ||||
-rw-r--r-- | chrome/browser/net/resolve_proxy_msg_helper_unittest.cc | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/chrome/browser/net/chrome_url_request_context.cc b/chrome/browser/net/chrome_url_request_context.cc index 6dedd4c..36b984f 100644 --- a/chrome/browser/net/chrome_url_request_context.cc +++ b/chrome/browser/net/chrome_url_request_context.cc @@ -96,6 +96,8 @@ net::ProxyService* CreateProxyService( proxy_config_service, use_v8, context, + NULL, // TODO(eroman): Pass a valid NetworkChangeNotifier implementation + // (http://crbug.com/12293). io_loop); } diff --git a/chrome/browser/net/resolve_proxy_msg_helper_unittest.cc b/chrome/browser/net/resolve_proxy_msg_helper_unittest.cc index b6132f9..bb4c1b3 100644 --- a/chrome/browser/net/resolve_proxy_msg_helper_unittest.cc +++ b/chrome/browser/net/resolve_proxy_msg_helper_unittest.cc @@ -55,7 +55,7 @@ class MyDelegate : public ResolveProxyMsgHelper::Delegate { TEST(ResolveProxyMsgHelperTest, Sequential) { net::MockAsyncProxyResolver* resolver = new net::MockAsyncProxyResolver; scoped_refptr<net::ProxyService> service( - new net::ProxyService(new MockProxyConfigService, resolver)); + new net::ProxyService(new MockProxyConfigService, resolver, NULL)); MyDelegate delegate; ResolveProxyMsgHelper helper(&delegate, service); @@ -118,7 +118,7 @@ TEST(ResolveProxyMsgHelperTest, Sequential) { TEST(ResolveProxyMsgHelperTest, QueueRequests) { net::MockAsyncProxyResolver* resolver = new net::MockAsyncProxyResolver; scoped_refptr<net::ProxyService> service( - new net::ProxyService(new MockProxyConfigService, resolver)); + new net::ProxyService(new MockProxyConfigService, resolver, NULL)); MyDelegate delegate; ResolveProxyMsgHelper helper(&delegate, service); @@ -185,7 +185,7 @@ TEST(ResolveProxyMsgHelperTest, QueueRequests) { TEST(ResolveProxyMsgHelperTest, CancelPendingRequests) { net::MockAsyncProxyResolver* resolver = new net::MockAsyncProxyResolver; scoped_refptr<net::ProxyService> service( - new net::ProxyService(new MockProxyConfigService, resolver)); + new net::ProxyService(new MockProxyConfigService, resolver, NULL)); MyDelegate delegate; scoped_ptr<ResolveProxyMsgHelper> helper( |