diff options
author | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-25 21:30:38 +0000 |
---|---|---|
committer | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-25 21:30:38 +0000 |
commit | 66761b95332549f825999e482c17c94675275f49 (patch) | |
tree | fc5307808a2c62f1eff2a9f37db3aff11c5455d9 /net/socket/socks_client_socket_pool_unittest.cc | |
parent | e313f3b11360902a3da9b3b1cc0df2a4792d0867 (diff) | |
download | chromium_src-66761b95332549f825999e482c17c94675275f49.zip chromium_src-66761b95332549f825999e482c17c94675275f49.tar.gz chromium_src-66761b95332549f825999e482c17c94675275f49.tar.bz2 |
Massively simplify the NetworkChangeNotifier infrastructure:
* Use a process-wide object (singleton pattern)
* Create/destroy this object on the main thread, make it outlive all consumers
* Make observer-related functions threadsafe
As a result, the notifier can now be used by any thread (eliminating things like NetworkChangeObserverProxy and NetworkChangeNotifierProxy, and expanding its usefulness); its creation and inner workings are much simplified (eliminating implementation-specific classes); and it is simpler to access (eliminating things like NetworkChangeNotifierThread and a LOT of passing pointers around).
BUG=none
TEST=Unittests; network changes still trigger notifications
Review URL: http://codereview.chromium.org/2802015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50895 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket/socks_client_socket_pool_unittest.cc')
-rw-r--r-- | net/socket/socks_client_socket_pool_unittest.cc | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/net/socket/socks_client_socket_pool_unittest.cc b/net/socket/socks_client_socket_pool_unittest.cc index 452fbcc..fb83d96 100644 --- a/net/socket/socks_client_socket_pool_unittest.cc +++ b/net/socket/socks_client_socket_pool_unittest.cc @@ -10,7 +10,6 @@ #include "base/compiler_specific.h" #include "base/time.h" #include "net/base/mock_host_resolver.h" -#include "net/base/mock_network_change_notifier.h" #include "net/base/net_errors.h" #include "net/base/test_completion_callback.h" #include "net/socket/client_socket_factory.h" @@ -82,12 +81,13 @@ class MockTCPClientSocketPool : public TCPClientSocketPool { DISALLOW_COPY_AND_ASSIGN(MockConnectJob); }; - MockTCPClientSocketPool(int max_sockets, int max_sockets_per_group, + MockTCPClientSocketPool( + int max_sockets, + int max_sockets_per_group, const scoped_refptr<ClientSocketPoolHistograms>& histograms, - ClientSocketFactory* socket_factory, - NetworkChangeNotifier* network_change_notifier) + ClientSocketFactory* socket_factory) : TCPClientSocketPool(max_sockets, max_sockets_per_group, histograms, - NULL, NULL, network_change_notifier, NULL), + NULL, NULL, NULL), client_socket_factory_(socket_factory), release_count_(0), cancel_count_(0) {} @@ -174,16 +174,13 @@ class SOCKSClientSocketPoolTest : public ClientSocketPoolTest { : ignored_tcp_socket_params_( HostPortPair("proxy", 80), MEDIUM, GURL(), false), tcp_histograms_(new ClientSocketPoolHistograms("MockTCP")), - tcp_socket_pool_(new MockTCPClientSocketPool( - kMaxSockets, kMaxSocketsPerGroup, tcp_histograms_, - &tcp_client_socket_factory_, &tcp_notifier_)), + tcp_socket_pool_(new MockTCPClientSocketPool(kMaxSockets, + kMaxSocketsPerGroup, tcp_histograms_, &tcp_client_socket_factory_)), ignored_socket_params_(ignored_tcp_socket_params_, true, - HostPortPair("host", 80), - MEDIUM, GURL()), + HostPortPair("host", 80), MEDIUM, GURL()), socks_histograms_(new ClientSocketPoolHistograms("SOCKSUnitTest")), - pool_(new SOCKSClientSocketPool( - kMaxSockets, kMaxSocketsPerGroup, socks_histograms_, NULL, - tcp_socket_pool_, &socks_notifier_, NULL)) { + pool_(new SOCKSClientSocketPool(kMaxSockets, kMaxSocketsPerGroup, + socks_histograms_, NULL, tcp_socket_pool_, NULL)) { } int StartRequest(const std::string& group_name, RequestPriority priority) { @@ -194,12 +191,10 @@ class SOCKSClientSocketPoolTest : public ClientSocketPoolTest { TCPSocketParams ignored_tcp_socket_params_; scoped_refptr<ClientSocketPoolHistograms> tcp_histograms_; MockClientSocketFactory tcp_client_socket_factory_; - MockNetworkChangeNotifier tcp_notifier_; scoped_refptr<MockTCPClientSocketPool> tcp_socket_pool_; SOCKSSocketParams ignored_socket_params_; scoped_refptr<ClientSocketPoolHistograms> socks_histograms_; - MockNetworkChangeNotifier socks_notifier_; scoped_refptr<SOCKSClientSocketPool> pool_; }; |