summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
Diffstat (limited to 'net')
-rw-r--r--net/http/http_cache.cc27
-rw-r--r--net/http/http_cache.h2
-rw-r--r--net/http/http_network_layer.cc127
-rw-r--r--net/http/http_network_layer.h67
-rw-r--r--net/http/http_network_layer_unittest.cc142
-rw-r--r--net/proxy/proxy_script_fetcher_impl_unittest.cc49
-rw-r--r--net/spdy/spdy_test_util.cc29
-rw-r--r--net/tools/fetch/fetch_client.cc35
-rw-r--r--net/url_request/url_request_test_util.cc27
9 files changed, 186 insertions, 319 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)) {
}
diff --git a/net/http/http_cache.h b/net/http/http_cache.h
index b431ee6..563ed17 100644
--- a/net/http/http_cache.h
+++ b/net/http/http_cache.h
@@ -131,7 +131,7 @@ class HttpCache : public HttpTransactionFactory,
// The disk cache is initialized lazily (by CreateTransaction) in this case.
// Provide an existing HttpNetworkSession, the cache can construct a
// network layer with a shared HttpNetworkSession in order for multiple
- // network layers to share information (e.g. authenication data). The
+ // network layers to share information (e.g. authentication data). The
// HttpCache takes ownership of the |backend_factory|.
HttpCache(HttpNetworkSession* session, BackendFactory* backend_factory);
diff --git a/net/http/http_network_layer.cc b/net/http/http_network_layer.cc
index 975e75c..293f8ec 100644
--- a/net/http/http_network_layer.cc
+++ b/net/http/http_network_layer.cc
@@ -18,81 +18,8 @@
namespace net {
//-----------------------------------------------------------------------------
-
-HttpNetworkLayer::HttpNetworkLayer(
- ClientSocketFactory* socket_factory,
- HostResolver* host_resolver,
- CertVerifier* cert_verifier,
- DnsRRResolver* dnsrr_resolver,
- DnsCertProvenanceChecker* dns_cert_checker,
- SSLHostInfoFactory* ssl_host_info_factory,
- ProxyService* proxy_service,
- SSLConfigService* ssl_config_service,
- HttpAuthHandlerFactory* http_auth_handler_factory,
- HttpNetworkDelegate* network_delegate,
- NetLog* net_log)
- : socket_factory_(socket_factory),
- host_resolver_(host_resolver),
- cert_verifier_(cert_verifier),
- dnsrr_resolver_(dnsrr_resolver),
- dns_cert_checker_(dns_cert_checker),
- ssl_host_info_factory_(ssl_host_info_factory),
- proxy_service_(proxy_service),
- ssl_config_service_(ssl_config_service),
- session_(NULL),
- spdy_session_pool_(NULL),
- http_auth_handler_factory_(http_auth_handler_factory),
- network_delegate_(network_delegate),
- net_log_(net_log),
- suspended_(false) {
- DCHECK(proxy_service_);
- DCHECK(ssl_config_service_.get());
-}
-
-HttpNetworkLayer::HttpNetworkLayer(
- ClientSocketFactory* socket_factory,
- HostResolver* host_resolver,
- CertVerifier* cert_verifier,
- DnsRRResolver* dnsrr_resolver,
- DnsCertProvenanceChecker* dns_cert_checker,
- SSLHostInfoFactory* ssl_host_info_factory,
- ProxyService* proxy_service,
- SSLConfigService* ssl_config_service,
- SpdySessionPool* spdy_session_pool,
- HttpAuthHandlerFactory* http_auth_handler_factory,
- HttpNetworkDelegate* network_delegate,
- NetLog* net_log)
- : socket_factory_(socket_factory),
- host_resolver_(host_resolver),
- cert_verifier_(cert_verifier),
- dnsrr_resolver_(dnsrr_resolver),
- dns_cert_checker_(dns_cert_checker),
- ssl_host_info_factory_(ssl_host_info_factory),
- proxy_service_(proxy_service),
- ssl_config_service_(ssl_config_service),
- session_(NULL),
- spdy_session_pool_(spdy_session_pool),
- http_auth_handler_factory_(http_auth_handler_factory),
- network_delegate_(network_delegate),
- net_log_(net_log),
- suspended_(false) {
- DCHECK(proxy_service_);
- DCHECK(ssl_config_service_.get());
-}
-
HttpNetworkLayer::HttpNetworkLayer(HttpNetworkSession* session)
- : socket_factory_(ClientSocketFactory::GetDefaultFactory()),
- host_resolver_(NULL),
- cert_verifier_(NULL),
- dnsrr_resolver_(NULL),
- dns_cert_checker_(NULL),
- ssl_host_info_factory_(NULL),
- ssl_config_service_(NULL),
- session_(session),
- spdy_session_pool_(NULL),
- http_auth_handler_factory_(NULL),
- network_delegate_(NULL),
- net_log_(NULL),
+ : session_(session),
suspended_(false) {
DCHECK(session_.get());
}
@@ -104,29 +31,6 @@ HttpNetworkLayer::~HttpNetworkLayer() {
// static
HttpTransactionFactory* HttpNetworkLayer::CreateFactory(
- HostResolver* host_resolver,
- CertVerifier* cert_verifier,
- DnsRRResolver* dnsrr_resolver,
- DnsCertProvenanceChecker* dns_cert_checker,
- SSLHostInfoFactory* ssl_host_info_factory,
- ProxyService* proxy_service,
- SSLConfigService* ssl_config_service,
- HttpAuthHandlerFactory* http_auth_handler_factory,
- HttpNetworkDelegate* network_delegate,
- NetLog* net_log) {
- DCHECK(proxy_service);
-
- return new HttpNetworkLayer(ClientSocketFactory::GetDefaultFactory(),
- host_resolver, cert_verifier, dnsrr_resolver,
- dns_cert_checker,
- ssl_host_info_factory, proxy_service,
- ssl_config_service, http_auth_handler_factory,
- network_delegate,
- net_log);
-}
-
-// static
-HttpTransactionFactory* HttpNetworkLayer::CreateFactory(
HttpNetworkSession* session) {
DCHECK(session);
@@ -242,35 +146,6 @@ HttpCache* HttpNetworkLayer::GetCache() {
}
HttpNetworkSession* HttpNetworkLayer::GetSession() {
- if (!session_) {
- DCHECK(proxy_service_);
- if (!spdy_session_pool_.get())
- spdy_session_pool_.reset(new SpdySessionPool(ssl_config_service_));
- session_ = new HttpNetworkSession(
- host_resolver_,
- cert_verifier_,
- dnsrr_resolver_,
- dns_cert_checker_,
- ssl_host_info_factory_,
- proxy_service_,
- socket_factory_,
- ssl_config_service_,
- spdy_session_pool_.release(),
- http_auth_handler_factory_,
- network_delegate_,
- net_log_);
- // These were just temps for lazy-initializing HttpNetworkSession.
- host_resolver_ = NULL;
- cert_verifier_ = NULL;
- dnsrr_resolver_ = NULL;
- dns_cert_checker_ = NULL;
- ssl_host_info_factory_ = NULL;
- proxy_service_ = NULL;
- socket_factory_ = NULL;
- http_auth_handler_factory_ = NULL;
- net_log_ = NULL;
- network_delegate_ = NULL;
- }
return session_;
}
diff --git a/net/http/http_network_layer.h b/net/http/http_network_layer.h
index 963ebee..da92761 100644
--- a/net/http/http_network_layer.h
+++ b/net/http/http_network_layer.h
@@ -32,52 +32,10 @@ class SSLHostInfoFactory;
class HttpNetworkLayer : public HttpTransactionFactory,
public base::NonThreadSafe {
public:
- // |socket_factory|, |proxy_service|, |host_resolver|, etc. must remain
- // valid for the lifetime of HttpNetworkLayer.
- // TODO(wtc): we only need the next constructor.
- HttpNetworkLayer(ClientSocketFactory* socket_factory,
- HostResolver* host_resolver,
- CertVerifier* cert_verifier,
- DnsRRResolver* dnsrr_resolver,
- DnsCertProvenanceChecker* dns_cert_checker,
- SSLHostInfoFactory* ssl_host_info_factory,
- ProxyService* proxy_service,
- SSLConfigService* ssl_config_service,
- HttpAuthHandlerFactory* http_auth_handler_factory,
- HttpNetworkDelegate* network_delegate,
- NetLog* net_log);
- HttpNetworkLayer(
- ClientSocketFactory* socket_factory,
- HostResolver* host_resolver,
- CertVerifier* cert_verifier,
- DnsRRResolver* dnsrr_resolver,
- DnsCertProvenanceChecker* dns_cert_checker,
- SSLHostInfoFactory* ssl_host_info_factory,
- ProxyService* proxy_service,
- SSLConfigService* ssl_config_service,
- SpdySessionPool* spdy_session_pool,
- HttpAuthHandlerFactory* http_auth_handler_factory,
- HttpNetworkDelegate* network_delegate,
- NetLog* net_log);
-
// Construct a HttpNetworkLayer with an existing HttpNetworkSession which
// contains a valid ProxyService.
explicit HttpNetworkLayer(HttpNetworkSession* session);
- ~HttpNetworkLayer();
-
- // This function hides the details of how a network layer gets instantiated
- // and allows other implementations to be substituted.
- static HttpTransactionFactory* CreateFactory(
- HostResolver* host_resolver,
- CertVerifier* cert_verifier,
- DnsRRResolver* dnsrr_resolver,
- DnsCertProvenanceChecker* dns_cert_checker,
- SSLHostInfoFactory* ssl_host_info_factory,
- ProxyService* proxy_service,
- SSLConfigService* ssl_config_service,
- HttpAuthHandlerFactory* http_auth_handler_factory,
- HttpNetworkDelegate* network_delegate,
- NetLog* net_log);
+ virtual ~HttpNetworkLayer();
// Create a transaction factory that instantiate a network layer over an
// existing network session. Network session contains some valuable
@@ -104,28 +62,7 @@ class HttpNetworkLayer : public HttpTransactionFactory,
virtual void Suspend(bool suspend);
private:
- // The factory we will use to create network sockets.
- ClientSocketFactory* socket_factory_;
-
- // The host resolver, proxy service, etc. that will be used when lazily
- // creating |session_|.
- HostResolver* host_resolver_;
- CertVerifier* cert_verifier_;
- DnsRRResolver* dnsrr_resolver_;
- DnsCertProvenanceChecker* dns_cert_checker_;
- SSLHostInfoFactory* ssl_host_info_factory_;
- scoped_refptr<ProxyService> proxy_service_;
-
- // The SSL config service being used for the session.
- scoped_refptr<SSLConfigService> ssl_config_service_;
-
- scoped_refptr<HttpNetworkSession> session_;
- scoped_ptr<SpdySessionPool> spdy_session_pool_;
-
- HttpAuthHandlerFactory* http_auth_handler_factory_;
- HttpNetworkDelegate* network_delegate_;
- NetLog* net_log_;
-
+ const scoped_refptr<HttpNetworkSession> session_;
bool suspended_;
};
diff --git a/net/http/http_network_layer_unittest.cc b/net/http/http_network_layer_unittest.cc
index 2720c10..f76ffbb 100644
--- a/net/http/http_network_layer_unittest.cc
+++ b/net/http/http_network_layer_unittest.cc
@@ -7,9 +7,11 @@
#include "net/base/net_log.h"
#include "net/base/ssl_config_service_defaults.h"
#include "net/http/http_network_layer.h"
+#include "net/http/http_network_session.h"
#include "net/http/http_transaction_unittest.h"
#include "net/proxy/proxy_service.h"
#include "net/socket/socket_test_util.h"
+#include "net/spdy/spdy_session_pool.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/platform_test.h"
@@ -21,115 +23,127 @@ class HttpNetworkLayerTest : public PlatformTest {
};
TEST_F(HttpNetworkLayerTest, CreateAndDestroy) {
+ MockClientSocketFactory mock_socket_factory;
MockHostResolver host_resolver;
- net::CertVerifier cert_verifier;
- net::HttpNetworkLayer factory(
- NULL,
- &host_resolver,
- &cert_verifier,
- NULL /* dnsrr_resolver */,
- NULL /* dns_cert_checker */,
- NULL /* ssl_host_info_factory */,
- net::ProxyService::CreateDirect(),
- new net::SSLConfigServiceDefaults,
- NULL,
- NULL,
- NULL);
-
- scoped_ptr<net::HttpTransaction> trans;
+ CertVerifier cert_verifier;
+ scoped_refptr<HttpNetworkSession> network_session(
+ new HttpNetworkSession(
+ &host_resolver,
+ &cert_verifier,
+ NULL /* dnsrr_resolver */,
+ NULL /* dns_cert_checker */,
+ NULL /* ssl_host_info_factory */,
+ ProxyService::CreateDirect(),
+ &mock_socket_factory,
+ new SSLConfigServiceDefaults,
+ new SpdySessionPool(NULL),
+ NULL,
+ NULL,
+ NULL));
+
+ HttpNetworkLayer factory(network_session);
+
+ scoped_ptr<HttpTransaction> trans;
int rv = factory.CreateTransaction(&trans);
- EXPECT_EQ(net::OK, rv);
+ EXPECT_EQ(OK, rv);
EXPECT_TRUE(trans.get() != NULL);
}
TEST_F(HttpNetworkLayerTest, Suspend) {
+ MockClientSocketFactory mock_socket_factory;
MockHostResolver host_resolver;
- net::CertVerifier cert_verifier;
- net::HttpNetworkLayer factory(
- NULL,
- &host_resolver,
- &cert_verifier,
- NULL /* dnsrr_resolver */,
- NULL /* dns_cert_checker */,
- NULL /* ssl_host_info_factory */,
- net::ProxyService::CreateDirect(),
- new net::SSLConfigServiceDefaults,
- NULL,
- NULL,
- NULL);
-
- scoped_ptr<net::HttpTransaction> trans;
+ CertVerifier cert_verifier;
+ scoped_refptr<HttpNetworkSession> network_session(
+ new HttpNetworkSession(
+ &host_resolver,
+ &cert_verifier,
+ NULL /* dnsrr_resolver */,
+ NULL /* dns_cert_checker */,
+ NULL /* ssl_host_info_factory */,
+ ProxyService::CreateDirect(),
+ &mock_socket_factory,
+ new SSLConfigServiceDefaults,
+ new SpdySessionPool(NULL),
+ NULL,
+ NULL,
+ NULL));
+ HttpNetworkLayer factory(network_session);
+
+ scoped_ptr<HttpTransaction> trans;
int rv = factory.CreateTransaction(&trans);
- EXPECT_EQ(net::OK, rv);
+ EXPECT_EQ(OK, rv);
trans.reset();
factory.Suspend(true);
rv = factory.CreateTransaction(&trans);
- EXPECT_EQ(net::ERR_NETWORK_IO_SUSPENDED, rv);
+ EXPECT_EQ(ERR_NETWORK_IO_SUSPENDED, rv);
ASSERT_TRUE(trans == NULL);
factory.Suspend(false);
rv = factory.CreateTransaction(&trans);
- EXPECT_EQ(net::OK, rv);
+ EXPECT_EQ(OK, rv);
}
TEST_F(HttpNetworkLayerTest, GET) {
- net::MockClientSocketFactory mock_socket_factory;
- net::MockRead data_reads[] = {
- net::MockRead("HTTP/1.0 200 OK\r\n\r\n"),
- net::MockRead("hello world"),
- net::MockRead(false, net::OK),
+ MockClientSocketFactory mock_socket_factory;
+ MockRead data_reads[] = {
+ MockRead("HTTP/1.0 200 OK\r\n\r\n"),
+ MockRead("hello world"),
+ MockRead(false, OK),
};
- net::MockWrite data_writes[] = {
- net::MockWrite("GET / HTTP/1.1\r\n"
+ MockWrite data_writes[] = {
+ MockWrite("GET / HTTP/1.1\r\n"
"Host: www.google.com\r\n"
"Connection: keep-alive\r\n"
"User-Agent: Foo/1.0\r\n\r\n"),
};
- net::StaticSocketDataProvider data(data_reads, arraysize(data_reads),
+ StaticSocketDataProvider data(data_reads, arraysize(data_reads),
data_writes, arraysize(data_writes));
mock_socket_factory.AddSocketDataProvider(&data);
MockHostResolver host_resolver;
- net::CertVerifier cert_verifier;
- net::HttpNetworkLayer factory(
- &mock_socket_factory,
- &host_resolver,
- &cert_verifier,
- NULL /* dnsrr_resolver */,
- NULL /* dns_cert_checker */,
- NULL /* ssl_host_info_factory */,
- net::ProxyService::CreateDirect(),
- new net::SSLConfigServiceDefaults,
- NULL,
- NULL,
- NULL);
+ CertVerifier cert_verifier;
+ scoped_refptr<HttpNetworkSession> network_session(
+ new HttpNetworkSession(
+ &host_resolver,
+ &cert_verifier,
+ NULL /* dnsrr_resolver */,
+ NULL /* dns_cert_checker */,
+ NULL /* ssl_host_info_factory */,
+ ProxyService::CreateDirect(),
+ &mock_socket_factory,
+ new SSLConfigServiceDefaults,
+ new SpdySessionPool(NULL),
+ NULL,
+ NULL,
+ NULL));
+ HttpNetworkLayer factory(network_session);
TestCompletionCallback callback;
- scoped_ptr<net::HttpTransaction> trans;
+ scoped_ptr<HttpTransaction> trans;
int rv = factory.CreateTransaction(&trans);
- EXPECT_EQ(net::OK, rv);
+ EXPECT_EQ(OK, rv);
- net::HttpRequestInfo request_info;
+ HttpRequestInfo request_info;
request_info.url = GURL("http://www.google.com/");
request_info.method = "GET";
- request_info.extra_headers.SetHeader(net::HttpRequestHeaders::kUserAgent,
+ request_info.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent,
"Foo/1.0");
- request_info.load_flags = net::LOAD_NORMAL;
+ request_info.load_flags = LOAD_NORMAL;
- rv = trans->Start(&request_info, &callback, net::BoundNetLog());
- if (rv == net::ERR_IO_PENDING)
+ rv = trans->Start(&request_info, &callback, BoundNetLog());
+ if (rv == ERR_IO_PENDING)
rv = callback.WaitForResult();
- ASSERT_EQ(net::OK, rv);
+ ASSERT_EQ(OK, rv);
std::string contents;
rv = ReadTransaction(trans.get(), &contents);
- EXPECT_EQ(net::OK, rv);
+ EXPECT_EQ(OK, rv);
EXPECT_EQ("hello world", contents);
}
diff --git a/net/proxy/proxy_script_fetcher_impl_unittest.cc b/net/proxy/proxy_script_fetcher_impl_unittest.cc
index 4a96071..ae751eb 100644
--- a/net/proxy/proxy_script_fetcher_impl_unittest.cc
+++ b/net/proxy/proxy_script_fetcher_impl_unittest.cc
@@ -15,14 +15,21 @@
#include "net/base/test_completion_callback.h"
#include "net/disk_cache/disk_cache.h"
#include "net/http/http_cache.h"
+#include "net/http/http_network_session.h"
+#include "net/socket/client_socket_factory.h"
+#include "net/spdy/spdy_session_pool.h"
#include "net/url_request/url_request_test_util.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/platform_test.h"
+namespace net {
+
// TODO(eroman):
// - Test canceling an outstanding request.
// - Test deleting ProxyScriptFetcher while a request is in progress.
+namespace {
+
const FilePath::CharType kDocRoot[] =
FILE_PATH_LITERAL("net/data/proxy_script_fetcher_unittest");
@@ -32,23 +39,34 @@ struct FetchResult {
};
// A non-mock URL request which can access http:// and file:// urls.
-class RequestContext : public net::URLRequestContext {
+class RequestContext : public URLRequestContext {
public:
RequestContext() {
- net::ProxyConfig no_proxy;
+ ProxyConfig no_proxy;
host_resolver_ =
- net::CreateSystemHostResolver(net::HostResolver::kDefaultParallelism,
+ CreateSystemHostResolver(HostResolver::kDefaultParallelism,
NULL, NULL);
- cert_verifier_ = new net::CertVerifier;
- proxy_service_ = net::ProxyService::CreateFixed(no_proxy);
- ssl_config_service_ = new net::SSLConfigServiceDefaults;
-
- http_transaction_factory_ = new net::HttpCache(
- net::HttpNetworkLayer::CreateFactory(host_resolver_, cert_verifier_,
- NULL, NULL, NULL, proxy_service_, ssl_config_service_, NULL, NULL,
- NULL),
- NULL,
- net::HttpCache::DefaultBackend::InMemory(0));
+ cert_verifier_ = new CertVerifier;
+ proxy_service_ = ProxyService::CreateFixed(no_proxy);
+ ssl_config_service_ = new SSLConfigServiceDefaults;
+
+ scoped_refptr<HttpNetworkSession> network_session(
+ new HttpNetworkSession(
+ host_resolver_,
+ cert_verifier_,
+ NULL /* dnsrr_resolver */,
+ NULL /* dns_cert_checker */,
+ NULL /* ssl_host_info_factory */,
+ proxy_service_,
+ ClientSocketFactory::GetDefaultFactory(),
+ ssl_config_service_,
+ new SpdySessionPool(NULL),
+ NULL,
+ NULL,
+ NULL));
+ http_transaction_factory_ = new HttpCache(
+ network_session,
+ HttpCache::DefaultBackend::InMemory(0));
}
private:
@@ -59,9 +77,6 @@ class RequestContext : public net::URLRequestContext {
}
};
-// Required to be in net namespace by FRIEND_TEST.
-namespace net {
-
// Get a file:// url relative to net/data/proxy/proxy_script_fetcher_unittest.
GURL GetTestFileUrl(const std::string& relpath) {
FilePath path;
@@ -73,6 +88,8 @@ GURL GetTestFileUrl(const std::string& relpath) {
return GURL(base_url.spec() + "/" + relpath);
}
+} // namespace
+
class ProxyScriptFetcherImplTest : public PlatformTest {
public:
ProxyScriptFetcherImplTest()
diff --git a/net/spdy/spdy_test_util.cc b/net/spdy/spdy_test_util.cc
index 07a5980..e7bde0a 100644
--- a/net/spdy/spdy_test_util.cc
+++ b/net/spdy/spdy_test_util.cc
@@ -9,6 +9,7 @@
#include "base/basictypes.h"
#include "base/string_number_conversions.h"
#include "base/string_util.h"
+#include "net/http/http_network_session.h"
#include "net/http/http_network_transaction.h"
#include "net/spdy/spdy_framer.h"
@@ -924,20 +925,22 @@ SpdyURLRequestContext::SpdyURLRequestContext() {
ssl_config_service_ = new SSLConfigServiceDefaults;
http_auth_handler_factory_ = HttpAuthHandlerFactory::CreateDefault(
host_resolver_);
+ scoped_refptr<HttpNetworkSession> network_session(
+ new HttpNetworkSession(
+ host_resolver_,
+ cert_verifier_,
+ NULL /* dnsrr_resolver */,
+ NULL /* dns_cert_checker */,
+ NULL /* ssl_host_info_factory */,
+ proxy_service_,
+ &socket_factory_,
+ ssl_config_service_,
+ new SpdySessionPool(NULL),
+ http_auth_handler_factory_,
+ network_delegate_,
+ NULL /* net_log */));
http_transaction_factory_ = new HttpCache(
- new HttpNetworkLayer(&socket_factory_,
- host_resolver_,
- cert_verifier_,
- NULL /* dnsrr_resolver */,
- NULL /* dns_cert_checker */,
- NULL /* ssl_host_info_factory */,
- proxy_service_,
- ssl_config_service_,
- new SpdySessionPool(NULL),
- http_auth_handler_factory_,
- network_delegate_,
- NULL),
- NULL /* net_log */,
+ network_session,
HttpCache::DefaultBackend::InMemory(0));
}
diff --git a/net/tools/fetch/fetch_client.cc b/net/tools/fetch/fetch_client.cc
index 0d9682f..8ba7534 100644
--- a/net/tools/fetch/fetch_client.cc
+++ b/net/tools/fetch/fetch_client.cc
@@ -20,10 +20,12 @@
#include "net/http/http_auth_handler_factory.h"
#include "net/http/http_cache.h"
#include "net/http/http_network_layer.h"
+#include "net/http/http_network_session.h"
#include "net/http/http_request_info.h"
#include "net/http/http_transaction.h"
#include "net/proxy/proxy_service.h"
#include "net/socket/client_socket_factory.h"
+#include "net/spdy/spdy_session_pool.h"
void usage(const char* program_name) {
printf("usage: %s --url=<url> [--n=<clients>] [--stats] [--use_cache]\n",
@@ -149,24 +151,25 @@ int main(int argc, char**argv) {
net::HttpTransactionFactory* factory = NULL;
scoped_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory(
net::HttpAuthHandlerFactory::CreateDefault(host_resolver.get()));
+ scoped_refptr<net::HttpNetworkSession> network_session(
+ new net::HttpNetworkSession(
+ host_resolver.get(),
+ cert_verifier.get(),
+ NULL /* dnsrr_resolver */,
+ NULL /* dns_cert_checker */,
+ NULL /* ssl_host_info_factory */,
+ proxy_service,
+ net::ClientSocketFactory::GetDefaultFactory(),
+ ssl_config_service,
+ new net::SpdySessionPool(NULL),
+ http_auth_handler_factory.get(),
+ NULL,
+ NULL));
if (use_cache) {
- factory = new net::HttpCache(host_resolver.get(), cert_verifier.get(),
- NULL, NULL, proxy_service, ssl_config_service,
- http_auth_handler_factory.get(), NULL, NULL,
- net::HttpCache::DefaultBackend::InMemory(0));
+ factory = new net::HttpCache(network_session,
+ net::HttpCache::DefaultBackend::InMemory(0));
} else {
- factory = new net::HttpNetworkLayer(
- net::ClientSocketFactory::GetDefaultFactory(),
- host_resolver.get(),
- cert_verifier.get(),
- NULL /* dnsrr_resolver */,
- NULL /* dns_cert_checker */,
- NULL /* ssl_host_info_factory */,
- proxy_service,
- ssl_config_service,
- http_auth_handler_factory.get(),
- NULL,
- NULL);
+ factory = new net::HttpNetworkLayer(network_session);
}
{
diff --git a/net/url_request/url_request_test_util.cc b/net/url_request/url_request_test_util.cc
index 099810a..5053f35 100644
--- a/net/url_request/url_request_test_util.cc
+++ b/net/url_request/url_request_test_util.cc
@@ -7,6 +7,9 @@
#include "base/logging.h"
#include "base/message_loop.h"
#include "base/threading/thread.h"
+#include "net/http/http_network_session.h"
+#include "net/socket/client_socket_factory.h"
+#include "net/spdy/spdy_session_pool.h"
TestCookiePolicy::TestCookiePolicy(int options_bit_mask)
: ALLOW_THIS_IN_INITIALIZER_LIST(method_factory_(this)),
@@ -110,17 +113,19 @@ void TestURLRequestContext::Init() {
http_auth_handler_factory_ = net::HttpAuthHandlerFactory::CreateDefault(
host_resolver_);
http_transaction_factory_ = new net::HttpCache(
- net::HttpNetworkLayer::CreateFactory(host_resolver_,
- cert_verifier_,
- NULL /* dnsrr_resolver */,
- NULL /* dns_cert_checker */,
- NULL /* ssl_host_info_factory */,
- proxy_service_,
- ssl_config_service_,
- http_auth_handler_factory_,
- network_delegate_,
- NULL),
- NULL /* net_log */,
+ new net::HttpNetworkSession(
+ host_resolver_,
+ cert_verifier_,
+ NULL /* dnsrr_resolver */,
+ NULL /* dns_cert_checker */,
+ NULL /* ssl_host_info_factory */,
+ proxy_service_,
+ net::ClientSocketFactory::GetDefaultFactory(),
+ ssl_config_service_,
+ new net::SpdySessionPool(ssl_config_service_),
+ http_auth_handler_factory_,
+ network_delegate_,
+ NULL),
net::HttpCache::DefaultBackend::InMemory(0));
// In-memory cookie store.
cookie_store_ = new net::CookieMonster(NULL, NULL);