summaryrefslogtreecommitdiffstats
path: root/net/http/http_network_session.cc
diff options
context:
space:
mode:
authorwillchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-03 21:48:34 +0000
committerwillchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-03 21:48:34 +0000
commit9e1bdd3f9785ed8a84a137c98b781ddaec41b080 (patch)
tree36d3550cc6d9db08bf3a18fbb42668d440a94b56 /net/http/http_network_session.cc
parent966c57777b2c18313cddd8e36d109665f5377521 (diff)
downloadchromium_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.cc60
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