diff options
author | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-03 21:48:34 +0000 |
---|---|---|
committer | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-03 21:48:34 +0000 |
commit | 9e1bdd3f9785ed8a84a137c98b781ddaec41b080 (patch) | |
tree | 36d3550cc6d9db08bf3a18fbb42668d440a94b56 /net/http/http_network_session.cc | |
parent | 966c57777b2c18313cddd8e36d109665f5377521 (diff) | |
download | chromium_src-9e1bdd3f9785ed8a84a137c98b781ddaec41b080.zip chromium_src-9e1bdd3f9785ed8a84a137c98b781ddaec41b080.tar.gz chromium_src-9e1bdd3f9785ed8a84a137c98b781ddaec41b080.tar.bz2 |
Refactor HttpNetworkSession construction.
Introduce HttpNetworkSession::Params. This should make it easy to add new optionally NULL parameters. I also took this opportunity to eliminate some copy/pastes of TestURLRequestContext and make them use the original. I was also able to remove the need for ClientSocketFactory::GetDefaultFactory() calls and new SpdySessionPool() calls in most places.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6349028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73669 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http/http_network_session.cc')
-rw-r--r-- | net/http/http_network_session.cc | 60 |
1 files changed, 23 insertions, 37 deletions
diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc index e3de475..a1b3c61 100644 --- a/net/http/http_network_session.cc +++ b/net/http/http_network_session.cc @@ -13,51 +13,37 @@ #include "net/http/http_auth_handler_factory.h" #include "net/http/http_response_body_drainer.h" #include "net/http/url_security_manager.h" +#include "net/socket/client_socket_factory.h" #include "net/spdy/spdy_session_pool.h" namespace net { // TODO(mbelshe): Move the socket factories into HttpStreamFactory. -HttpNetworkSession::HttpNetworkSession( - HostResolver* host_resolver, - CertVerifier* cert_verifier, - DnsRRResolver* dnsrr_resolver, - DnsCertProvenanceChecker* dns_cert_checker, - SSLHostInfoFactory* ssl_host_info_factory, - ProxyService* proxy_service, - ClientSocketFactory* client_socket_factory, - SSLConfigService* ssl_config_service, - SpdySessionPool* spdy_session_pool, - HttpAuthHandlerFactory* http_auth_handler_factory, - HttpNetworkDelegate* network_delegate, - NetLog* net_log) - : socket_factory_(client_socket_factory), - host_resolver_(host_resolver), - cert_verifier_(cert_verifier), - dnsrr_resolver_(dnsrr_resolver), - dns_cert_checker_(dns_cert_checker), - proxy_service_(proxy_service), - ssl_config_service_(ssl_config_service), - socket_pool_manager_(net_log, - client_socket_factory, - host_resolver, - cert_verifier, - dnsrr_resolver, - dns_cert_checker, - ssl_host_info_factory, - proxy_service, - ssl_config_service), - spdy_session_pool_(spdy_session_pool), - http_auth_handler_factory_(http_auth_handler_factory), - network_delegate_(network_delegate), - net_log_(net_log) { - DCHECK(proxy_service); - DCHECK(ssl_config_service); +HttpNetworkSession::HttpNetworkSession(const Params& params) + : proxy_service_(params.proxy_service), + ssl_config_service_(params.ssl_config_service), + socket_pool_manager_(params.net_log, + params.client_socket_factory ? + params.client_socket_factory : + ClientSocketFactory::GetDefaultFactory(), + params.host_resolver, + params.cert_verifier, + params.dnsrr_resolver, + params.dns_cert_checker, + params.ssl_host_info_factory, + params.proxy_service, + params.ssl_config_service), + spdy_session_pool_(params.ssl_config_service), + http_auth_handler_factory_(params.http_auth_handler_factory), + network_delegate_(params.network_delegate), + net_log_(params.net_log) { + DCHECK(params.proxy_service); + DCHECK(params.ssl_config_service); } HttpNetworkSession::~HttpNetworkSession() { STLDeleteElements(&response_drainers_); - spdy_session_pool_->CloseAllSessions(); + spdy_session_pool_.CloseAllSessions(); } void HttpNetworkSession::AddResponseDrainer(HttpResponseBodyDrainer* drainer) { @@ -72,7 +58,7 @@ void HttpNetworkSession::RemoveResponseDrainer( } Value* HttpNetworkSession::SpdySessionPoolInfoToValue() const { - return spdy_session_pool_->SpdySessionPoolInfoToValue(); + return spdy_session_pool_.SpdySessionPoolInfoToValue(); } } // namespace net |