diff options
author | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-28 06:33:58 +0000 |
---|---|---|
committer | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-28 06:33:58 +0000 |
commit | 57cb0f76bceab5f05f3d14a23e764795b476f3d3 (patch) | |
tree | a8c549a7c8e18f1e581cfba2ee78bca33699abf9 /net/http/http_cache.cc | |
parent | d8397a8c9673136fe1deae24367b989e97f54bfb (diff) | |
download | chromium_src-57cb0f76bceab5f05f3d14a23e764795b476f3d3.zip chromium_src-57cb0f76bceab5f05f3d14a23e764795b476f3d3.tar.gz chromium_src-57cb0f76bceab5f05f3d14a23e764795b476f3d3.tar.bz2 |
Simplify HttpCache/HttpNetworkLayer/HttpNetworkSession interaction.
Eliminate lazy initialization of HttpNetworkSession in HttpNetworkLayer.
* This eliminates the need to update parameters for HttpNetworkLayer, it just takes a HttpNetworkSession.
* It is OK to eliminate lazy initialization since these variables are cheap.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6402002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72931 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http/http_cache.cc')
-rw-r--r-- | net/http/http_cache.cc | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/net/http/http_cache.cc b/net/http/http_cache.cc index 3ef5a7b7..1690e55 100644 --- a/net/http/http_cache.cc +++ b/net/http/http_cache.cc @@ -33,6 +33,7 @@ #include "net/http/http_response_headers.h" #include "net/http/http_response_info.h" #include "net/http/http_util.h" +#include "net/socket/client_socket_factory.h" #include "net/socket/ssl_host_info.h" #include "net/spdy/spdy_session_pool.h" @@ -278,7 +279,6 @@ class HttpCache::SSLHostInfoFactoryAdaptor : public SSLHostInfoFactory { }; //----------------------------------------------------------------------------- - HttpCache::HttpCache(HostResolver* host_resolver, CertVerifier* cert_verifier, DnsRRResolver* dnsrr_resolver, @@ -295,21 +295,34 @@ HttpCache::HttpCache(HostResolver* host_resolver, mode_(NORMAL), ssl_host_info_factory_(new SSLHostInfoFactoryAdaptor( ALLOW_THIS_IN_INITIALIZER_LIST(this))), - network_layer_(HttpNetworkLayer::CreateFactory(host_resolver, - cert_verifier, dnsrr_resolver, dns_cert_checker_, - ssl_host_info_factory_.get(), - proxy_service, ssl_config_service, - http_auth_handler_factory, network_delegate, net_log)), + network_layer_( + new HttpNetworkLayer( + new HttpNetworkSession( + host_resolver, + cert_verifier, + dnsrr_resolver, + dns_cert_checker_, + ssl_host_info_factory_.get(), + proxy_service, + ClientSocketFactory::GetDefaultFactory(), + ssl_config_service, + new SpdySessionPool(ssl_config_service), + http_auth_handler_factory, + network_delegate, + net_log))), ALLOW_THIS_IN_INITIALIZER_LIST(task_factory_(this)) { } + HttpCache::HttpCache(HttpNetworkSession* session, BackendFactory* backend_factory) : net_log_(session->net_log()), backend_factory_(backend_factory), building_backend_(false), mode_(NORMAL), - network_layer_(HttpNetworkLayer::CreateFactory(session)), + ssl_host_info_factory_(new SSLHostInfoFactoryAdaptor( + ALLOW_THIS_IN_INITIALIZER_LIST(this))), + network_layer_(new HttpNetworkLayer(session)), ALLOW_THIS_IN_INITIALIZER_LIST(task_factory_(this)) { } |