diff options
author | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-12 18:11:13 +0000 |
---|---|---|
committer | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-12 18:11:13 +0000 |
commit | e772db3f04f1079a07d702c6aa4e0394f2147af9 (patch) | |
tree | edfe7bec726506679a8163fb4fd207287c8df77d /net/http/http_network_session.cc | |
parent | 1e89e05c0bae9404547e95b86cce02d233706f28 (diff) | |
download | chromium_src-e772db3f04f1079a07d702c6aa4e0394f2147af9.zip chromium_src-e772db3f04f1079a07d702c6aa4e0394f2147af9.tar.gz chromium_src-e772db3f04f1079a07d702c6aa4e0394f2147af9.tar.bz2 |
Put HttpProxyClientSocket into a pool.
This CL requires http://codereview.chromium.org/2799036
- Cleanup the HttpProxyClientSocket interface a touch.
- Make HttpAuthController reference counted.
- Enable ClientSocketPool to return recoverable connections.
BUG=42795
TEST=existing unit tests
Review URL: http://codereview.chromium.org/2817033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52104 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http/http_network_session.cc')
-rw-r--r-- | net/http/http_network_session.cc | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc index ea5a5cf..e49674b 100644 --- a/net/http/http_network_session.cc +++ b/net/http/http_network_session.cc @@ -47,6 +47,8 @@ HttpNetworkSession::HttpNetworkSession( // TODO(vandebo) when we've completely converted to pools, the base TCP // pool name should get changed to TCP instead of Transport. : tcp_pool_histograms_(new ClientSocketPoolHistograms("Transport")), + tcp_for_http_proxy_pool_histograms_( + new ClientSocketPoolHistograms("TCPforHTTPProxy")), http_proxy_pool_histograms_(new ClientSocketPoolHistograms("HTTPProxy")), tcp_for_socks_pool_histograms_( new ClientSocketPoolHistograms("TCPforSOCKS")), @@ -69,7 +71,7 @@ HttpNetworkSession::HttpNetworkSession( HttpNetworkSession::~HttpNetworkSession() { } -const scoped_refptr<TCPClientSocketPool>& +const scoped_refptr<HttpProxyClientSocketPool>& HttpNetworkSession::GetSocketPoolForHTTPProxy(const HostPortPair& http_proxy) { HTTPProxySocketPoolMap::const_iterator it = http_proxy_socket_pool_.find(http_proxy); @@ -77,10 +79,17 @@ HttpNetworkSession::GetSocketPoolForHTTPProxy(const HostPortPair& http_proxy) { return it->second; std::pair<HTTPProxySocketPoolMap::iterator, bool> ret = - http_proxy_socket_pool_.insert(std::make_pair(http_proxy, - new TCPClientSocketPool(g_max_sockets_per_proxy_server, - g_max_sockets_per_group, http_proxy_pool_histograms_, - host_resolver_, socket_factory_, net_log_))); + http_proxy_socket_pool_.insert( + std::make_pair( + http_proxy, + new HttpProxyClientSocketPool( + g_max_sockets_per_proxy_server, g_max_sockets_per_group, + http_proxy_pool_histograms_, host_resolver_, + new TCPClientSocketPool( + g_max_sockets_per_proxy_server, g_max_sockets_per_group, + tcp_for_http_proxy_pool_histograms_, host_resolver_, + socket_factory_, net_log_), + net_log_))); return ret.first->second; } |