diff options
56 files changed, 552 insertions, 524 deletions
diff --git a/android_webview/browser/net/aw_url_request_context_getter.cc b/android_webview/browser/net/aw_url_request_context_getter.cc index 9c13b65..607e1d0 100644 --- a/android_webview/browser/net/aw_url_request_context_getter.cc +++ b/android_webview/browser/net/aw_url_request_context_getter.cc @@ -182,11 +182,10 @@ AwURLRequestContextGetter::AwURLRequestContextGetter( const base::FilePath& cache_path, net::CookieStore* cookie_store, scoped_ptr<net::ProxyConfigService> config_service) : cache_path_(cache_path), + net_log_(new net::NetLog()), + proxy_config_service_(config_service.Pass()), cookie_store_(cookie_store), - net_log_(new net::NetLog()) { - proxy_config_service_ = config_service.Pass(); - http_user_agent_settings_.reset( - new AwHttpUserAgentSettings()); + http_user_agent_settings_(new AwHttpUserAgentSettings()) { // CreateSystemProxyConfigService for Android must be called on main thread. DCHECK_CURRENTLY_ON(BrowserThread::UI); } @@ -230,17 +229,19 @@ void AwURLRequestContextGetter::InitializeURLRequestContext() { PopulateNetworkSessionParams(url_request_context_.get(), &network_session_params); - net::HttpCache* main_cache = new net::HttpCache( - network_session_params, + http_network_session_.reset( + new net::HttpNetworkSession(network_session_params)); + main_http_factory_.reset(new net::HttpCache( + http_network_session_.get(), new net::HttpCache::DefaultBackend( net::DISK_CACHE, net::CACHE_BACKEND_SIMPLE, cache_path_, 20 * 1024 * 1024, // 20M - BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE))); + BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)), + true /* set_up_quic_server_info */)); - main_http_factory_.reset(main_cache); - url_request_context_->set_http_transaction_factory(main_cache); + url_request_context_->set_http_transaction_factory(main_http_factory_.get()); job_factory_ = CreateJobFactory(&protocol_handlers_, request_interceptors_.Pass()); diff --git a/android_webview/browser/net/aw_url_request_context_getter.h b/android_webview/browser/net/aw_url_request_context_getter.h index a7713fe..868a670 100644 --- a/android_webview/browser/net/aw_url_request_context_getter.h +++ b/android_webview/browser/net/aw_url_request_context_getter.h @@ -65,13 +65,15 @@ class AwURLRequestContextGetter : public net::URLRequestContextGetter { void InitializeURLRequestContext(); const base::FilePath cache_path_; - scoped_refptr<net::CookieStore> cookie_store_; + scoped_ptr<net::NetLog> net_log_; - scoped_ptr<net::URLRequestContext> url_request_context_; scoped_ptr<net::ProxyConfigService> proxy_config_service_; - scoped_ptr<net::URLRequestJobFactory> job_factory_; + scoped_ptr<net::HttpNetworkSession> http_network_session_; scoped_ptr<net::HttpTransactionFactory> main_http_factory_; + scoped_refptr<net::CookieStore> cookie_store_; + scoped_ptr<net::URLRequestJobFactory> job_factory_; scoped_ptr<net::HttpUserAgentSettings> http_user_agent_settings_; + scoped_ptr<net::URLRequestContext> url_request_context_; // ProtocolHandlers and interceptors are stored here between // SetHandlersAndInterceptors() and the first GetURLRequestContext() call. diff --git a/chrome/browser/io_thread.cc b/chrome/browser/io_thread.cc index 952964b..386790a 100644 --- a/chrome/browser/io_thread.cc +++ b/chrome/browser/io_thread.cc @@ -73,6 +73,7 @@ #include "net/http/http_auth_filter.h" #include "net/http/http_auth_handler_factory.h" #include "net/http/http_network_layer.h" +#include "net/http/http_network_session.h" #include "net/http/http_server_properties_impl.h" #include "net/proxy/proxy_config_service.h" #include "net/proxy/proxy_script_fetcher_impl.h" @@ -1507,8 +1508,10 @@ net::URLRequestContext* IOThread::ConstructSystemRequestContext( net::URLRequestContextBuilder::SetHttpNetworkSessionComponents( context, &system_params); + globals->system_http_network_session.reset( + new net::HttpNetworkSession(system_params)); globals->system_http_transaction_factory.reset( - new net::HttpNetworkLayer(new net::HttpNetworkSession(system_params))); + new net::HttpNetworkLayer(globals->system_http_network_session.get())); context->set_http_transaction_factory( globals->system_http_transaction_factory.get()); @@ -1558,15 +1561,16 @@ net::URLRequestContext* IOThread::ConstructProxyScriptFetcherContext( tracked_objects::ScopedTracker tracking_profile2( FROM_HERE_WITH_EXPLICIT_FUNCTION( "466432 IOThread::ConstructProxyScriptFetcherContext2")); - scoped_refptr<net::HttpNetworkSession> network_session( + globals->proxy_script_fetcher_http_network_session.reset( new net::HttpNetworkSession(session_params)); // TODO(erikchen): Remove ScopedTracker below once http://crbug.com/466432 // is fixed. tracked_objects::ScopedTracker tracking_profile3( FROM_HERE_WITH_EXPLICIT_FUNCTION( "466432 IOThread::ConstructProxyScriptFetcherContext3")); - globals->proxy_script_fetcher_http_transaction_factory - .reset(new net::HttpNetworkLayer(network_session.get())); + globals->proxy_script_fetcher_http_transaction_factory.reset( + new net::HttpNetworkLayer( + globals->proxy_script_fetcher_http_network_session.get())); context->set_http_transaction_factory( globals->proxy_script_fetcher_http_transaction_factory.get()); diff --git a/chrome/browser/io_thread.h b/chrome/browser/io_thread.h index 5ef542f..06b8eb0 100644 --- a/chrome/browser/io_thread.h +++ b/chrome/browser/io_thread.h @@ -57,6 +57,7 @@ class FtpTransactionFactory; class HostMappingRules; class HostResolver; class HttpAuthHandlerFactory; +class HttpNetworkSession; class HttpServerProperties; class HttpTransactionFactory; class HttpUserAgentSettings; @@ -145,6 +146,8 @@ class IOThread : public content::BrowserThreadDelegate { scoped_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory; scoped_ptr<net::HttpServerProperties> http_server_properties; scoped_ptr<net::ProxyService> proxy_script_fetcher_proxy_service; + scoped_ptr<net::HttpNetworkSession> + proxy_script_fetcher_http_network_session; scoped_ptr<net::HttpTransactionFactory> proxy_script_fetcher_http_transaction_factory; scoped_ptr<net::FtpTransactionFactory> @@ -161,6 +164,7 @@ class IOThread : public content::BrowserThreadDelegate { // ProxyService, since we always directly connect to fetch the PAC script. scoped_ptr<net::URLRequestContext> proxy_script_fetcher_context; scoped_ptr<net::ProxyService> system_proxy_service; + scoped_ptr<net::HttpNetworkSession> system_http_network_session; scoped_ptr<net::HttpTransactionFactory> system_http_transaction_factory; scoped_ptr<net::URLRequestJobFactory> system_url_request_job_factory; scoped_ptr<net::URLRequestContext> system_request_context; diff --git a/chrome/browser/profiles/off_the_record_profile_io_data.cc b/chrome/browser/profiles/off_the_record_profile_io_data.cc index b7609d7..c0f8e5c 100644 --- a/chrome/browser/profiles/off_the_record_profile_io_data.cc +++ b/chrome/browser/profiles/off_the_record_profile_io_data.cc @@ -249,7 +249,9 @@ void OffTheRecordProfileIOData::InitializeInternal( net::HttpCache::BackendFactory* main_backend = net::HttpCache::DefaultBackend::InMemory(0); - main_http_factory_ = CreateMainHttpFactory(profile_params, main_backend); + http_network_session_ = CreateHttpNetworkSession(*profile_params); + main_http_factory_ = CreateMainHttpFactory(http_network_session_.get(), + main_backend); main_context->set_http_transaction_factory(main_http_factory_.get()); #if !defined(DISABLE_FTP_SUPPORT) @@ -347,10 +349,8 @@ net::URLRequestContext* OffTheRecordProfileIOData::InitializeAppRequestContext( // Use a separate in-memory cache for the app. net::HttpCache::BackendFactory* app_backend = net::HttpCache::DefaultBackend::InMemory(0); - net::HttpNetworkSession* main_network_session = - main_http_factory_->GetSession(); scoped_ptr<net::HttpCache> app_http_cache = - CreateHttpFactory(main_network_session, app_backend); + CreateHttpFactory(http_network_session_.get(), app_backend); context->SetHttpTransactionFactory(app_http_cache.Pass()); diff --git a/chrome/browser/profiles/off_the_record_profile_io_data.h b/chrome/browser/profiles/off_the_record_profile_io_data.h index f1cd12e..ae229bd 100644 --- a/chrome/browser/profiles/off_the_record_profile_io_data.h +++ b/chrome/browser/profiles/off_the_record_profile_io_data.h @@ -20,6 +20,7 @@ class Profile; namespace net { class FtpTransactionFactory; +class HttpNetworkSession; class HttpTransactionFactory; class SdchManager; class SdchOwner; @@ -144,6 +145,7 @@ class OffTheRecordProfileIOData : public ProfileIOData { mutable scoped_ptr<ChromeNetworkDelegate> network_delegate_; + mutable scoped_ptr<net::HttpNetworkSession> http_network_session_; mutable scoped_ptr<net::HttpTransactionFactory> main_http_factory_; mutable scoped_ptr<net::FtpTransactionFactory> ftp_factory_; diff --git a/chrome/browser/profiles/profile_impl_io_data.cc b/chrome/browser/profiles/profile_impl_io_data.cc index 0f389fc..0ad1af7 100644 --- a/chrome/browser/profiles/profile_impl_io_data.cc +++ b/chrome/browser/profiles/profile_impl_io_data.cc @@ -57,6 +57,7 @@ #include "net/base/sdch_manager.h" #include "net/ftp/ftp_network_layer.h" #include "net/http/http_cache.h" +#include "net/http/http_network_session.h" #include "net/http/http_server_properties_manager.h" #include "net/sdch/sdch_owner.h" #include "net/ssl/channel_id_service.h" @@ -537,22 +538,22 @@ void ProfileImplIOData::InitializeInternal( set_channel_id_service(channel_id_service); main_context->set_channel_id_service(channel_id_service); - scoped_ptr<net::HttpCache> main_cache; { // TODO(ttuttle): Remove ScopedTracker below once crbug.com/436671 is fixed. tracked_objects::ScopedTracker tracking_profile( FROM_HERE_WITH_EXPLICIT_FUNCTION("436671 HttpCache construction")); - net::HttpCache::DefaultBackend* main_backend = + net::HttpCache::BackendFactory* main_backend( new net::HttpCache::DefaultBackend( net::DISK_CACHE, ChooseCacheBackendType(), lazy_params_->cache_path, lazy_params_->cache_max_size, - BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)); - main_cache = CreateMainHttpFactory(profile_params, main_backend); + BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE))); + http_network_session_ = CreateHttpNetworkSession(*profile_params); + main_http_factory_ = CreateMainHttpFactory(http_network_session_.get(), + main_backend); } - main_http_factory_.reset(main_cache.release()); main_context->set_http_transaction_factory(main_http_factory_.get()); #if !defined(DISABLE_FTP_SUPPORT) @@ -663,7 +664,7 @@ net::URLRequestContext* ProfileImplIOData::InitializeAppRequestContext( partition_descriptor.path.Append(chrome::kCacheDirname); // Use a separate HTTP disk cache for isolated apps. - net::HttpCache::BackendFactory* app_backend = NULL; + net::HttpCache::BackendFactory* app_backend; if (partition_descriptor.in_memory) { app_backend = net::HttpCache::DefaultBackend::InMemory(0); } else { @@ -674,10 +675,8 @@ net::URLRequestContext* ProfileImplIOData::InitializeAppRequestContext( app_cache_max_size_, BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)); } - net::HttpNetworkSession* main_network_session = - main_http_factory_->GetSession(); scoped_ptr<net::HttpCache> app_http_cache = - CreateHttpFactory(main_network_session, app_backend); + CreateHttpFactory(http_network_session_.get(), app_backend); scoped_refptr<net::CookieStore> cookie_store = NULL; if (partition_descriptor.in_memory) { @@ -757,10 +756,8 @@ ProfileImplIOData::InitializeMediaRequestContext( cache_path, cache_max_size, BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)); - net::HttpNetworkSession* main_network_session = - main_http_factory_->GetSession(); scoped_ptr<net::HttpCache> media_http_cache = - CreateHttpFactory(main_network_session, media_backend); + CreateHttpFactory(http_network_session_.get(), media_backend); // Transfer ownership of the cache to MediaRequestContext. context->SetHttpTransactionFactory(media_http_cache.Pass()); diff --git a/chrome/browser/profiles/profile_impl_io_data.h b/chrome/browser/profiles/profile_impl_io_data.h index 214ec74..e8046fc 100644 --- a/chrome/browser/profiles/profile_impl_io_data.h +++ b/chrome/browser/profiles/profile_impl_io_data.h @@ -32,6 +32,7 @@ class DomainReliabilityMonitor; namespace net { class CookieCryptoDelegate; class FtpTransactionFactory; +class HttpNetworkSession; class HttpServerProperties; class HttpServerPropertiesManager; class HttpTransactionFactory; @@ -215,6 +216,7 @@ class ProfileImplIOData : public ProfileIOData { mutable scoped_refptr<JsonPrefStore> network_json_store_; + mutable scoped_ptr<net::HttpNetworkSession> http_network_session_; mutable scoped_ptr<net::HttpTransactionFactory> main_http_factory_; mutable scoped_ptr<net::FtpTransactionFactory> ftp_factory_; diff --git a/chrome/browser/profiles/profile_io_data.cc b/chrome/browser/profiles/profile_io_data.cc index 9150d98..624f8f0 100644 --- a/chrome/browser/profiles/profile_io_data.cc +++ b/chrome/browser/profiles/profile_io_data.cc @@ -69,6 +69,7 @@ #include "net/base/network_quality_estimator.h" #include "net/cert/cert_verifier.h" #include "net/cookies/canonical_cookie.h" +#include "net/http/http_network_session.h" #include "net/http/http_transaction_factory.h" #include "net/http/http_util.h" #include "net/http/transport_security_persister.h" @@ -1304,13 +1305,12 @@ void ProfileIOData::DestroyResourceContext() { resource_context_.reset(); } -scoped_ptr<net::HttpCache> ProfileIOData::CreateMainHttpFactory( - const ProfileParams* profile_params, - net::HttpCache::BackendFactory* main_backend) const { +scoped_ptr<net::HttpNetworkSession> ProfileIOData::CreateHttpNetworkSession( + const ProfileParams& profile_params) const { net::HttpNetworkSession::Params params; net::URLRequestContext* context = main_request_context(); - IOThread* const io_thread = profile_params->io_thread; + IOThread* const io_thread = profile_params.io_thread; io_thread->InitializeNetworkSessionParams(¶ms); net::URLRequestContextBuilder::SetHttpNetworkSessionComponents(context, @@ -1324,11 +1324,19 @@ scoped_ptr<net::HttpCache> ProfileIOData::CreateMainHttpFactory( if (data_reduction_proxy_io_data_.get()) params.proxy_delegate = data_reduction_proxy_io_data_->proxy_delegate(); - net::HttpNetworkSession* session = new net::HttpNetworkSession(params); + return scoped_ptr<net::HttpNetworkSession>( + new net::HttpNetworkSession(params)); +} + +scoped_ptr<net::HttpCache> ProfileIOData::CreateMainHttpFactory( + net::HttpNetworkSession* session, + net::HttpCache::BackendFactory* main_backend) const { + net::URLRequestContext* context = main_request_context(); return scoped_ptr<net::HttpCache>(new net::HttpCache( new DevToolsNetworkTransactionFactory( network_controller_handle_.GetController(), session), - context->net_log(), main_backend)); + context->net_log(), main_backend, + true /* set_up_quic_server_info */)); } scoped_ptr<net::HttpCache> ProfileIOData::CreateHttpFactory( @@ -1337,7 +1345,8 @@ scoped_ptr<net::HttpCache> ProfileIOData::CreateHttpFactory( return scoped_ptr<net::HttpCache>(new net::HttpCache( new DevToolsNetworkTransactionFactory( network_controller_handle_.GetController(), shared_session), - shared_session->net_log(), backend)); + shared_session->net_log(), backend, + true /* set_up_quic_server_info */)); } void ProfileIOData::SetCookieSettingsForTesting( diff --git a/chrome/browser/profiles/profile_io_data.h b/chrome/browser/profiles/profile_io_data.h index 9b94833..ea807b0 100644 --- a/chrome/browser/profiles/profile_io_data.h +++ b/chrome/browser/profiles/profile_io_data.h @@ -383,9 +383,12 @@ class ProfileIOData { // URLRequests may be accessing. void DestroyResourceContext(); - // Creates network session and main network transaction factory. + scoped_ptr<net::HttpNetworkSession> CreateHttpNetworkSession( + const ProfileParams& profile_params) const; + + // Creates main network transaction factory. scoped_ptr<net::HttpCache> CreateMainHttpFactory( - const ProfileParams* profile_params, + net::HttpNetworkSession* session, net::HttpCache::BackendFactory* main_backend) const; // Creates network transaction factory. diff --git a/components/gcm_driver/gcm_client.h b/components/gcm_driver/gcm_client.h index 0aa9a1a..5f7f293 100644 --- a/components/gcm_driver/gcm_client.h +++ b/components/gcm_driver/gcm_client.h @@ -217,9 +217,10 @@ class GCMClient { // |chrome_build_info|: chrome info, i.e., version, channel and etc. // |store_path|: path to the GCM store. // |blocking_task_runner|: for running blocking file tasks. - // |url_request_context_getter|: for url requests. + // |url_request_context_getter|: for url requests. The GCMClient must be + // deleted before the Getter's underlying URLRequestContext. // |delegate|: the delegate whose methods will be called asynchronously in - // response to events and messages. + // response to events and messages. virtual void Initialize( const ChromeBuildInfo& chrome_build_info, const base::FilePath& store_path, diff --git a/components/gcm_driver/gcm_client_impl.cc b/components/gcm_driver/gcm_client_impl.cc index 1a95809..b0f298f 100644 --- a/components/gcm_driver/gcm_client_impl.cc +++ b/components/gcm_driver/gcm_client_impl.cc @@ -255,16 +255,15 @@ scoped_ptr<MCSClient> GCMInternalsBuilder::BuildMCSClient( scoped_ptr<ConnectionFactory> GCMInternalsBuilder::BuildConnectionFactory( const std::vector<GURL>& endpoints, const net::BackoffEntry::Policy& backoff_policy, - const scoped_refptr<net::HttpNetworkSession>& gcm_network_session, - const scoped_refptr<net::HttpNetworkSession>& http_network_session, - net::NetLog* net_log, + net::HttpNetworkSession* gcm_network_session, + net::HttpNetworkSession* http_network_session, GCMStatsRecorder* recorder) { return make_scoped_ptr<ConnectionFactory>( new ConnectionFactoryImpl(endpoints, backoff_policy, gcm_network_session, http_network_session, - net_log, + nullptr, recorder)); } @@ -326,7 +325,7 @@ void GCMClientImpl::Initialize( url_request_context_getter_->GetURLRequestContext()-> GetNetworkSessionParams(); DCHECK(network_session_params); - network_session_ = new net::HttpNetworkSession(*network_session_params); + network_session_.reset(new net::HttpNetworkSession(*network_session_params)); chrome_build_info_ = chrome_build_info; @@ -483,11 +482,10 @@ void GCMClientImpl::InitializeMCSClient() { connection_factory_ = internals_builder_->BuildConnectionFactory( endpoints, GetGCMBackoffPolicy(), - network_session_, + network_session_.get(), url_request_context_getter_->GetURLRequestContext() ->http_transaction_factory() ->GetSession(), - net_log_.net_log(), &recorder_); connection_factory_->SetConnectionListener(this); mcs_client_ = internals_builder_->BuildMCSClient( diff --git a/components/gcm_driver/gcm_client_impl.h b/components/gcm_driver/gcm_client_impl.h index 2542c68..176ee78 100644 --- a/components/gcm_driver/gcm_client_impl.h +++ b/components/gcm_driver/gcm_client_impl.h @@ -26,7 +26,6 @@ #include "google_apis/gcm/engine/unregistration_request.h" #include "google_apis/gcm/protocol/android_checkin.pb.h" #include "google_apis/gcm/protocol/checkin.pb.h" -#include "net/log/net_log.h" #include "net/url_request/url_request_context_getter.h" class GURL; @@ -67,9 +66,8 @@ class GCMInternalsBuilder { virtual scoped_ptr<ConnectionFactory> BuildConnectionFactory( const std::vector<GURL>& endpoints, const net::BackoffEntry::Policy& backoff_policy, - const scoped_refptr<net::HttpNetworkSession>& gcm_network_session, - const scoped_refptr<net::HttpNetworkSession>& http_network_session, - net::NetLog* net_log, + net::HttpNetworkSession* gcm_network_session, + net::HttpNetworkSession* http_network_session, GCMStatsRecorder* recorder); }; @@ -336,12 +334,12 @@ class GCMClientImpl // resetting and loading from the store again and again. bool gcm_store_reset_; - scoped_refptr<net::HttpNetworkSession> network_session_; - net::BoundNetLog net_log_; + scoped_ptr<net::HttpNetworkSession> network_session_; scoped_ptr<ConnectionFactory> connection_factory_; scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_; // Controls receiving and sending of packets and reliable message queueing. + // Must be destroyed before |network_session_|. scoped_ptr<MCSClient> mcs_client_; scoped_ptr<CheckinRequest> checkin_request_; diff --git a/components/gcm_driver/gcm_client_impl_unittest.cc b/components/gcm_driver/gcm_client_impl_unittest.cc index 27fe726..3ba8c43 100644 --- a/components/gcm_driver/gcm_client_impl_unittest.cc +++ b/components/gcm_driver/gcm_client_impl_unittest.cc @@ -200,9 +200,8 @@ class FakeGCMInternalsBuilder : public GCMInternalsBuilder { scoped_ptr<ConnectionFactory> BuildConnectionFactory( const std::vector<GURL>& endpoints, const net::BackoffEntry::Policy& backoff_policy, - const scoped_refptr<net::HttpNetworkSession>& gcm_network_session, - const scoped_refptr<net::HttpNetworkSession>& http_network_session, - net::NetLog* net_log, + net::HttpNetworkSession* gcm_network_session, + net::HttpNetworkSession* http_network_session, GCMStatsRecorder* recorder) override; private: @@ -234,9 +233,8 @@ scoped_ptr<MCSClient> FakeGCMInternalsBuilder::BuildMCSClient( scoped_ptr<ConnectionFactory> FakeGCMInternalsBuilder::BuildConnectionFactory( const std::vector<GURL>& endpoints, const net::BackoffEntry::Policy& backoff_policy, - const scoped_refptr<net::HttpNetworkSession>& gcm_network_session, - const scoped_refptr<net::HttpNetworkSession>& http_network_session, - net::NetLog* net_log, + net::HttpNetworkSession* gcm_network_session, + net::HttpNetworkSession* http_network_session, GCMStatsRecorder* recorder) { return make_scoped_ptr<ConnectionFactory>(new FakeConnectionFactory()); } diff --git a/content/shell/browser/shell_url_request_context_getter.cc b/content/shell/browser/shell_url_request_context_getter.cc index 837eb82..354f9c6 100644 --- a/content/shell/browser/shell_url_request_context_getter.cc +++ b/content/shell/browser/shell_url_request_context_getter.cc @@ -201,8 +201,11 @@ net::URLRequestContext* ShellURLRequestContextGetter::GetURLRequestContext() { network_session_params.host_resolver = url_request_context_->host_resolver(); + storage_->set_http_network_session( + make_scoped_ptr(new net::HttpNetworkSession(network_session_params))); storage_->set_http_transaction_factory(make_scoped_ptr( - new net::HttpCache(network_session_params, main_backend))); + new net::HttpCache(storage_->http_network_session(), main_backend, + true /* set_up_quic_server_info */))); scoped_ptr<net::URLRequestJobFactoryImpl> job_factory( new net::URLRequestJobFactoryImpl()); diff --git a/google_apis/gcm/engine/connection_factory_impl.cc b/google_apis/gcm/engine/connection_factory_impl.cc index 4c4f279..19f456c 100644 --- a/google_apis/gcm/engine/connection_factory_impl.cc +++ b/google_apis/gcm/engine/connection_factory_impl.cc @@ -16,6 +16,7 @@ #include "net/base/net_errors.h" #include "net/http/http_network_session.h" #include "net/http/http_request_headers.h" +#include "net/log/net_log.h" #include "net/proxy/proxy_info.h" #include "net/socket/client_socket_handle.h" #include "net/socket/client_socket_pool_manager.h" @@ -47,8 +48,8 @@ bool ShouldRestorePreviousBackoff(const base::TimeTicks& login_time, ConnectionFactoryImpl::ConnectionFactoryImpl( const std::vector<GURL>& mcs_endpoints, const net::BackoffEntry::Policy& backoff_policy, - const scoped_refptr<net::HttpNetworkSession>& gcm_network_session, - const scoped_refptr<net::HttpNetworkSession>& http_network_session, + net::HttpNetworkSession* gcm_network_session, + net::HttpNetworkSession* http_network_session, net::NetLog* net_log, GCMStatsRecorder* recorder) : mcs_endpoints_(mcs_endpoints), @@ -68,8 +69,8 @@ ConnectionFactoryImpl::ConnectionFactoryImpl( listener_(NULL), weak_ptr_factory_(this) { DCHECK_GE(mcs_endpoints_.size(), 1U); - DCHECK(!http_network_session_.get() || - (gcm_network_session_.get() != http_network_session_.get())); + DCHECK(!http_network_session_ || + (gcm_network_session_ != http_network_session_)); } ConnectionFactoryImpl::~ConnectionFactoryImpl() { @@ -457,7 +458,7 @@ void ConnectionFactoryImpl::OnProxyResolveDone(int status) { gcm_network_session_->ssl_config_service()->GetSSLConfig(&ssl_config); status = net::InitSocketHandleForTlsConnect( net::HostPortPair::FromURL(GetCurrentEndpoint()), - gcm_network_session_.get(), + gcm_network_session_, proxy_info_, ssl_config, ssl_config, @@ -558,7 +559,7 @@ int ConnectionFactoryImpl::ReconsiderProxyAfterError(int error) { } void ConnectionFactoryImpl::ReportSuccessfulProxyConnection() { - if (gcm_network_session_.get() && gcm_network_session_->proxy_service()) + if (gcm_network_session_ && gcm_network_session_->proxy_service()) gcm_network_session_->proxy_service()->ReportSuccess(proxy_info_, NULL); } @@ -574,7 +575,7 @@ void ConnectionFactoryImpl::CloseSocket() { } void ConnectionFactoryImpl::RebuildNetworkSessionAuthCache() { - if (!http_network_session_.get() || !http_network_session_->http_auth_cache()) + if (!http_network_session_ || !http_network_session_->http_auth_cache()) return; gcm_network_session_->http_auth_cache()->UpdateAllFrom( diff --git a/google_apis/gcm/engine/connection_factory_impl.h b/google_apis/gcm/engine/connection_factory_impl.h index d979208..a07de12 100644 --- a/google_apis/gcm/engine/connection_factory_impl.h +++ b/google_apis/gcm/engine/connection_factory_impl.h @@ -36,11 +36,14 @@ class GCM_EXPORT ConnectionFactoryImpl : // for proxy auth credentials (via its HttpAuthCache). |gcm_network_session| // is the network session through which GCM connections should be made, and // must not be the same as |http_network_session|. + // + // The caller is responsible for making sure the ConnectionFactoryImpl is + // destroyed before the |gcm_network_session| and |http_network_session|. ConnectionFactoryImpl( const std::vector<GURL>& mcs_endpoints, const net::BackoffEntry::Policy& backoff_policy, - const scoped_refptr<net::HttpNetworkSession>& gcm_network_session, - const scoped_refptr<net::HttpNetworkSession>& http_network_session, + net::HttpNetworkSession* gcm_network_session, + net::HttpNetworkSession* http_network_session, net::NetLog* net_log, GCMStatsRecorder* recorder); ~ConnectionFactoryImpl() override; @@ -135,10 +138,10 @@ class GCM_EXPORT ConnectionFactoryImpl : // ---- net:: components for establishing connections. ---- // Network session for creating new GCM connections. - const scoped_refptr<net::HttpNetworkSession> gcm_network_session_; + net::HttpNetworkSession* gcm_network_session_; // HTTP Network session. If set, is used for extracting proxy auth - // credentials. If not set, is ignored. - const scoped_refptr<net::HttpNetworkSession> http_network_session_; + // credentials. If nullptr, is ignored. + net::HttpNetworkSession* http_network_session_; // Net log to use in connection attempts. net::BoundNetLog bound_net_log_; // The current PAC request, if one exists. Owned by the proxy service. diff --git a/google_apis/gcm/tools/mcs_probe.cc b/google_apis/gcm/tools/mcs_probe.cc index 1063db9..b2acc19 100644 --- a/google_apis/gcm/tools/mcs_probe.cc +++ b/google_apis/gcm/tools/mcs_probe.cc @@ -229,7 +229,7 @@ class MCSProbe { scoped_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory_; scoped_ptr<net::HttpServerPropertiesImpl> http_server_properties_; scoped_ptr<net::HostMappingRules> host_mapping_rules_; - scoped_refptr<net::HttpNetworkSession> network_session_; + scoped_ptr<net::HttpNetworkSession> network_session_; scoped_ptr<net::ProxyService> proxy_service_; FakeGCMStatsRecorder recorder_; @@ -293,7 +293,7 @@ void MCSProbe::Start() { connection_factory_.reset( new ConnectionFactoryImpl(endpoints, kDefaultBackoffPolicy, - network_session_, + network_session_.get(), NULL, &net_log_, &recorder_)); @@ -403,7 +403,7 @@ void MCSProbe::BuildNetworkSession() { session_params.net_log = &net_log_; session_params.proxy_service = proxy_service_.get(); - network_session_ = new net::HttpNetworkSession(session_params); + network_session_.reset(new net::HttpNetworkSession(session_params)); } void MCSProbe::ErrorCallback() { diff --git a/ios/crnet/crnet_environment.mm b/ios/crnet/crnet_environment.mm index bba2eb1..57bf231 100644 --- a/ios/crnet/crnet_environment.mm +++ b/ios/crnet/crnet_environment.mm @@ -451,7 +451,12 @@ void CrNetEnvironment::InitializeOnNetworkThread() { base::WorkerPool::GetTaskRunner(true)); } - net::HttpCache* main_cache = new net::HttpCache(params, main_backend); + // TODO(mmenke): These really shouldn't be leaked. + // See https://crbug.com/523858. + net::HttpNetworkSession* http_network_session = + new net::HttpNetworkSession(params); + net::HttpCache* main_cache = new net::HttpCache( + http_network_session, main_backend, true /* set_up_quic_server_info */); main_context_->set_http_transaction_factory(main_cache); // Cookies diff --git a/ios/web/shell/shell_url_request_context_getter.cc b/ios/web/shell/shell_url_request_context_getter.cc index 8de4836..2f862c0 100644 --- a/ios/web/shell/shell_url_request_context_getter.cc +++ b/ios/web/shell/shell_url_request_context_getter.cc @@ -135,8 +135,11 @@ net::URLRequestContext* ShellURLRequestContextGetter::GetURLRequestContext() { net::CACHE_BACKEND_DEFAULT, cache_path, 0, cache_task_runner_); + storage_->set_http_network_session( + make_scoped_ptr(new net::HttpNetworkSession(network_session_params))); storage_->set_http_transaction_factory(make_scoped_ptr( - new net::HttpCache(network_session_params, main_backend))); + new net::HttpCache(storage_->http_network_session(), main_backend, + true /* set_up_quic_server_info */))); scoped_ptr<net::URLRequestJobFactoryImpl> job_factory( new net::URLRequestJobFactoryImpl()); diff --git a/jingle/glue/proxy_resolving_client_socket.cc b/jingle/glue/proxy_resolving_client_socket.cc index 1fdb3ea..e71f362 100644 --- a/jingle/glue/proxy_resolving_client_socket.cc +++ b/jingle/glue/proxy_resolving_client_socket.cc @@ -90,7 +90,7 @@ ProxyResolvingClientSocket::ProxyResolvingClientSocket( reference_params->use_alternative_services; } - network_session_ = new net::HttpNetworkSession(session_params); + network_session_.reset(new net::HttpNetworkSession(session_params)); } ProxyResolvingClientSocket::~ProxyResolvingClientSocket() { diff --git a/jingle/glue/proxy_resolving_client_socket.h b/jingle/glue/proxy_resolving_client_socket.h index e8f22ce..14c8e24 100644 --- a/jingle/glue/proxy_resolving_client_socket.h +++ b/jingle/glue/proxy_resolving_client_socket.h @@ -89,7 +89,7 @@ class ProxyResolvingClientSocket : public net::StreamSocket { net::CompletionCallback proxy_resolve_callback_; net::CompletionCallback connect_callback_; - scoped_refptr<net::HttpNetworkSession> network_session_; + scoped_ptr<net::HttpNetworkSession> network_session_; // The transport socket. scoped_ptr<net::ClientSocketHandle> transport_; diff --git a/net/cert_net/cert_net_fetcher_impl_unittest.cc b/net/cert_net/cert_net_fetcher_impl_unittest.cc index 1698855..e3337a0 100644 --- a/net/cert_net/cert_net_fetcher_impl_unittest.cc +++ b/net/cert_net/cert_net_fetcher_impl_unittest.cc @@ -49,12 +49,11 @@ class RequestContext : public URLRequestContext { params.proxy_service = proxy_service(); params.ssl_config_service = ssl_config_service(); params.http_server_properties = http_server_properties(); - scoped_refptr<HttpNetworkSession> network_session( - new HttpNetworkSession(params)); - storage_.set_http_transaction_factory( - make_scoped_ptr(new HttpCache(network_session.get(), - HttpCache::DefaultBackend::InMemory(0))) - .Pass()); + storage_.set_http_network_session( + make_scoped_ptr(new HttpNetworkSession(params))); + storage_.set_http_transaction_factory(make_scoped_ptr(new HttpCache( + storage_.http_network_session(), HttpCache::DefaultBackend::InMemory(0), + false /* set_up_quic_server_info */))); storage_.set_job_factory(make_scoped_ptr(new URLRequestJobFactoryImpl())); } diff --git a/net/http/http_cache.cc b/net/http/http_cache.cc index b3a6b2c..7494b86 100644 --- a/net/http/http_cache.cc +++ b/net/http/http_cache.cc @@ -294,39 +294,20 @@ class HttpCache::QuicServerInfoFactoryAdaptor : public QuicServerInfoFactory { }; //----------------------------------------------------------------------------- -HttpCache::HttpCache(const HttpNetworkSession::Params& params, - BackendFactory* backend_factory) - : net_log_(params.net_log), - backend_factory_(backend_factory), - building_backend_(false), - bypass_lock_for_test_(false), - fail_conditionalization_for_test_(false), - mode_(NORMAL), - network_layer_(new HttpNetworkLayer(new HttpNetworkSession(params))), - clock_(new base::DefaultClock()), - weak_factory_(this) { - SetupQuicServerInfoFactory(network_layer_->GetSession()); -} - - // This call doesn't change the shared |session|'s QuicServerInfoFactory because // |session| is shared. HttpCache::HttpCache(HttpNetworkSession* session, - BackendFactory* backend_factory) - : net_log_(session->net_log()), - backend_factory_(backend_factory), - building_backend_(false), - bypass_lock_for_test_(false), - fail_conditionalization_for_test_(false), - mode_(NORMAL), - network_layer_(new HttpNetworkLayer(session)), - clock_(new base::DefaultClock()), - weak_factory_(this) { -} + BackendFactory* backend_factory, + bool set_up_quic_server_info) + : HttpCache(new HttpNetworkLayer(session), + session->net_log(), + backend_factory, + set_up_quic_server_info) {} HttpCache::HttpCache(HttpTransactionFactory* network_layer, NetLog* net_log, - BackendFactory* backend_factory) + BackendFactory* backend_factory, + bool set_up_quic_server_info) : net_log_(net_log), backend_factory_(backend_factory), building_backend_(false), @@ -336,7 +317,8 @@ HttpCache::HttpCache(HttpTransactionFactory* network_layer, network_layer_(network_layer), clock_(new base::DefaultClock()), weak_factory_(this) { - SetupQuicServerInfoFactory(network_layer_->GetSession()); + if (set_up_quic_server_info) + SetupQuicServerInfoFactory(network_layer_->GetSession()); } HttpCache::~HttpCache() { diff --git a/net/http/http_cache.h b/net/http/http_cache.h index 6c58e3a..d504941 100644 --- a/net/http/http_cache.h +++ b/net/http/http_cache.h @@ -126,23 +126,26 @@ class NET_EXPORT HttpCache : public HttpTransactionFactory, static const int kPrefetchReuseMins = 5; // The disk cache is initialized lazily (by CreateTransaction) in this case. - // The HttpCache takes ownership of the |backend_factory|. - HttpCache(const HttpNetworkSession::Params& params, - BackendFactory* backend_factory); - - // 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. authentication data). The // HttpCache takes ownership of the |backend_factory|. - HttpCache(HttpNetworkSession* session, BackendFactory* backend_factory); + // + // The HttpCache must be destroyed before the HttpNetworkSession. + // + // If |set_up_quic_server_info| is true, configures the cache to track + // information about servers supporting QUIC. + HttpCache(HttpNetworkSession* session, + BackendFactory* backend_factory, + bool set_up_quic_server_info); // Initialize the cache from its component parts. The lifetime of the // |network_layer| and |backend_factory| are managed by the HttpCache and // will be destroyed using |delete| when the HttpCache is destroyed. HttpCache(HttpTransactionFactory* network_layer, NetLog* net_log, - BackendFactory* backend_factory); + BackendFactory* backend_factory, + bool set_up_quic_server_info); ~HttpCache() override; diff --git a/net/http/http_network_layer.cc b/net/http/http_network_layer.cc index 8e6b35c..169a1cc 100644 --- a/net/http/http_network_layer.cc +++ b/net/http/http_network_layer.cc @@ -22,11 +22,11 @@ namespace net { HttpNetworkLayer::HttpNetworkLayer(HttpNetworkSession* session) : session_(session), suspended_(false) { - DCHECK(session_.get()); + DCHECK(session_); #if defined(OS_WIN) - base::PowerMonitor* power_monitor = base::PowerMonitor::Get(); - if (power_monitor) - power_monitor->AddObserver(this); + base::PowerMonitor* power_monitor = base::PowerMonitor::Get(); + if (power_monitor) + power_monitor->AddObserver(this); #endif } @@ -51,13 +51,13 @@ HttpCache* HttpNetworkLayer::GetCache() { return NULL; } -HttpNetworkSession* HttpNetworkLayer::GetSession() { return session_.get(); } +HttpNetworkSession* HttpNetworkLayer::GetSession() { + return session_; +} void HttpNetworkLayer::OnSuspend() { suspended_ = true; - - if (session_.get()) - session_->CloseIdleConnections(); + session_->CloseIdleConnections(); } void HttpNetworkLayer::OnResume() { diff --git a/net/http/http_network_layer.h b/net/http/http_network_layer.h index 5ade926..89ff8eb 100644 --- a/net/http/http_network_layer.h +++ b/net/http/http_network_layer.h @@ -26,7 +26,8 @@ class NET_EXPORT HttpNetworkLayer NON_EXPORTED_BASE(public base::NonThreadSafe) { public: // Construct a HttpNetworkLayer with an existing HttpNetworkSession which - // contains a valid ProxyService. + // contains a valid ProxyService. The HttpNetworkLayer must be destroyed + // before |session|. explicit HttpNetworkLayer(HttpNetworkSession* session); ~HttpNetworkLayer() override; @@ -41,7 +42,7 @@ class NET_EXPORT HttpNetworkLayer void OnResume() override; private: - const scoped_refptr<HttpNetworkSession> session_; + HttpNetworkSession* const session_; bool suspended_; DISALLOW_COPY_AND_ASSIGN(HttpNetworkLayer); diff --git a/net/http/http_network_layer_unittest.cc b/net/http/http_network_layer_unittest.cc index 153423e..7840902 100644 --- a/net/http/http_network_layer_unittest.cc +++ b/net/http/http_network_layer_unittest.cc @@ -45,7 +45,7 @@ class HttpNetworkLayerTest : public PlatformTest { session_params.ssl_config_service = ssl_config_service_.get(); session_params.http_server_properties = http_server_properties_.GetWeakPtr(); - network_session_ = new HttpNetworkSession(session_params); + network_session_.reset(new HttpNetworkSession(session_params)); factory_.reset(new HttpNetworkLayer(network_session_.get())); } @@ -259,7 +259,7 @@ class HttpNetworkLayerTest : public PlatformTest { scoped_ptr<TransportSecurityState> transport_security_state_; scoped_ptr<ProxyService> proxy_service_; const scoped_refptr<SSLConfigService> ssl_config_service_; - scoped_refptr<HttpNetworkSession> network_session_; + scoped_ptr<HttpNetworkSession> network_session_; scoped_ptr<HttpNetworkLayer> factory_; HttpServerPropertiesImpl http_server_properties_; }; diff --git a/net/http/http_network_session.h b/net/http/http_network_session.h index a587acf..27ed595 100644 --- a/net/http/http_network_session.h +++ b/net/http/http_network_session.h @@ -57,8 +57,7 @@ class TransportSecurityState; // This class holds session objects used by HttpNetworkTransaction objects. class NET_EXPORT HttpNetworkSession - : public base::RefCounted<HttpNetworkSession>, - NON_EXPORTED_BASE(public base::NonThreadSafe) { + : NON_EXPORTED_BASE(public base::NonThreadSafe) { public: struct NET_EXPORT Params { Params(); @@ -142,6 +141,7 @@ class NET_EXPORT HttpNetworkSession }; explicit HttpNetworkSession(const Params& params); + ~HttpNetworkSession(); HttpAuthCache* http_auth_cache() { return &http_auth_cache_; } SSLClientAuthCache* ssl_client_auth_cache() { @@ -214,11 +214,8 @@ class NET_EXPORT HttpNetworkSession bool HasSpdyExclusion(HostPortPair host_port_pair) const; private: - friend class base::RefCounted<HttpNetworkSession>; friend class HttpNetworkSessionPeer; - ~HttpNetworkSession(); - ClientSocketPoolManager* GetSocketPoolManager(SocketPoolType pool_type); NetLog* const net_log_; diff --git a/net/http/http_network_session_peer.cc b/net/http/http_network_session_peer.cc index a32e48b..a5fb8a5 100644 --- a/net/http/http_network_session_peer.cc +++ b/net/http/http_network_session_peer.cc @@ -14,8 +14,7 @@ namespace net { -HttpNetworkSessionPeer::HttpNetworkSessionPeer( - const scoped_refptr<HttpNetworkSession>& session) +HttpNetworkSessionPeer::HttpNetworkSessionPeer(HttpNetworkSession* session) : session_(session) {} HttpNetworkSessionPeer::~HttpNetworkSessionPeer() {} diff --git a/net/http/http_network_session_peer.h b/net/http/http_network_session_peer.h index 755e539..ae57f39 100644 --- a/net/http/http_network_session_peer.h +++ b/net/http/http_network_session_peer.h @@ -18,8 +18,8 @@ class ProxyService; class NET_EXPORT_PRIVATE HttpNetworkSessionPeer { public: - explicit HttpNetworkSessionPeer( - const scoped_refptr<HttpNetworkSession>& session); + // |session| should outlive the HttpNetworkSessionPeer. + explicit HttpNetworkSessionPeer(HttpNetworkSession* session); ~HttpNetworkSessionPeer(); void SetClientSocketPoolManager( @@ -32,7 +32,7 @@ class NET_EXPORT_PRIVATE HttpNetworkSessionPeer { scoped_ptr<HttpStreamFactory> http_stream_factory_for_websocket); private: - const scoped_refptr<HttpNetworkSession> session_; + HttpNetworkSession* const session_; DISALLOW_COPY_AND_ASSIGN(HttpNetworkSessionPeer); }; diff --git a/net/http/http_network_transaction_ssl_unittest.cc b/net/http/http_network_transaction_ssl_unittest.cc index da28d9c..82b905d 100644 --- a/net/http/http_network_transaction_ssl_unittest.cc +++ b/net/http/http_network_transaction_ssl_unittest.cc @@ -127,16 +127,14 @@ TEST_F(HttpNetworkTransactionSSLTest, SSLFallback) { StaticSocketDataProvider data3(NULL, 0, NULL, 0); mock_socket_factory_.AddSocketDataProvider(&data3); - scoped_refptr<HttpNetworkSession> session( - new HttpNetworkSession(session_params_)); - scoped_ptr<HttpNetworkTransaction> trans( - new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); + HttpNetworkSession session(session_params_); + HttpNetworkTransaction trans(DEFAULT_PRIORITY, &session); TestCompletionCallback callback; // This will consume |ssl_data1|, |ssl_data2| and |ssl_data3|. - int rv = callback.GetResult( - trans->Start(GetRequestInfo("https://www.paypal.com/"), - callback.callback(), BoundNetLog())); + int rv = + callback.GetResult(trans.Start(GetRequestInfo("https://www.paypal.com/"), + callback.callback(), BoundNetLog())); EXPECT_EQ(ERR_SSL_PROTOCOL_ERROR, rv); SocketDataProviderArray<SocketDataProvider>& mock_data = @@ -144,7 +142,7 @@ TEST_F(HttpNetworkTransactionSSLTest, SSLFallback) { // Confirms that |ssl_data1|, |ssl_data2| and |ssl_data3| are consumed. EXPECT_EQ(3u, mock_data.next_index()); - SSLConfig& ssl_config = GetServerSSLConfig(trans.get()); + SSLConfig& ssl_config = GetServerSSLConfig(&trans); // |version_max| fallbacks to TLS 1.0. EXPECT_EQ(SSL_PROTOCOL_VERSION_TLS1, ssl_config.version_max); EXPECT_TRUE(ssl_config.version_fallback); diff --git a/net/http/http_network_transaction_unittest.cc b/net/http/http_network_transaction_unittest.cc index 670db0b..2de6429 100644 --- a/net/http/http_network_transaction_unittest.cc +++ b/net/http/http_network_transaction_unittest.cc @@ -232,7 +232,8 @@ void AddWebSocketHeaders(HttpRequestHeaders* headers) { headers->SetHeader("Sec-WebSocket-Key", "dGhlIHNhbXBsZSBub25jZQ=="); } -HttpNetworkSession* CreateSession(SpdySessionDependencies* session_deps) { +scoped_ptr<HttpNetworkSession> CreateSession( + SpdySessionDependencies* session_deps) { return SpdySessionDependencies::SpdyCreateSession(session_deps); } @@ -328,7 +329,7 @@ class HttpNetworkTransactionTest BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -679,7 +680,7 @@ bool CheckNTLMServerAuth(const AuthChallengeInfo* auth_challenge) { } // namespace TEST_P(HttpNetworkTransactionTest, Basic) { - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); } @@ -1000,7 +1001,7 @@ TEST_P(HttpNetworkTransactionTest, TwoIdenticalLocationHeaders) { request.url = GURL("http://redirect.com/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1045,7 +1046,7 @@ TEST_P(HttpNetworkTransactionTest, Head) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); BeforeProxyHeadersSentHandler proxy_headers_handler; @@ -1105,7 +1106,7 @@ TEST_P(HttpNetworkTransactionTest, Head) { } TEST_P(HttpNetworkTransactionTest, ReuseConnection) { - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockRead data_reads[] = { MockRead("HTTP/1.1 200 OK\r\nContent-Length: 5\r\n\r\n"), @@ -1163,7 +1164,7 @@ TEST_P(HttpNetworkTransactionTest, Ignores100) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1205,7 +1206,7 @@ TEST_P(HttpNetworkTransactionTest, Ignores1xx) { request.url = GURL("http://www.foo.com/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1244,7 +1245,7 @@ TEST_P(HttpNetworkTransactionTest, Incomplete100ThenEOF) { request.url = GURL("http://www.foo.com/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1275,7 +1276,7 @@ TEST_P(HttpNetworkTransactionTest, EmptyResponse) { request.url = GURL("http://www.foo.com/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1304,7 +1305,7 @@ void HttpNetworkTransactionTest::KeepAliveConnectionResendRequestTest( TestNetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Written data for successfully sending both requests. MockWrite data1_writes[] = { @@ -1394,7 +1395,7 @@ void HttpNetworkTransactionTest::PreconnectErrorResendRequestTest( TestNetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); SSLSocketDataProvider ssl1(ASYNC, OK); SSLSocketDataProvider ssl2(ASYNC, OK); @@ -1590,7 +1591,7 @@ TEST_P(HttpNetworkTransactionTest, NonKeepAliveConnectionReset) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1644,7 +1645,7 @@ TEST_P(HttpNetworkTransactionTest, ThrottleBeforeNetworkStart) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1693,7 +1694,7 @@ TEST_P(HttpNetworkTransactionTest, ThrottleAndCancelBeforeNetworkStart) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1724,7 +1725,7 @@ TEST_P(HttpNetworkTransactionTest, KeepAliveEarlyClose) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1765,7 +1766,7 @@ TEST_P(HttpNetworkTransactionTest, KeepAliveEarlyClose2) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -1807,7 +1808,7 @@ TEST_P(HttpNetworkTransactionTest, KeepAliveAfterUnreadBody) { TestNetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Note that because all these reads happen in the same // StaticSocketDataProvider, it shows that the same socket is being reused for @@ -1916,7 +1917,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuth) { TestNetLog log; session_deps_.net_log = &log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -2027,7 +2028,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthWithAddressChange) { MockHostResolver* resolver = new MockHostResolver(); session_deps_.net_log = &log; session_deps_.host_resolver.reset(resolver); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session = CreateSession(&session_deps_); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -2137,7 +2138,7 @@ TEST_P(HttpNetworkTransactionTest, DoNotSendAuth) { request.url = GURL("http://www.example.org/"); request.load_flags = LOAD_DO_NOT_SEND_AUTH_DATA; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -2188,7 +2189,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthKeepAlive) { TestNetLog log; session_deps_.net_log = &log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockWrite data_writes1[] = { MockWrite( @@ -2291,7 +2292,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthKeepAliveNoBody) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockWrite data_writes1[] = { MockWrite( @@ -2369,7 +2370,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthKeepAliveLargeBody) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockWrite data_writes1[] = { MockWrite( @@ -2455,7 +2456,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthKeepAliveImpatientServer) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockWrite data_writes1[] = { MockWrite( @@ -2550,7 +2551,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthProxyNoKeepAliveHttp10) { ProxyService::CreateFixedFromPacResult("PROXY myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should try to establish tunnel. MockWrite data_writes1[] = { @@ -2674,7 +2675,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthProxyNoKeepAliveHttp11) { ProxyService::CreateFixedFromPacResult("PROXY myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should try to establish tunnel. MockWrite data_writes1[] = { @@ -2798,7 +2799,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthProxyKeepAliveHttp10) { session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -2905,7 +2906,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthProxyKeepAliveHttp11) { session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -3009,7 +3010,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthProxyKeepAliveHangupDuringBody) { // Configure against proxy server "myproxy:70". session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session = CreateSession(&session_deps_); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -3099,7 +3100,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthProxyCancelTunnel) { // Configure against proxy server "myproxy:70". session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -3159,7 +3160,7 @@ TEST_P(HttpNetworkTransactionTest, SanitizeProxyAuthHeaders) { // Configure against proxy server "myproxy:70". session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -3220,7 +3221,7 @@ TEST_P(HttpNetworkTransactionTest, UnexpectedProxyAuth) { request.load_flags = 0; // We are using a DIRECT connection (i.e. no proxy) for this session. - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -3268,7 +3269,7 @@ TEST_P(HttpNetworkTransactionTest, session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should try to establish tunnel. MockWrite data_writes1[] = { @@ -3343,7 +3344,7 @@ TEST_P(HttpNetworkTransactionTest, // Add NetLog just so can verify load timing information gets a NetLog ID. NetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session = CreateSession(&session_deps_); // Since we have proxy, should try to establish tunnel. MockWrite data_writes1[] = { @@ -3460,7 +3461,7 @@ TEST_P(HttpNetworkTransactionTest, // Add NetLog just so can verify load timing information gets a NetLog ID. NetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session = CreateSession(&session_deps_); // Should try to establish tunnel. MockWrite data_writes1[] = { @@ -3582,7 +3583,7 @@ TEST_P(HttpNetworkTransactionTest, // Add NetLog just so can verify load timing information gets a NetLog ID. NetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session = CreateSession(&session_deps_); // Should try to establish tunnel. MockWrite data_writes1[] = { @@ -3686,7 +3687,7 @@ TEST_P(HttpNetworkTransactionTest, // Add NetLog just so can verify load timing information gets a NetLog ID. NetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session = CreateSession(&session_deps_); // Should try to establish tunnel. MockWrite data_writes1[] = { @@ -3773,7 +3774,7 @@ TEST_P(HttpNetworkTransactionTest, HttpProxyLoadTimingNoPacTwoRequests) { session_deps_.proxy_service = ProxyService::CreateFixed("PROXY myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should try to establish tunnel. MockWrite data_writes1[] = { @@ -3874,7 +3875,7 @@ TEST_P(HttpNetworkTransactionTest, HttpProxyLoadTimingWithPacTwoRequests) { ProxyService::CreateFixedFromPacResult("PROXY myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should try to establish tunnel. MockWrite data_writes1[] = { @@ -3971,7 +3972,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxyGet) { session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should use full url MockWrite data_writes1[] = { @@ -4033,7 +4034,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxySpdyGet) { session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // fetch http://www.example.org/ via SPDY scoped_ptr<SpdyFrame> req( @@ -4093,7 +4094,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxySpdyGetWithSessionRace) { session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Fetch http://www.example.org/ through the SPDY proxy. scoped_ptr<SpdyFrame> req( @@ -4131,7 +4132,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxySpdyGetWithSessionRace) { SpdySessionKey key( HostPortPair("proxy", 70), ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> spdy_session = - CreateSecureSpdySession(session, key, log.bound()); + CreateSecureSpdySession(session.get(), key, log.bound()); // Unstall the resolution begun by the transaction. session_deps_.host_resolver->set_ondemand_mode(true); @@ -4162,7 +4163,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxySpdyGetWithProxyAuth) { session_deps_.proxy_service = ProxyService::CreateFixed("https://myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // The first request will be a bare GET, the second request will be a // GET with a Proxy-Authorization header. @@ -4262,7 +4263,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxySpdyConnectHttps) { session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -4346,7 +4347,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxySpdyConnectSpdy) { session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -4437,7 +4438,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxySpdyConnectFailure) { session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -4488,7 +4489,7 @@ TEST_P(HttpNetworkTransactionTest, session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps_)); HttpRequestInfo request1; @@ -4630,7 +4631,7 @@ TEST_P(HttpNetworkTransactionTest, session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps_)); HttpRequestInfo request1; @@ -4753,7 +4754,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxySpdyLoadTimingTwoHttpRequests) { session_deps_.proxy_service = ProxyService::CreateFixed("https://proxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps_)); HttpRequestInfo request1; @@ -4859,7 +4860,7 @@ TEST_P(HttpNetworkTransactionTest, HttpsProxyAuthRetry) { session_deps_.proxy_service = ProxyService::CreateFixed("https://myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should use full url MockWrite data_writes1[] = { @@ -4956,7 +4957,7 @@ void HttpNetworkTransactionTest::ConnectStatusHelperWithExpectedStatus( // Configure against proxy server "myproxy:70". session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should try to establish tunnel. MockWrite data_writes[] = { @@ -5174,7 +5175,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthProxyThenServer) { // Configure against proxy server "myproxy:70". session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -5310,7 +5311,7 @@ TEST_P(HttpNetworkTransactionTest, NTLMAuth1) { HttpAuthHandlerNTLM::ScopedProcSetter proc_setter(MockGenerateRandom1, MockGetHostName); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockWrite data_writes1[] = { MockWrite("GET /kids/login.aspx HTTP/1.1\r\n" @@ -5439,7 +5440,7 @@ TEST_P(HttpNetworkTransactionTest, NTLMAuth2) { HttpAuthHandlerNTLM::ScopedProcSetter proc_setter(MockGenerateRandom2, MockGetHostName); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockWrite data_writes1[] = { MockWrite("GET /kids/login.aspx HTTP/1.1\r\n" @@ -5639,7 +5640,7 @@ TEST_P(HttpNetworkTransactionTest, LargeHeadersNoBody) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -5678,7 +5679,7 @@ TEST_P(HttpNetworkTransactionTest, // Configure against proxy server "myproxy:70". session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -5732,7 +5733,7 @@ TEST_P(HttpNetworkTransactionTest, RecycleSocket) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -5811,7 +5812,7 @@ TEST_P(HttpNetworkTransactionTest, RecycleSSLSocket) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -5881,7 +5882,7 @@ TEST_P(HttpNetworkTransactionTest, RecycleDeadSSLSocket) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -5949,7 +5950,7 @@ TEST_P(HttpNetworkTransactionTest, RecycleSocketAfterZeroContentLength) { "rt=prt.2642,ol.2649,xjs.2951"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -6015,7 +6016,7 @@ TEST_P(HttpNetworkTransactionTest, ResendRequestOnWriteBodyError) { request[1].upload_data_stream = &upload_data_stream; request[1].load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // The first socket is used for transaction 1 and the first attempt of // transaction 2. @@ -6093,7 +6094,7 @@ TEST_P(HttpNetworkTransactionTest, AuthIdentityInURL) { request.url = GURL("http://foo:b@r@www.example.org/"); request.load_flags = LOAD_NORMAL; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -6176,7 +6177,7 @@ TEST_P(HttpNetworkTransactionTest, WrongAuthIdentityInURL) { request.load_flags = LOAD_NORMAL; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -6287,7 +6288,7 @@ TEST_P(HttpNetworkTransactionTest, AuthIdentityInURLSuppressed) { request.url = GURL("http://foo:bar@www.example.org/"); request.load_flags = LOAD_DO_NOT_USE_EMBEDDED_IDENTITY; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -6361,7 +6362,7 @@ TEST_P(HttpNetworkTransactionTest, AuthIdentityInURLSuppressed) { // Test that previously tried username/passwords for a realm get re-used. TEST_P(HttpNetworkTransactionTest, BasicAuthCacheAndPreauth) { - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Transaction 1: authenticate (foo, bar) on MyRealm1 { @@ -6761,7 +6762,7 @@ TEST_P(HttpNetworkTransactionTest, DigestPreAuthNonceCount) { new HttpAuthHandlerDigest::FixedNonceGenerator("0123456789abcdef"); digest_factory->set_nonce_generator(nonce_generator); session_deps_.http_auth_handler_factory.reset(digest_factory); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Transaction 1: authenticate (foo, bar) on MyRealm1 { @@ -6893,7 +6894,7 @@ TEST_P(HttpNetworkTransactionTest, DigestPreAuthNonceCount) { // Test the ResetStateForRestart() private method. TEST_P(HttpNetworkTransactionTest, ResetStateForRestart) { // Create a transaction (the dependencies aren't important). - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpNetworkTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -6940,7 +6941,7 @@ TEST_P(HttpNetworkTransactionTest, HTTPSBadCertificate) { request.url = GURL("https://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7048,7 +7049,7 @@ TEST_P(HttpNetworkTransactionTest, HTTPSBadCertificateViaProxy) { for (int i = 0; i < 2; i++) { session_deps_.socket_factory->ResetNextMockIndexes(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7114,7 +7115,7 @@ TEST_P(HttpNetworkTransactionTest, HTTPSViaHttpsProxy) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7173,7 +7174,7 @@ TEST_P(HttpNetworkTransactionTest, RedirectOfHttpsConnectViaHttpsProxy) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7254,7 +7255,7 @@ TEST_P(HttpNetworkTransactionTest, RedirectOfHttpsConnectViaSpdyProxy) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7306,7 +7307,7 @@ TEST_P(HttpNetworkTransactionTest, TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7363,7 +7364,7 @@ TEST_P(HttpNetworkTransactionTest, TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7390,7 +7391,7 @@ TEST_P(HttpNetworkTransactionTest, BasicAuthSpdyProxy) { ProxyService::CreateFixedFromPacResult("HTTPS myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since we have proxy, should try to establish tunnel. scoped_ptr<SpdyFrame> req(spdy_util_.ConstructSpdyConnect( @@ -7535,7 +7536,7 @@ TEST_P(HttpNetworkTransactionTest, CrossOriginProxyPush) { // Enable cross-origin push. session_deps_.trusted_spdy_proxy = "myproxy:70"; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<SpdyFrame> stream1_syn( spdy_util_.ConstructSpdyGet(NULL, 0, false, 1, LOWEST, false)); @@ -7648,7 +7649,7 @@ TEST_P(HttpNetworkTransactionTest, CrossOriginProxyPushCorrectness) { // Enable cross-origin push. session_deps_.trusted_spdy_proxy = "myproxy:70"; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<SpdyFrame> stream1_syn( spdy_util_.ConstructSpdyGet(NULL, 0, false, 1, LOWEST, false)); @@ -7776,7 +7777,7 @@ TEST_P(HttpNetworkTransactionTest, HTTPSBadCertificateViaHttpsProxy) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7805,7 +7806,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_UserAgent) { request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chromium Ultra Awesome X Edition"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7846,7 +7847,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_UserAgentOverTunnel) { "Chromium Ultra Awesome X Edition"); session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7886,7 +7887,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_Referer) { request.extra_headers.SetHeader(HttpRequestHeaders::kReferer, "http://the.previous.site.com/"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7924,7 +7925,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_PostContentLengthZero) { request.method = "POST"; request.url = GURL("http://www.example.org/"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -7962,7 +7963,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_PutContentLengthZero) { request.method = "PUT"; request.url = GURL("http://www.example.org/"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8000,7 +8001,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_HeadContentLengthZero) { request.method = "HEAD"; request.url = GURL("http://www.example.org/"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8037,7 +8038,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_CacheControlNoCache) { request.url = GURL("http://www.example.org/"); request.load_flags = LOAD_BYPASS_CACHE; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8078,7 +8079,7 @@ TEST_P(HttpNetworkTransactionTest, request.url = GURL("http://www.example.org/"); request.load_flags = LOAD_VALIDATE_CACHE; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8117,7 +8118,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_ExtraHeaders) { request.url = GURL("http://www.example.org/"); request.extra_headers.SetHeader("FooHeader", "Bar"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8158,7 +8159,7 @@ TEST_P(HttpNetworkTransactionTest, BuildRequest_ExtraHeadersStripped) { request.extra_headers.SetHeader("hEllo", "Kitty"); request.extra_headers.SetHeader("FoO", "bar"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8204,7 +8205,7 @@ TEST_P(HttpNetworkTransactionTest, SOCKS4_HTTP_GET) { TestNetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8263,7 +8264,7 @@ TEST_P(HttpNetworkTransactionTest, SOCKS4_SSL_GET) { TestNetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8327,7 +8328,7 @@ TEST_P(HttpNetworkTransactionTest, SOCKS4_HTTP_GET_no_PAC) { TestNetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8386,7 +8387,7 @@ TEST_P(HttpNetworkTransactionTest, SOCKS5_HTTP_GET) { TestNetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8458,7 +8459,7 @@ TEST_P(HttpNetworkTransactionTest, SOCKS5_SSL_GET) { TestNetLog net_log; session_deps_.net_log = &net_log; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8535,10 +8536,10 @@ struct GroupNameTest { bool ssl; }; -scoped_refptr<HttpNetworkSession> SetupSessionForGroupNameTests( +scoped_ptr<HttpNetworkSession> SetupSessionForGroupNameTests( NextProto next_proto, SpdySessionDependencies* session_deps_) { - scoped_refptr<HttpNetworkSession> session(CreateSession(session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -8552,16 +8553,15 @@ scoped_refptr<HttpNetworkSession> SetupSessionForGroupNameTests( return session; } -int GroupNameTransactionHelper( - const std::string& url, - const scoped_refptr<HttpNetworkSession>& session) { +int GroupNameTransactionHelper(const std::string& url, + HttpNetworkSession* session) { HttpRequestInfo request; request.method = "GET"; request.url = GURL(url); request.load_flags = 0; scoped_ptr<HttpTransaction> trans( - new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, session)); TestCompletionCallback callback; @@ -8612,10 +8612,10 @@ TEST_P(HttpNetworkTransactionTest, GroupNameForDirectConnections) { for (size_t i = 0; i < arraysize(tests); ++i) { session_deps_.proxy_service = ProxyService::CreateFixed(tests[i].proxy_server); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SetupSessionForGroupNameTests(GetParam(), &session_deps_)); - HttpNetworkSessionPeer peer(session); + HttpNetworkSessionPeer peer(session.get()); CaptureGroupNameTransportSocketPool* transport_conn_pool = new CaptureGroupNameTransportSocketPool(NULL, NULL); CaptureGroupNameSSLSocketPool* ssl_conn_pool = @@ -8627,7 +8627,7 @@ TEST_P(HttpNetworkTransactionTest, GroupNameForDirectConnections) { peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); EXPECT_EQ(ERR_IO_PENDING, - GroupNameTransactionHelper(tests[i].url, session)); + GroupNameTransactionHelper(tests[i].url, session.get())); if (tests[i].ssl) EXPECT_EQ(tests[i].expected_group_name, ssl_conn_pool->last_group_name_received()); @@ -8674,10 +8674,10 @@ TEST_P(HttpNetworkTransactionTest, GroupNameForHTTPProxyConnections) { for (size_t i = 0; i < arraysize(tests); ++i) { session_deps_.proxy_service = ProxyService::CreateFixed(tests[i].proxy_server); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SetupSessionForGroupNameTests(GetParam(), &session_deps_)); - HttpNetworkSessionPeer peer(session); + HttpNetworkSessionPeer peer(session.get()); HostPortPair proxy_host("http_proxy", 80); CaptureGroupNameHttpProxySocketPool* http_proxy_pool = @@ -8692,7 +8692,7 @@ TEST_P(HttpNetworkTransactionTest, GroupNameForHTTPProxyConnections) { peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); EXPECT_EQ(ERR_IO_PENDING, - GroupNameTransactionHelper(tests[i].url, session)); + GroupNameTransactionHelper(tests[i].url, session.get())); if (tests[i].ssl) EXPECT_EQ(tests[i].expected_group_name, ssl_conn_pool->last_group_name_received()); @@ -8744,10 +8744,10 @@ TEST_P(HttpNetworkTransactionTest, GroupNameForSOCKSConnections) { for (size_t i = 0; i < arraysize(tests); ++i) { session_deps_.proxy_service = ProxyService::CreateFixed(tests[i].proxy_server); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SetupSessionForGroupNameTests(GetParam(), &session_deps_)); - HttpNetworkSessionPeer peer(session); + HttpNetworkSessionPeer peer(session.get()); HostPortPair proxy_host("socks_proxy", 1080); CaptureGroupNameSOCKSSocketPool* socks_conn_pool = @@ -8765,7 +8765,7 @@ TEST_P(HttpNetworkTransactionTest, GroupNameForSOCKSConnections) { new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); EXPECT_EQ(ERR_IO_PENDING, - GroupNameTransactionHelper(tests[i].url, session)); + GroupNameTransactionHelper(tests[i].url, session.get())); if (tests[i].ssl) EXPECT_EQ(tests[i].expected_group_name, ssl_conn_pool->last_group_name_received()); @@ -8787,7 +8787,7 @@ TEST_P(HttpNetworkTransactionTest, ReconsiderProxyAfterFailedConnection) { // connecting to both proxies (myproxy:70 and foobar:80). session_deps_.host_resolver->rules()->AddSimulatedFailure("*"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8813,7 +8813,7 @@ void HttpNetworkTransactionTest::BypassHostCacheOnRefreshHelper( // Select a host resolver that does caching. session_deps_.host_resolver.reset(new MockCachingHostResolver); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -8882,7 +8882,7 @@ TEST_P(HttpNetworkTransactionTest, RequestWriteError) { StaticSocketDataProvider data(NULL, 0, write_failure, arraysize(write_failure)); session_deps_.socket_factory->AddSocketDataProvider(&data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); TestCompletionCallback callback; @@ -8914,7 +8914,7 @@ TEST_P(HttpNetworkTransactionTest, ConnectionClosedAfterStartOfHeaders) { StaticSocketDataProvider data(data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); TestCompletionCallback callback; @@ -8992,7 +8992,7 @@ TEST_P(HttpNetworkTransactionTest, DrainResetOK) { StaticSocketDataProvider data2(data_reads2, arraysize(data_reads2), data_writes2, arraysize(data_writes2)); session_deps_.socket_factory->AddSocketDataProvider(&data2); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); TestCompletionCallback callback1; @@ -9048,7 +9048,7 @@ TEST_P(HttpNetworkTransactionTest, HTTPSViaProxyWithExtraData) { session_deps_.socket_factory->ResetNextMockIndexes(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9065,7 +9065,7 @@ TEST_P(HttpNetworkTransactionTest, LargeContentLengthThenClose) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9114,7 +9114,7 @@ TEST_P(HttpNetworkTransactionTest, UploadFileSmallerThanLength) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9169,7 +9169,7 @@ TEST_P(HttpNetworkTransactionTest, UploadUnreadableFile) { request.load_flags = 0; // If we try to upload an unreadable file, the transaction should fail. - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9223,7 +9223,7 @@ TEST_P(HttpNetworkTransactionTest, CancelDuringInitRequestBody) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9330,7 +9330,7 @@ TEST_P(HttpNetworkTransactionTest, ChangeAuthRealms) { TestCompletionCallback callback1; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9425,7 +9425,7 @@ TEST_P(HttpNetworkTransactionTest, HonorAlternativeServiceHeader) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9489,7 +9489,7 @@ TEST_P(HttpNetworkTransactionTest, DoNotHonorAlternativeServiceHeader) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session = CreateSession(&session_deps_); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9546,7 +9546,7 @@ TEST_P(HttpNetworkTransactionTest, HonorMultipleAlternativeServiceHeader) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9613,7 +9613,7 @@ TEST_P(HttpNetworkTransactionTest, HonorAlternateProtocolHeader) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9670,7 +9670,7 @@ TEST_P(HttpNetworkTransactionTest, EmptyAlternateProtocolHeader) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); HostPortPair http_host_port_pair("www.example.org", 80); HttpServerProperties& http_server_properties = @@ -9737,7 +9737,7 @@ TEST_P(HttpNetworkTransactionTest, AltSvcOverwritesAlternateProtocol) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -9796,7 +9796,7 @@ TEST_P(HttpNetworkTransactionTest, DisableAlternativeServiceToDifferentHost) { nullptr, 0); session_deps_.socket_factory->AddSocketDataProvider(&second_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session = CreateSession(&session_deps_); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -9840,7 +9840,7 @@ TEST_P(HttpNetworkTransactionTest, data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&second_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -9906,7 +9906,7 @@ TEST_P(HttpNetworkTransactionTest, data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&second_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -9958,7 +9958,7 @@ TEST_P(HttpNetworkTransactionTest, data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&second_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -10009,7 +10009,7 @@ TEST_P(HttpNetworkTransactionTest, data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&second_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -10061,7 +10061,7 @@ TEST_P(HttpNetworkTransactionTest, data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&second_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -10112,7 +10112,7 @@ TEST_P(HttpNetworkTransactionTest, data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&second_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -10158,7 +10158,7 @@ TEST_P(HttpNetworkTransactionTest, AlternateProtocolUnsafeBlocked) { data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); @@ -10243,7 +10243,7 @@ TEST_P(HttpNetworkTransactionTest, UseAlternateProtocolForNpnSpdy) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -10345,7 +10345,7 @@ TEST_P(HttpNetworkTransactionTest, AlternateProtocolWithSpdyLateBinding) { // Socket 5 is the unsuccessful non-Alternate-Protocol for transaction 3. session_deps_.socket_factory->AddSocketDataProvider(&hanging_socket); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); TestCompletionCallback callback1; HttpNetworkTransaction trans1(DEFAULT_PRIORITY, session.get()); @@ -10436,7 +10436,7 @@ TEST_P(HttpNetworkTransactionTest, StallAlternateProtocolForNpnSpdy) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -10600,7 +10600,7 @@ TEST_P(HttpNetworkTransactionTest, TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -10693,7 +10693,7 @@ TEST_P(HttpNetworkTransactionTest, TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -10716,7 +10716,7 @@ TEST_P(HttpNetworkTransactionTest, SpdySessionKey key(host_port_pair, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> spdy_session = - CreateSecureSpdySession(session, key, BoundNetLog()); + CreateSecureSpdySession(session.get(), key, BoundNetLog()); trans.reset(new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -11085,7 +11085,7 @@ TEST_P(HttpNetworkTransactionTest, GenerateAuthToken) { request.url = GURL(test_config.server_url); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); HttpNetworkTransaction trans(DEFAULT_PRIORITY, session.get()); SSLSocketDataProvider ssl_socket_data_provider(SYNCHRONOUS, OK); @@ -11184,12 +11184,12 @@ TEST_P(HttpNetworkTransactionTest, MultiRoundAuth) { request.url = origin; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Use a TCP Socket Pool with only one connection per group. This is used // to validate that the TCP socket is not released to the pool between // each round of multi-round authentication. - HttpNetworkSessionPeer session_peer(session); + HttpNetworkSessionPeer session_peer(session.get()); TransportClientSocketPool* transport_pool = new TransportClientSocketPool( 50, // Max sockets for pool 1, // Max sockets per group @@ -11384,7 +11384,7 @@ TEST_P(HttpNetworkTransactionTest, NpnWithHttpOverSSL) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -11436,7 +11436,7 @@ TEST_P(HttpNetworkTransactionTest, SpdyPostNPNServerHangup) { TestCompletionCallback callback; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -11590,7 +11590,7 @@ TEST_P(HttpNetworkTransactionTest, SpdyAlternateProtocolThroughProxy) { session_deps_.socket_factory->AddSSLSocketDataProvider(&ssl); session_deps_.socket_factory->AddSocketDataProvider( &hanging_non_alternate_protocol_socket); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // First round should work and provide the Alternate-Protocol state. TestCompletionCallback callback_1; @@ -11650,7 +11650,7 @@ TEST_P(HttpNetworkTransactionTest, SimpleCancel) { request.load_flags = 0; session_deps_.host_resolver->set_synchronous_mode(true); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -11688,7 +11688,7 @@ TEST_P(HttpNetworkTransactionTest, CancelAfterHeaders) { StaticSocketDataProvider data(data_reads, arraysize(data_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); { HttpRequestInfo request; @@ -11724,7 +11724,7 @@ TEST_P(HttpNetworkTransactionTest, ProxyGet) { ProxyService::CreateFixedFromPacResult("PROXY myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); HttpRequestInfo request; request.method = "GET"; @@ -11788,7 +11788,7 @@ TEST_P(HttpNetworkTransactionTest, ProxyTunnelGet) { ProxyService::CreateFixedFromPacResult("PROXY myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); HttpRequestInfo request; request.method = "GET"; @@ -11865,7 +11865,7 @@ TEST_P(HttpNetworkTransactionTest, ProxyTunnelGetHangup) { session_deps_.proxy_service = ProxyService::CreateFixed("myproxy:70"); BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); HttpRequestInfo request; request.method = "GET"; @@ -11937,14 +11937,14 @@ TEST_P(HttpNetworkTransactionTest, PreconnectWithExistingSpdySession) { ssl.SetNextProto(GetParam()); session_deps_.socket_factory->AddSSLSocketDataProvider(&ssl); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Set up an initial SpdySession in the pool to reuse. HostPortPair host_port_pair("www.example.org", 443); SpdySessionKey key(host_port_pair, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> spdy_session = - CreateInsecureSpdySession(session, key, BoundNetLog()); + CreateInsecureSpdySession(session.get(), key, BoundNetLog()); HttpRequestInfo request; request.method = "GET"; @@ -11980,7 +11980,7 @@ void HttpNetworkTransactionTest::CheckErrorIsPassedBack( session_deps_.socket_factory->AddSocketDataProvider(&data); session_deps_.socket_factory->AddSSLSocketDataProvider(&ssl_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -12067,7 +12067,7 @@ TEST_P(HttpNetworkTransactionTest, StaticSocketDataProvider data4(NULL, 0, NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&data4); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -12184,7 +12184,7 @@ TEST_P(HttpNetworkTransactionTest, StaticSocketDataProvider data5(data2_reads, arraysize(data2_reads), NULL, 0); session_deps_.socket_factory->AddSocketDataProvider(&data5); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -12276,7 +12276,7 @@ TEST_P(HttpNetworkTransactionTest, ClientAuthCertCache_Proxy_Fail) { for (size_t i = 0; i < arraysize(requests); ++i) { session_deps_.socket_factory->ResetNextMockIndexes(); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpNetworkTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -12329,7 +12329,7 @@ TEST_P(HttpNetworkTransactionTest, UseIPConnectionPooling) { // Set up a special HttpNetworkSession with a MockCachingHostResolver. session_deps_.host_resolver.reset(new MockCachingHostResolver()); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); SpdySessionPoolPeer pool_peer(session->spdy_session_pool()); pool_peer.DisableDomainAuthenticationVerification(); @@ -12428,7 +12428,7 @@ TEST_P(HttpNetworkTransactionTest, UseIPConnectionPoolingAfterResolution) { // Set up a special HttpNetworkSession with a MockCachingHostResolver. session_deps_.host_resolver.reset(new MockCachingHostResolver()); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); SpdySessionPoolPeer pool_peer(session->spdy_session_pool()); pool_peer.DisableDomainAuthenticationVerification(); @@ -12558,7 +12558,7 @@ TEST_P(HttpNetworkTransactionTest, HttpNetworkSession::Params params = SpdySessionDependencies::CreateSessionParams(&session_deps_); params.host_resolver = &host_resolver; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); SpdySessionPoolPeer pool_peer(session->spdy_session_pool()); pool_peer.DisableDomainAuthenticationVerification(); @@ -12698,7 +12698,7 @@ TEST_P(HttpNetworkTransactionTest, DoNotUseSpdySessionForHttp) { session_deps_.socket_factory->AddSocketDataProvider(&data1); session_deps_.socket_factory->AddSocketDataProvider(&data2); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Start the first transaction to set up the SpdySession HttpRequestInfo request1; @@ -12810,7 +12810,7 @@ class AltSvcCertificateVerificationTest : public HttpNetworkTransactionTest { session_deps_.socket_factory->AddSocketDataProvider(&data_refused); session_deps_.use_alternative_services = true; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); AlternativeService alternative_service( @@ -12914,7 +12914,7 @@ TEST_P(HttpNetworkTransactionTest, AlternativeServiceNotOnHttp11) { // Set up alternative service for origin. session_deps_.use_alternative_services = true; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); AlternativeService alternative_service( @@ -12987,7 +12987,7 @@ TEST_P(HttpNetworkTransactionTest, FailedAlternativeServiceIsNotUserVisible) { // Set up alternative service for origin. session_deps_.use_alternative_services = true; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); AlternativeService alternative_service( @@ -13096,7 +13096,7 @@ TEST_P(HttpNetworkTransactionTest, AlternativeServiceShouldNotPoolToHttp11) { // Set up alternative service for origin. session_deps_.use_alternative_services = true; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); base::WeakPtr<HttpServerProperties> http_server_properties = session->http_server_properties(); AlternativeService alternative_service( @@ -13230,7 +13230,7 @@ TEST_P(HttpNetworkTransactionTest, DoNotUseSpdySessionForHttpOverTunnel) { session_deps_.deterministic_socket_factory->AddSSLSocketDataProvider(&ssl2); session_deps_.deterministic_socket_factory->AddSocketDataProvider(&data1); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSessionDeterministic(&session_deps_)); // Start the first transaction to set up the SpdySession @@ -13365,7 +13365,7 @@ TEST_P(HttpNetworkTransactionTest, DoNotUseSpdySessionIfCertDoesNotMatch) { session_deps_.host_resolver->rules()->AddRule("news.example.org", ip_addr); session_deps_.host_resolver->rules()->AddRule("proxy", ip_addr); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSessionDeterministic(&session_deps_)); // Start the first transaction to set up the SpdySession @@ -13440,7 +13440,7 @@ TEST_P(HttpNetworkTransactionTest, ErrorSocketNotConnected) { session_deps_.socket_factory->AddSSLSocketDataProvider(&ssl2); session_deps_.socket_factory->AddSocketDataProvider(&data2); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps_)); // Start the first transaction to set up the SpdySession and verify that @@ -13479,7 +13479,7 @@ TEST_P(HttpNetworkTransactionTest, CloseIdleSpdySessionToOpenNewOne) { // Use two different hosts with different IPs so they don't get pooled. session_deps_.host_resolver->rules()->AddRule("www.a.com", "10.0.0.1"); session_deps_.host_resolver->rules()->AddRule("www.b.com", "10.0.0.2"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); SSLSocketDataProvider ssl1(ASYNC, OK); ssl1.SetNextProto(GetParam()); @@ -13639,7 +13639,7 @@ TEST_P(HttpNetworkTransactionTest, HttpSyncConnectError) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -13676,7 +13676,7 @@ TEST_P(HttpNetworkTransactionTest, HttpAsyncConnectError) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -13713,7 +13713,7 @@ TEST_P(HttpNetworkTransactionTest, HttpSyncWriteError) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -13747,7 +13747,7 @@ TEST_P(HttpNetworkTransactionTest, HttpAsyncWriteError) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -13781,7 +13781,7 @@ TEST_P(HttpNetworkTransactionTest, HttpSyncReadError) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -13818,7 +13818,7 @@ TEST_P(HttpNetworkTransactionTest, HttpAsyncReadError) { request.url = GURL("http://www.example.org/"); request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -13856,7 +13856,7 @@ TEST_P(HttpNetworkTransactionTest, GetFullRequestHeadersIncludesExtraHeader) { request.load_flags = 0; request.extra_headers.SetHeader("X-Foo", "bar"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -14246,8 +14246,8 @@ class FakeWebSocketStreamCreateHelper : // Make sure that HttpNetworkTransaction passes on its priority to its // stream request on start. TEST_P(HttpNetworkTransactionTest, SetStreamRequestPriorityOnStart) { - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); - HttpNetworkSessionPeer peer(session); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + HttpNetworkSessionPeer peer(session.get()); FakeStreamFactory* fake_factory = new FakeStreamFactory(); peer.SetHttpStreamFactory(scoped_ptr<HttpStreamFactory>(fake_factory)); @@ -14269,8 +14269,8 @@ TEST_P(HttpNetworkTransactionTest, SetStreamRequestPriorityOnStart) { // Make sure that HttpNetworkTransaction passes on its priority // updates to its stream request. TEST_P(HttpNetworkTransactionTest, SetStreamRequestPriority) { - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); - HttpNetworkSessionPeer peer(session); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + HttpNetworkSessionPeer peer(session.get()); FakeStreamFactory* fake_factory = new FakeStreamFactory(); peer.SetHttpStreamFactory(scoped_ptr<HttpStreamFactory>(fake_factory)); @@ -14294,8 +14294,8 @@ TEST_P(HttpNetworkTransactionTest, SetStreamRequestPriority) { // Make sure that HttpNetworkTransaction passes on its priority // updates to its stream. TEST_P(HttpNetworkTransactionTest, SetStreamPriority) { - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); - HttpNetworkSessionPeer peer(session); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + HttpNetworkSessionPeer peer(session.get()); FakeStreamFactory* fake_factory = new FakeStreamFactory(); peer.SetHttpStreamFactory(scoped_ptr<HttpStreamFactory>(fake_factory)); @@ -14324,8 +14324,8 @@ TEST_P(HttpNetworkTransactionTest, CreateWebSocketHandshakeStream) { std::string test_cases[] = {"ws://www.example.org/", "wss://www.example.org/"}; for (size_t i = 0; i < arraysize(test_cases); ++i) { - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); - HttpNetworkSessionPeer peer(session); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + HttpNetworkSessionPeer peer(session.get()); FakeStreamFactory* fake_factory = new FakeStreamFactory(); FakeWebSocketStreamCreateHelper websocket_stream_create_helper; peer.SetHttpStreamFactoryForWebSocket( @@ -14406,7 +14406,7 @@ TEST_P(HttpNetworkTransactionTest, CloseSSLSocketOnIdleForHttpRequest) { http_writes, arraysize(http_writes)); session_deps_.socket_factory->AddSocketDataProvider(&http_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Start the SSL request. TestCompletionCallback ssl_callback; @@ -14488,7 +14488,7 @@ TEST_P(HttpNetworkTransactionTest, CloseSSLSocketOnIdleForHttpRequest2) { http_writes, arraysize(http_writes)); session_deps_.socket_factory->AddSocketDataProvider(&http_data); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Preconnect an SSL socket. A preconnect is needed because connect jobs are // cancelled when a normal transaction is cancelled. @@ -14529,7 +14529,7 @@ TEST_P(HttpNetworkTransactionTest, PostReadsErrorResponseAfterReset) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); // Send headers successfully, but get an error while sending the body. @@ -14574,7 +14574,7 @@ TEST_P(HttpNetworkTransactionTest, PostReadsErrorResponseAfterReset) { // response from a server that rejected a POST with a CONNECTION_RESET. TEST_P(HttpNetworkTransactionTest, PostReadsErrorResponseAfterResetOnReusedSocket) { - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockWrite data_writes[] = { MockWrite("GET / HTTP/1.1\r\n" "Host: www.foo.com\r\n" @@ -14668,7 +14668,7 @@ TEST_P(HttpNetworkTransactionTest, request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); // Send headers successfully, but get an error while sending the body. @@ -14723,7 +14723,7 @@ TEST_P(HttpNetworkTransactionTest, ChunkedPostReadsErrorResponseAfterReset) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); // Send headers successfully, but get an error while sending the body. @@ -14782,7 +14782,7 @@ TEST_P(HttpNetworkTransactionTest, PostReadsErrorResponseAfterResetAnd100) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -14835,7 +14835,7 @@ TEST_P(HttpNetworkTransactionTest, PostIgnoresNonErrorResponseAfterReset) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); // Send headers successfully, but get an error while sending the body. @@ -14877,7 +14877,7 @@ TEST_P(HttpNetworkTransactionTest, request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); // Send headers successfully, but get an error while sending the body. @@ -14920,7 +14920,7 @@ TEST_P(HttpNetworkTransactionTest, PostIgnoresHttp09ResponseAfterReset) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); // Send headers successfully, but get an error while sending the body. @@ -14960,7 +14960,7 @@ TEST_P(HttpNetworkTransactionTest, PostIgnoresPartial400HeadersAfterReset) { request.upload_data_stream = &upload_data_stream; request.load_flags = 0; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); // Send headers successfully, but get an error while sending the body. @@ -15001,7 +15001,7 @@ TEST_P(HttpNetworkTransactionTest, ProxyHeadersNotSentOverWssTunnel) { session_deps_.proxy_service = ProxyService::CreateFixedFromPacResult("PROXY myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); // Since a proxy is configured, try to establish a tunnel. MockWrite data_writes[] = { @@ -15108,7 +15108,7 @@ TEST_P(HttpNetworkTransactionTest, ProxyHeadersNotSentOverWsTunnel) { session_deps_.proxy_service = ProxyService::CreateFixedFromPacResult("PROXY myproxy:70"); - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); MockWrite data_writes[] = { // Try to establish a tunnel for the WebSocket connection, with @@ -15184,7 +15184,7 @@ TEST_P(HttpNetworkTransactionTest, TotalNetworkBytesPost) { request.url = GURL("http://www.foo.com/"); request.upload_data_stream = &upload_data_stream; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); MockWrite data_writes[] = { @@ -15228,7 +15228,7 @@ TEST_P(HttpNetworkTransactionTest, TotalNetworkBytesPost100Continue) { request.url = GURL("http://www.foo.com/"); request.upload_data_stream = &upload_data_stream; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); MockWrite data_writes[] = { @@ -15273,7 +15273,7 @@ TEST_P(HttpNetworkTransactionTest, TotalNetworkBytesChunkedPost) { request.url = GURL("http://www.foo.com/"); request.upload_data_stream = &upload_data_stream; - scoped_refptr<HttpNetworkSession> session(CreateSession(&session_deps_)); + scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); // Send headers successfully, but get an error while sending the body. diff --git a/net/http/http_proxy_client_socket_pool_unittest.cc b/net/http/http_proxy_client_socket_pool_unittest.cc index 4a36144..bcc6299 100644 --- a/net/http/http_proxy_client_socket_pool_unittest.cc +++ b/net/http/http_proxy_client_socket_pool_unittest.cc @@ -287,7 +287,7 @@ class HttpProxyClientSocketPoolTest ssl_data_->SetNextProto(GetParam().protocol); } - HttpNetworkSession* CreateNetworkSession() { + scoped_ptr<HttpNetworkSession> CreateNetworkSession() { return SpdySessionDependencies::SpdyCreateSession(&session_deps_); } @@ -303,7 +303,7 @@ class HttpProxyClientSocketPoolTest scoped_ptr<CertVerifier> cert_verifier_; SSLClientSocketPool ssl_socket_pool_; - const scoped_refptr<HttpNetworkSession> session_; + const scoped_ptr<HttpNetworkSession> session_; protected: SpdyTestUtil spdy_util_; diff --git a/net/http/http_response_body_drainer_unittest.cc b/net/http/http_response_body_drainer_unittest.cc index 2062d4d..358cea7 100644 --- a/net/http/http_response_body_drainer_unittest.cc +++ b/net/http/http_response_body_drainer_unittest.cc @@ -232,7 +232,7 @@ class HttpResponseBodyDrainerTest : public testing::Test { scoped_refptr<SSLConfigService> ssl_config_service_; scoped_ptr<HttpServerPropertiesImpl> http_server_properties_; scoped_ptr<TransportSecurityState> transport_security_state_; - const scoped_refptr<HttpNetworkSession> session_; + const scoped_ptr<HttpNetworkSession> session_; CloseResultWaiter result_waiter_; MockHttpStream* const mock_stream_; // Owned by |drainer_|. HttpResponseBodyDrainer* const drainer_; // Deletes itself. diff --git a/net/http/http_stream_factory_impl_request_unittest.cc b/net/http/http_stream_factory_impl_request_unittest.cc index 7a54831..a68d164 100644 --- a/net/http/http_stream_factory_impl_request_unittest.cc +++ b/net/http/http_stream_factory_impl_request_unittest.cc @@ -64,8 +64,8 @@ TEST_P(HttpStreamFactoryImplRequestTest, SetPriority) { SpdySessionDependencies session_deps(GetParam(), ProxyService::CreateDirect()); - scoped_refptr<HttpNetworkSession> - session(SpdySessionDependencies::SpdyCreateSession(&session_deps)); + scoped_ptr<HttpNetworkSession> session = + SpdySessionDependencies::SpdyCreateSession(&session_deps); HttpStreamFactoryImpl* factory = static_cast<HttpStreamFactoryImpl*>(session->http_stream_factory()); diff --git a/net/http/http_stream_factory_impl_unittest.cc b/net/http/http_stream_factory_impl_unittest.cc index 8c404e7..a5e1a85 100644 --- a/net/http/http_stream_factory_impl_unittest.cc +++ b/net/http/http_stream_factory_impl_unittest.cc @@ -431,9 +431,9 @@ TEST_P(HttpStreamFactoryTest, PreconnectDirect) { for (size_t i = 0; i < arraysize(kTests); ++i) { SpdySessionDependencies session_deps( GetParam(), ProxyService::CreateDirect()); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); - HttpNetworkSessionPeer peer(session); + HttpNetworkSessionPeer peer(session.get()); CapturePreconnectsTransportSocketPool* transport_conn_pool = new CapturePreconnectsTransportSocketPool( session_deps.host_resolver.get(), @@ -459,9 +459,9 @@ TEST_P(HttpStreamFactoryTest, PreconnectHttpProxy) { for (size_t i = 0; i < arraysize(kTests); ++i) { SpdySessionDependencies session_deps( GetParam(), ProxyService::CreateFixed("http_proxy")); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); - HttpNetworkSessionPeer peer(session); + HttpNetworkSessionPeer peer(session.get()); HostPortPair proxy_host("http_proxy", 80); CapturePreconnectsHttpProxySocketPool* http_proxy_pool = new CapturePreconnectsHttpProxySocketPool( @@ -488,9 +488,9 @@ TEST_P(HttpStreamFactoryTest, PreconnectSocksProxy) { for (size_t i = 0; i < arraysize(kTests); ++i) { SpdySessionDependencies session_deps( GetParam(), ProxyService::CreateFixed("socks4://socks_proxy:1080")); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); - HttpNetworkSessionPeer peer(session); + HttpNetworkSessionPeer peer(session.get()); HostPortPair proxy_host("socks_proxy", 1080); CapturePreconnectsSOCKSSocketPool* socks_proxy_pool = new CapturePreconnectsSOCKSSocketPool( @@ -517,9 +517,9 @@ TEST_P(HttpStreamFactoryTest, PreconnectDirectWithExistingSpdySession) { for (size_t i = 0; i < arraysize(kTests); ++i) { SpdySessionDependencies session_deps( GetParam(), ProxyService::CreateDirect()); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); - HttpNetworkSessionPeer peer(session); + HttpNetworkSessionPeer peer(session.get()); // Put a SpdySession in the pool. HostPortPair host_port_pair("www.google.com", 443); @@ -558,9 +558,9 @@ TEST_P(HttpStreamFactoryTest, PreconnectUnsafePort) { SpdySessionDependencies session_deps( GetParam(), ProxyService::CreateDirect()); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); - HttpNetworkSessionPeer peer(session); + HttpNetworkSessionPeer peer(session.get()); CapturePreconnectsTransportSocketPool* transport_conn_pool = new CapturePreconnectsTransportSocketPool( session_deps.host_resolver.get(), @@ -589,7 +589,7 @@ TEST_P(HttpStreamFactoryTest, JobNotifiesProxy) { socket_data2.set_connect_data(MockConnect(ASYNC, OK)); session_deps.socket_factory->AddSocketDataProvider(&socket_data2); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. It should succeed using the second proxy in the @@ -638,8 +638,7 @@ TEST_P(HttpStreamFactoryTest, UnreachableQuicProxyMarkedAsBad) { params.ssl_config_service = ssl_config_service.get(); params.http_server_properties = http_server_properties.GetWeakPtr(); - scoped_refptr<HttpNetworkSession> session; - session = new HttpNetworkSession(params); + scoped_ptr<HttpNetworkSession> session(new HttpNetworkSession(params)); session->quic_stream_factory()->set_require_confirmation(false); StaticSocketDataProvider socket_data1; @@ -700,8 +699,7 @@ TEST_P(HttpStreamFactoryTest, QuicLossyProxyMarkedAsBad) { params.http_server_properties = http_server_properties.GetWeakPtr(); params.quic_max_number_of_lossy_connections = 2; - scoped_refptr<HttpNetworkSession> session; - session = new HttpNetworkSession(params); + scoped_ptr<HttpNetworkSession> session(new HttpNetworkSession(params)); session->quic_stream_factory()->set_require_confirmation(false); session->quic_stream_factory()->number_of_lossy_connections_[99] = @@ -748,7 +746,7 @@ TEST_P(HttpStreamFactoryTest, PrivacyModeDisablesChannelId) { SSLSocketDataProvider ssl(ASYNC, OK); session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Set an existing SpdySession in the pool. @@ -814,7 +812,7 @@ TEST_P(HttpStreamFactoryTest, PrivacyModeUsesDifferentSocketPoolGroup) { SSLSocketDataProvider ssl(ASYNC, OK); session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); SSLClientSocketPool* ssl_pool = session->GetSSLSocketPool( HttpNetworkSession::NORMAL_SOCKET_POOL); @@ -864,7 +862,7 @@ TEST_P(HttpStreamFactoryTest, GetLoadState) { socket_data.set_connect_data(MockConnect(ASYNC, OK)); session_deps.socket_factory->AddSocketDataProvider(&socket_data); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); HttpRequestInfo request_info; @@ -891,7 +889,7 @@ TEST_P(HttpStreamFactoryTest, RequestHttpStream) { socket_data.set_connect_data(MockConnect(ASYNC, OK)); session_deps.socket_factory->AddSocketDataProvider(&socket_data); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. It should succeed using the second proxy in the @@ -941,7 +939,7 @@ TEST_P(HttpStreamFactoryTest, RequestHttpStreamOverSSL) { SSLSocketDataProvider ssl_socket_data(ASYNC, OK); session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. @@ -986,7 +984,7 @@ TEST_P(HttpStreamFactoryTest, RequestHttpStreamOverProxy) { socket_data.set_connect_data(MockConnect(ASYNC, OK)); session_deps.socket_factory->AddSocketDataProvider(&socket_data); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. It should succeed using the second proxy in the @@ -1039,7 +1037,7 @@ TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStream) { socket_data.set_connect_data(MockConnect(ASYNC, OK)); session_deps.socket_factory->AddSocketDataProvider(&socket_data); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. @@ -1087,7 +1085,7 @@ TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStreamOverSSL) { SSLSocketDataProvider ssl_socket_data(ASYNC, OK); session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. @@ -1132,7 +1130,7 @@ TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStreamOverProxy) { socket_data.set_connect_data(MockConnect(ASYNC, OK)); session_deps.socket_factory->AddSocketDataProvider(&socket_data); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. @@ -1193,7 +1191,7 @@ TEST_P(HttpStreamFactoryTest, RequestSpdyHttpStream) { session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); HostPortPair host_port_pair("www.google.com", 443); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. @@ -1246,8 +1244,8 @@ TEST_P(HttpStreamFactoryTest, RequestWebSocketSpdyHandshakeStreamButGetSSL) { session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); HostPortPair host_port_pair("www.google.com", 80); - scoped_refptr<HttpNetworkSession> - session(SpdySessionDependencies::SpdyCreateSession(&session_deps)); + scoped_ptr<HttpNetworkSession> session( + SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. HttpRequestInfo request_info; @@ -1298,8 +1296,8 @@ TEST_P(HttpStreamFactoryTest, DISABLED_RequestWebSocketSpdyHandshakeStream) { session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); HostPortPair host_port_pair("www.google.com", 80); - scoped_refptr<HttpNetworkSession> - session(SpdySessionDependencies::SpdyCreateSession(&session_deps)); + scoped_ptr<HttpNetworkSession> session( + SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. HttpRequestInfo request_info; @@ -1380,7 +1378,7 @@ TEST_P(HttpStreamFactoryTest, DISABLED_OrphanedWebSocketStream) { ssl_socket_data.SetNextProto(GetParam()); session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(&session_deps)); // Now request a stream. diff --git a/net/http/mock_http_cache.cc b/net/http/mock_http_cache.cc index c483323..ce49d33 100644 --- a/net/http/mock_http_cache.cc +++ b/net/http/mock_http_cache.cc @@ -524,13 +524,10 @@ int MockBackendFactory::CreateBackend(NetLog* net_log, //----------------------------------------------------------------------------- -MockHttpCache::MockHttpCache() - : http_cache_(new MockNetworkLayer(), NULL, new MockBackendFactory()) { -} +MockHttpCache::MockHttpCache() : MockHttpCache(new MockBackendFactory()) {} MockHttpCache::MockHttpCache(HttpCache::BackendFactory* disk_cache_factory) - : http_cache_(new MockNetworkLayer(), NULL, disk_cache_factory) { -} + : http_cache_(new MockNetworkLayer(), nullptr, disk_cache_factory, true) {} disk_cache::Backend* MockHttpCache::backend() { TestCompletionCallback cb; diff --git a/net/proxy/proxy_script_fetcher_impl_unittest.cc b/net/proxy/proxy_script_fetcher_impl_unittest.cc index 62a332b..437d88a 100644 --- a/net/proxy/proxy_script_fetcher_impl_unittest.cc +++ b/net/proxy/proxy_script_fetcher_impl_unittest.cc @@ -76,12 +76,11 @@ class RequestContext : public URLRequestContext { params.proxy_service = proxy_service(); params.ssl_config_service = ssl_config_service(); params.http_server_properties = http_server_properties(); - scoped_refptr<HttpNetworkSession> network_session( - new HttpNetworkSession(params)); - storage_.set_http_transaction_factory( - make_scoped_ptr(new HttpCache(network_session.get(), - HttpCache::DefaultBackend::InMemory(0))) - .Pass()); + storage_.set_http_network_session( + make_scoped_ptr(new HttpNetworkSession(params))); + storage_.set_http_transaction_factory(make_scoped_ptr( + new HttpCache(storage_.http_network_session(), + HttpCache::DefaultBackend::InMemory(0), false))); scoped_ptr<URLRequestJobFactoryImpl> job_factory = make_scoped_ptr(new URLRequestJobFactoryImpl()); #if !defined(DISABLE_FILE_SUPPORT) diff --git a/net/quic/quic_end_to_end_unittest.cc b/net/quic/quic_end_to_end_unittest.cc index 86bb9cd..7b4bb5a 100644 --- a/net/quic/quic_end_to_end_unittest.cc +++ b/net/quic/quic_end_to_end_unittest.cc @@ -48,7 +48,7 @@ const char kResponseBody[] = "some arbitrary response body"; // Factory for creating HttpTransactions, used by TestTransactionConsumer. class TestTransactionFactory : public HttpTransactionFactory { public: - TestTransactionFactory(const HttpNetworkSession::Params& params) + explicit TestTransactionFactory(const HttpNetworkSession::Params& params) : session_(new HttpNetworkSession(params)) {} ~TestTransactionFactory() override {} @@ -65,7 +65,7 @@ class TestTransactionFactory : public HttpTransactionFactory { HttpNetworkSession* GetSession() override { return session_.get(); }; private: - scoped_refptr<HttpNetworkSession> session_; + scoped_ptr<HttpNetworkSession> session_; }; } // namespace diff --git a/net/quic/quic_network_transaction_unittest.cc b/net/quic/quic_network_transaction_unittest.cc index 1bac0f4..9411ccb 100644 --- a/net/quic/quic_network_transaction_unittest.cc +++ b/net/quic/quic_network_transaction_unittest.cc @@ -319,7 +319,7 @@ class QuicNetworkTransactionTest params_.next_protos = NextProtosWithSpdyAndQuic(true, true); } - session_ = new HttpNetworkSession(params_); + session_.reset(new HttpNetworkSession(params_)); session_->quic_stream_factory()->set_require_confirmation(false); ASSERT_EQ(params_.quic_socket_receive_buffer_size, session_->quic_stream_factory()->socket_receive_buffer_size()); @@ -426,7 +426,7 @@ class QuicNetworkTransactionTest MockClock* clock_; // Owned by QuicStreamFactory after CreateSession. QuicTestPacketMaker maker_; - scoped_refptr<HttpNetworkSession> session_; + scoped_ptr<HttpNetworkSession> session_; MockClientSocketFactory socket_factory_; MockCryptoClientStreamFactory crypto_client_stream_factory_; MockHostResolver host_resolver_; diff --git a/net/socket/ssl_client_socket_pool_unittest.cc b/net/socket/ssl_client_socket_pool_unittest.cc index 48d6670..9bbe659 100644 --- a/net/socket/ssl_client_socket_pool_unittest.cc +++ b/net/socket/ssl_client_socket_pool_unittest.cc @@ -185,7 +185,7 @@ class SSLClientSocketPoolTest const scoped_refptr<SSLConfigService> ssl_config_service_; const scoped_ptr<HttpAuthHandlerFactory> http_auth_handler_factory_; HttpServerPropertiesImpl http_server_properties_; - const scoped_refptr<HttpNetworkSession> session_; + const scoped_ptr<HttpNetworkSession> session_; scoped_refptr<TransportSocketParams> direct_transport_socket_params_; MockTransportClientSocketPool transport_socket_pool_; @@ -828,7 +828,7 @@ TEST_P(SSLClientSocketPoolTest, IPPooling) { CreatePool(true /* tcp pool */, false, false); base::WeakPtr<SpdySession> spdy_session = - CreateSecureSpdySession(session_, test_hosts[0].key, BoundNetLog()); + CreateSecureSpdySession(session_.get(), test_hosts[0].key, BoundNetLog()); EXPECT_TRUE( HasSpdySession(session_->spdy_session_pool(), test_hosts[0].key)); @@ -885,7 +885,7 @@ void SSLClientSocketPoolTest::TestIPPoolingDisabled( CreatePool(true /* tcp pool */, false, false); base::WeakPtr<SpdySession> spdy_session = - CreateSecureSpdySession(session_, test_hosts[0].key, BoundNetLog()); + CreateSecureSpdySession(session_.get(), test_hosts[0].key, BoundNetLog()); EXPECT_TRUE( HasSpdySession(session_->spdy_session_pool(), test_hosts[0].key)); diff --git a/net/spdy/spdy_http_stream_unittest.cc b/net/spdy/spdy_http_stream_unittest.cc index 69ad12c..fc2989a 100644 --- a/net/spdy/spdy_http_stream_unittest.cc +++ b/net/spdy/spdy_http_stream_unittest.cc @@ -90,7 +90,8 @@ class SpdyHttpStreamTest : public testing::Test, new SequencedSocketData(reads, reads_count, writes, writes_count)); session_deps_.socket_factory->AddSocketDataProvider(sequenced_data_.get()); http_session_ = SpdySessionDependencies::SpdyCreateSession(&session_deps_); - session_ = CreateInsecureSpdySession(http_session_, key, BoundNetLog()); + session_ = + CreateInsecureSpdySession(http_session_.get(), key, BoundNetLog()); } void TestSendCredentials( @@ -102,7 +103,7 @@ class SpdyHttpStreamTest : public testing::Test, TestNetLog net_log_; SpdySessionDependencies session_deps_; scoped_ptr<SequencedSocketData> sequenced_data_; - scoped_refptr<HttpNetworkSession> http_session_; + scoped_ptr<HttpNetworkSession> http_session_; base::WeakPtr<SpdySession> session_; private: diff --git a/net/spdy/spdy_network_transaction_unittest.cc b/net/spdy/spdy_network_transaction_unittest.cc index fa6294a..f54a89e 100644 --- a/net/spdy/spdy_network_transaction_unittest.cc +++ b/net/spdy/spdy_network_transaction_unittest.cc @@ -371,16 +371,14 @@ class SpdyNetworkTransactionTest } } - void SetSession(const scoped_refptr<HttpNetworkSession>& session) { - session_ = session; + void SetSession(scoped_ptr<HttpNetworkSession> session) { + session_ = session.Pass(); } HttpNetworkTransaction* trans() { return trans_.get(); } void ResetTrans() { trans_.reset(); } TransactionHelperResult& output() { return output_; } const HttpRequestInfo& request() const { return request_; } - const scoped_refptr<HttpNetworkSession>& session() const { - return session_; - } + HttpNetworkSession* session() const { return session_.get(); } scoped_ptr<SpdySessionDependencies>& session_deps() { return session_deps_; } @@ -398,7 +396,7 @@ class SpdyNetworkTransactionTest HttpRequestInfo request_; RequestPriority priority_; scoped_ptr<SpdySessionDependencies> session_deps_; - scoped_refptr<HttpNetworkSession> session_; + scoped_ptr<HttpNetworkSession> session_; TransactionHelperResult output_; scoped_ptr<SocketDataProvider> first_transaction_; SSLVector ssl_vector_; @@ -587,7 +585,7 @@ class SpdyNetworkTransactionTest SpdySessionKey key(host_port_pair, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); BoundNetLog log; - const scoped_refptr<HttpNetworkSession>& session = helper.session(); + HttpNetworkSession* session = helper.session(); base::WeakPtr<SpdySession> spdy_session = session->spdy_session_pool()->FindAvailableSession(key, log); ASSERT_TRUE(spdy_session != NULL); @@ -615,7 +613,7 @@ class SpdyNetworkTransactionTest // Request the pushed path. scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); rv = trans2->Start( &CreateGetPushRequest(), callback.callback(), BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); @@ -654,12 +652,11 @@ class SpdyNetworkTransactionTest helper->ResetTrans(); } - static void StartTransactionCallback( - const scoped_refptr<HttpNetworkSession>& session, - GURL url, - int result) { + static void StartTransactionCallback(HttpNetworkSession* session, + GURL url, + int result) { scoped_ptr<HttpNetworkTransaction> trans( - new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, session)); TestCompletionCallback callback; HttpRequestInfo request; request.method = "GET"; @@ -724,7 +721,7 @@ INSTANTIATE_TEST_CASE_P( TEST_P(SpdyNetworkTransactionTest, Constructor) { scoped_ptr<SpdySessionDependencies> session_deps( CreateSpdySessionDependencies(GetParam())); - scoped_refptr<HttpNetworkSession> session( + scoped_ptr<HttpNetworkSession> session( SpdySessionDependencies::SpdyCreateSession(session_deps.get())); scoped_ptr<HttpTransaction> trans( new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); @@ -892,11 +889,11 @@ TEST_P(SpdyNetworkTransactionTest, ThreeGets) { helper.AddData(&data_placeholder); helper.AddData(&data_placeholder); scoped_ptr<HttpNetworkTransaction> trans1( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans3( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); TestCompletionCallback callback1; TestCompletionCallback callback2; @@ -977,9 +974,9 @@ TEST_P(SpdyNetworkTransactionTest, TwoGetsLateBinding) { // on will negotiate SPDY and will be used for all requests. helper.AddData(&data_placeholder); scoped_ptr<HttpNetworkTransaction> trans1( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); TestCompletionCallback callback1; TestCompletionCallback callback2; @@ -1065,9 +1062,9 @@ TEST_P(SpdyNetworkTransactionTest, TwoGetsLateBindingFromPreconnect) { helper.AddData(&data_placeholder); scoped_ptr<HttpNetworkTransaction> trans1( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); TestCompletionCallback callback1; TestCompletionCallback callback2; @@ -1182,11 +1179,11 @@ TEST_P(SpdyNetworkTransactionTest, ThreeGetsWithMaxConcurrent) { helper.RunPreTestSetup(); helper.AddData(&data); scoped_ptr<HttpNetworkTransaction> trans1( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans3( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); TestCompletionCallback callback1; TestCompletionCallback callback2; @@ -1317,13 +1314,13 @@ TEST_P(SpdyNetworkTransactionTest, FourGetsWithMaxConcurrentPriority) { helper.AddData(&data); scoped_ptr<HttpNetworkTransaction> trans1( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans3( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans4( - new HttpNetworkTransaction(HIGHEST, helper.session().get())); + new HttpNetworkTransaction(HIGHEST, helper.session())); TestCompletionCallback callback1; TestCompletionCallback callback2; @@ -1446,11 +1443,11 @@ TEST_P(SpdyNetworkTransactionTest, ThreeGetsWithMaxConcurrentDelete) { helper.RunPreTestSetup(); helper.AddData(&data); scoped_ptr<HttpNetworkTransaction> trans1( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); scoped_ptr<HttpNetworkTransaction> trans3( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); TestCompletionCallback callback1; TestCompletionCallback callback2; @@ -1577,10 +1574,10 @@ TEST_P(SpdyNetworkTransactionTest, ThreeGetsWithMaxConcurrentSocketClose) { // there needs to be three sets of SSL connection data. helper.AddData(&data_placeholder); helper.AddData(&data_placeholder); - HttpNetworkTransaction trans1(DEFAULT_PRIORITY, helper.session().get()); - HttpNetworkTransaction trans2(DEFAULT_PRIORITY, helper.session().get()); + HttpNetworkTransaction trans1(DEFAULT_PRIORITY, helper.session()); + HttpNetworkTransaction trans2(DEFAULT_PRIORITY, helper.session()); HttpNetworkTransaction* trans3( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); TestCompletionCallback callback1; TestCompletionCallback callback2; @@ -4552,8 +4549,8 @@ TEST_P(SpdyNetworkTransactionTest, ProxyConnect) { BoundNetLog(), GetParam(), NULL); helper.session_deps() = CreateSpdySessionDependencies( GetParam(), ProxyService::CreateFixedFromPacResult("PROXY myproxy:70")); - helper.SetSession(make_scoped_refptr( - SpdySessionDependencies::SpdyCreateSession(helper.session_deps().get()))); + helper.SetSession( + SpdySessionDependencies::SpdyCreateSession(helper.session_deps().get())); helper.RunPreTestSetup(); HttpNetworkTransaction* trans = helper.trans(); @@ -4617,8 +4614,8 @@ TEST_P(SpdyNetworkTransactionTest, DirectConnectProxyReconnect) { helper.session_deps() = CreateSpdySessionDependencies( GetParam(), ProxyService::CreateFixedFromPacResult("DIRECT; PROXY myproxy:70")); - helper.SetSession(make_scoped_refptr( - SpdySessionDependencies::SpdyCreateSession(helper.session_deps().get()))); + helper.SetSession( + SpdySessionDependencies::SpdyCreateSession(helper.session_deps().get())); SpdySessionPool* spdy_session_pool = helper.session()->spdy_session_pool(); helper.RunPreTestSetup(); @@ -4703,16 +4700,16 @@ TEST_P(SpdyNetworkTransactionTest, DirectConnectProxyReconnect) { scoped_ptr<SpdySessionDependencies> ssd_proxy( CreateSpdySessionDependencies(GetParam())); // Ensure that this transaction uses the same SpdySessionPool. - scoped_refptr<HttpNetworkSession> session_proxy( + scoped_ptr<HttpNetworkSession> session_proxy( SpdySessionDependencies::SpdyCreateSession(ssd_proxy.get())); NormalSpdyTransactionHelper helper_proxy(request_proxy, DEFAULT_PRIORITY, BoundNetLog(), GetParam(), NULL); - HttpNetworkSessionPeer session_peer(session_proxy); + HttpNetworkSessionPeer session_peer(session_proxy.get()); scoped_ptr<ProxyService> proxy_service( ProxyService::CreateFixedFromPacResult("PROXY myproxy:70")); session_peer.SetProxyService(proxy_service.get()); helper_proxy.session_deps().swap(ssd_proxy); - helper_proxy.SetSession(session_proxy); + helper_proxy.SetSession(session_proxy.Pass()); helper_proxy.RunPreTestSetup(); helper_proxy.AddData(data_proxy.get()); @@ -4787,7 +4784,7 @@ TEST_P(SpdyNetworkTransactionTest, VerifyRetryOnConnectionReset) { for (int i = 0; i < 2; ++i) { scoped_ptr<HttpNetworkTransaction> trans( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); TestCompletionCallback callback; int rv = trans->Start( @@ -5103,7 +5100,7 @@ TEST_P(SpdyNetworkTransactionTest, ServerPushClaimBeforeHeaders) { // Request the pushed path. At this point, we've received the push, but the // headers are not yet complete. scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); rv = trans2->Start( &CreateGetPushRequest(), callback.callback(), BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); @@ -5241,7 +5238,7 @@ TEST_P(SpdyNetworkTransactionTest, ServerPushWithTwoHeaderFrames) { // Request the pushed path. At this point, we've received the push, but the // headers are not yet complete. scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); rv = trans2->Start( &CreateGetPushRequest(), callback.callback(), BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); @@ -5357,7 +5354,7 @@ TEST_P(SpdyNetworkTransactionTest, ServerPushWithNoStatusHeaderFrames) { // Request the pushed path. At this point, we've received the push, but the // headers are not yet complete. scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session().get())); + new HttpNetworkTransaction(DEFAULT_PRIORITY, helper.session())); rv = trans2->Start( &CreateGetPushRequest(), callback.callback(), BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); @@ -5695,7 +5692,7 @@ TEST_P(SpdyNetworkTransactionTest, OutOfOrderSynStream) { HttpRequestInfo info2 = CreateGetRequest(); TestCompletionCallback callback2; scoped_ptr<HttpNetworkTransaction> trans2( - new HttpNetworkTransaction(MEDIUM, helper.session().get())); + new HttpNetworkTransaction(MEDIUM, helper.session())); rv = trans2->Start(&info2, callback2.callback(), BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); base::RunLoop().RunUntilIdle(); @@ -5703,7 +5700,7 @@ TEST_P(SpdyNetworkTransactionTest, OutOfOrderSynStream) { HttpRequestInfo info3 = CreateGetRequest(); TestCompletionCallback callback3; scoped_ptr<HttpNetworkTransaction> trans3( - new HttpNetworkTransaction(HIGHEST, helper.session().get())); + new HttpNetworkTransaction(HIGHEST, helper.session())); rv = trans3->Start(&info3, callback3.callback(), BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); base::RunLoop().RunUntilIdle(); diff --git a/net/spdy/spdy_proxy_client_socket_unittest.cc b/net/spdy/spdy_proxy_client_socket_unittest.cc index de9cb0d..0a2ae8e 100644 --- a/net/spdy/spdy_proxy_client_socket_unittest.cc +++ b/net/spdy/spdy_proxy_client_socket_unittest.cc @@ -123,7 +123,7 @@ class SpdyProxyClientSocketTest BoundTestNetLog net_log_; private: - scoped_refptr<HttpNetworkSession> session_; + scoped_ptr<HttpNetworkSession> session_; scoped_refptr<IOBuffer> read_buf_; SpdySessionDependencies session_deps_; MockConnect connect_data_; @@ -147,7 +147,6 @@ INSTANTIATE_TEST_CASE_P(NextProto, SpdyProxyClientSocketTest::SpdyProxyClientSocketTest() : spdy_util_(GetParam()), - session_(NULL), read_buf_(NULL), session_deps_(GetParam()), connect_data_(SYNCHRONOUS, OK), @@ -189,9 +188,8 @@ void SpdyProxyClientSocketTest::Initialize(MockRead* reads, &session_deps_); // Creates the SPDY session and stream. - spdy_session_ = - CreateInsecureSpdySession( - session_, endpoint_spdy_session_key_, BoundNetLog()); + spdy_session_ = CreateInsecureSpdySession( + session_.get(), endpoint_spdy_session_key_, BoundNetLog()); base::WeakPtr<SpdyStream> spdy_stream( CreateStreamSynchronously( SPDY_BIDIRECTIONAL_STREAM, spdy_session_, url_, LOWEST, diff --git a/net/spdy/spdy_session_pool_unittest.cc b/net/spdy/spdy_session_pool_unittest.cc index fccfadd..86b3b4a 100644 --- a/net/spdy/spdy_session_pool_unittest.cc +++ b/net/spdy/spdy_session_pool_unittest.cc @@ -44,7 +44,7 @@ class SpdySessionPoolTest : public ::testing::Test, void RunIPPoolingTest(SpdyPoolCloseSessionsType close_sessions_type); SpdySessionDependencies session_deps_; - scoped_refptr<HttpNetworkSession> http_session_; + scoped_ptr<HttpNetworkSession> http_session_; SpdySessionPool* spdy_session_pool_; }; @@ -115,7 +115,7 @@ TEST_P(SpdySessionPoolTest, CloseCurrentSessions) { // Setup the first session to the first host. base::WeakPtr<SpdySession> session = - CreateInsecureSpdySession(http_session_, test_key, BoundNetLog()); + CreateInsecureSpdySession(http_session_.get(), test_key, BoundNetLog()); // Flush the SpdySession::OnReadComplete() task. base::MessageLoop::current()->RunUntilIdle(); @@ -160,7 +160,7 @@ TEST_P(SpdySessionPoolTest, CloseCurrentIdleSessions) { SpdySessionKey key1(test_host_port_pair1, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> session1 = - CreateInsecureSpdySession(http_session_, key1, BoundNetLog()); + CreateInsecureSpdySession(http_session_.get(), key1, BoundNetLog()); GURL url1(kTestHost1); base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously(SPDY_BIDIRECTIONAL_STREAM, @@ -174,7 +174,7 @@ TEST_P(SpdySessionPoolTest, CloseCurrentIdleSessions) { SpdySessionKey key2(test_host_port_pair2, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> session2 = - CreateInsecureSpdySession(http_session_, key2, BoundNetLog()); + CreateInsecureSpdySession(http_session_.get(), key2, BoundNetLog()); GURL url2(kTestHost2); base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously(SPDY_BIDIRECTIONAL_STREAM, @@ -188,7 +188,7 @@ TEST_P(SpdySessionPoolTest, CloseCurrentIdleSessions) { SpdySessionKey key3(test_host_port_pair3, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> session3 = - CreateInsecureSpdySession(http_session_, key3, BoundNetLog()); + CreateInsecureSpdySession(http_session_.get(), key3, BoundNetLog()); GURL url3(kTestHost3); base::WeakPtr<SpdyStream> spdy_stream3 = CreateStreamSynchronously(SPDY_BIDIRECTIONAL_STREAM, @@ -286,7 +286,7 @@ TEST_P(SpdySessionPoolTest, CloseAllSessions) { // Setup the first session to the first host. base::WeakPtr<SpdySession> session = - CreateInsecureSpdySession(http_session_, test_key, BoundNetLog()); + CreateInsecureSpdySession(http_session_.get(), test_key, BoundNetLog()); // Flush the SpdySession::OnReadComplete() task. base::MessageLoop::current()->RunUntilIdle(); @@ -375,9 +375,8 @@ void SpdySessionPoolTest::RunIPPoolingTest( CreateNetworkSession(); // Setup the first session to the first host. - base::WeakPtr<SpdySession> session = - CreateInsecureSpdySession( - http_session_, test_hosts[0].key, BoundNetLog()); + base::WeakPtr<SpdySession> session = CreateInsecureSpdySession( + http_session_.get(), test_hosts[0].key, BoundNetLog()); // Flush the SpdySession::OnReadComplete() task. base::MessageLoop::current()->RunUntilIdle(); @@ -399,9 +398,8 @@ void SpdySessionPoolTest::RunIPPoolingTest( // Create a new session to host 2. session_deps_.socket_factory->AddSocketDataProvider(&data); - base::WeakPtr<SpdySession> session2 = - CreateInsecureSpdySession( - http_session_, test_hosts[2].key, BoundNetLog()); + base::WeakPtr<SpdySession> session2 = CreateInsecureSpdySession( + http_session_.get(), test_hosts[2].key, BoundNetLog()); // Verify that we have sessions for everything. EXPECT_TRUE(HasSpdySession(spdy_session_pool_, test_hosts[0].key)); @@ -538,7 +536,7 @@ TEST_P(SpdySessionPoolTest, IPAddressChanged) { SpdySessionKey keyA( test_host_port_pairA, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> sessionA = - CreateInsecureSpdySession(http_session_, keyA, BoundNetLog()); + CreateInsecureSpdySession(http_session_.get(), keyA, BoundNetLog()); GURL urlA(kTestHostA); base::WeakPtr<SpdyStream> spdy_streamA = CreateStreamSynchronously( @@ -564,7 +562,7 @@ TEST_P(SpdySessionPoolTest, IPAddressChanged) { SpdySessionKey keyB( test_host_port_pairB, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> sessionB = - CreateInsecureSpdySession(http_session_, keyB, BoundNetLog()); + CreateInsecureSpdySession(http_session_.get(), keyB, BoundNetLog()); EXPECT_TRUE(sessionB->IsAvailable()); GURL urlB(kTestHostB); @@ -580,7 +578,7 @@ TEST_P(SpdySessionPoolTest, IPAddressChanged) { SpdySessionKey keyC( test_host_port_pairC, ProxyServer::Direct(), PRIVACY_MODE_DISABLED); base::WeakPtr<SpdySession> sessionC = - CreateInsecureSpdySession(http_session_, keyC, BoundNetLog()); + CreateInsecureSpdySession(http_session_.get(), keyC, BoundNetLog()); sessionC->CloseSessionOnError(ERR_SPDY_PROTOCOL_ERROR, "Error!"); EXPECT_TRUE(sessionC->IsDraining()); diff --git a/net/spdy/spdy_session_unittest.cc b/net/spdy/spdy_session_unittest.cc index 23b9dac..34f9210 100644 --- a/net/spdy/spdy_session_unittest.cc +++ b/net/spdy/spdy_session_unittest.cc @@ -135,8 +135,8 @@ class SpdySessionTest : public PlatformTest, void CreateInsecureSpdySession() { DCHECK(!session_); - session_ = - ::net::CreateInsecureSpdySession(http_session_, key_, log_.bound()); + session_ = ::net::CreateInsecureSpdySession(http_session_.get(), key_, + log_.bound()); } void StallSessionSend() { @@ -174,7 +174,7 @@ class SpdySessionTest : public PlatformTest, SpdyTestUtil spdy_util_; SpdySessionDependencies session_deps_; - scoped_refptr<HttpNetworkSession> http_session_; + scoped_ptr<HttpNetworkSession> http_session_; base::WeakPtr<SpdySession> session_; SpdySessionPool* spdy_session_pool_; GURL test_url_; @@ -314,7 +314,7 @@ TEST_P(SpdySessionTest, GoAwayImmediatelyWithNoActiveStreams) { CreateNetworkSession(); session_ = TryCreateInsecureSpdySessionExpectingFailure( - http_session_, key_, ERR_CONNECTION_CLOSED, BoundNetLog()); + http_session_.get(), key_, ERR_CONNECTION_CLOSED, BoundNetLog()); base::RunLoop().RunUntilIdle(); EXPECT_FALSE(session_); @@ -2210,7 +2210,7 @@ TEST_P(SpdySessionTest, VerifyDomainAuthentication) { CreateNetworkSession(); - session_ = CreateSecureSpdySession(http_session_, key_, BoundNetLog()); + session_ = CreateSecureSpdySession(http_session_.get(), key_, BoundNetLog()); EXPECT_TRUE(session_->VerifyDomainAuthentication("www.example.org")); EXPECT_TRUE(session_->VerifyDomainAuthentication("mail.example.org")); @@ -2240,7 +2240,7 @@ TEST_P(SpdySessionTest, ConnectionPooledWithTlsChannelId) { CreateNetworkSession(); - session_ = CreateSecureSpdySession(http_session_, key_, BoundNetLog()); + session_ = CreateSecureSpdySession(http_session_.get(), key_, BoundNetLog()); EXPECT_TRUE(session_->VerifyDomainAuthentication("www.example.org")); EXPECT_TRUE(session_->VerifyDomainAuthentication("mail.example.org")); @@ -3050,8 +3050,8 @@ TEST_P(SpdySessionTest, CloseOneIdleConnectionWithAlias) { // Create an idle SPDY session. SpdySessionKey key1(HostPortPair("1.com", 80), ProxyServer::Direct(), PRIVACY_MODE_DISABLED); - base::WeakPtr<SpdySession> session1 = - ::net::CreateInsecureSpdySession(http_session_, key1, BoundNetLog()); + base::WeakPtr<SpdySession> session1 = ::net::CreateInsecureSpdySession( + http_session_.get(), key1, BoundNetLog()); EXPECT_FALSE(pool->IsStalled()); // Set up an alias for the idle SPDY session, increasing its ref count to 2. diff --git a/net/spdy/spdy_stream_unittest.cc b/net/spdy/spdy_stream_unittest.cc index 044be4b..e4fd077 100644 --- a/net/spdy/spdy_stream_unittest.cc +++ b/net/spdy/spdy_stream_unittest.cc @@ -55,7 +55,7 @@ class SpdyStreamTest : public ::testing::Test, base::WeakPtr<SpdySession> CreateDefaultSpdySession() { SpdySessionKey key(HostPortPair("www.example.org", 80), ProxyServer::Direct(), PRIVACY_MODE_DISABLED); - return CreateInsecureSpdySession(session_, key, BoundNetLog()); + return CreateInsecureSpdySession(session_.get(), key, BoundNetLog()); } void TearDown() override { base::MessageLoop::current()->RunUntilIdle(); } @@ -99,7 +99,7 @@ class SpdyStreamTest : public ::testing::Test, SpdyTestUtil spdy_util_; SpdySessionDependencies session_deps_; - scoped_refptr<HttpNetworkSession> session_; + scoped_ptr<HttpNetworkSession> session_; private: // Used by Add{Read,Write}() above. diff --git a/net/spdy/spdy_test_util_common.cc b/net/spdy/spdy_test_util_common.cc index 34352e4..9fbbdbf 100644 --- a/net/spdy/spdy_test_util_common.cc +++ b/net/spdy/spdy_test_util_common.cc @@ -417,26 +417,27 @@ SpdySessionDependencies::SpdySessionDependencies( SpdySessionDependencies::~SpdySessionDependencies() {} // static -HttpNetworkSession* SpdySessionDependencies::SpdyCreateSession( +scoped_ptr<HttpNetworkSession> SpdySessionDependencies::SpdyCreateSession( SpdySessionDependencies* session_deps) { HttpNetworkSession::Params params = CreateSessionParams(session_deps); params.client_socket_factory = session_deps->socket_factory.get(); - HttpNetworkSession* http_session = new HttpNetworkSession(params); + scoped_ptr<HttpNetworkSession> http_session(new HttpNetworkSession(params)); SpdySessionPoolPeer pool_peer(http_session->spdy_session_pool()); pool_peer.SetEnableSendingInitialData(false); - return http_session; + return http_session.Pass(); } // static -HttpNetworkSession* SpdySessionDependencies::SpdyCreateSessionDeterministic( +scoped_ptr<HttpNetworkSession> +SpdySessionDependencies::SpdyCreateSessionDeterministic( SpdySessionDependencies* session_deps) { HttpNetworkSession::Params params = CreateSessionParams(session_deps); params.client_socket_factory = session_deps->deterministic_socket_factory.get(); - HttpNetworkSession* http_session = new HttpNetworkSession(params); + scoped_ptr<HttpNetworkSession> http_session(new HttpNetworkSession(params)); SpdySessionPoolPeer pool_peer(http_session->spdy_session_pool()); pool_peer.SetEnableSendingInitialData(false); - return http_session; + return http_session.Pass(); } // static @@ -501,12 +502,14 @@ SpdyURLRequestContext::SpdyURLRequestContext(NextProto protocol) params.enable_spdy_ping_based_connection_checking = false; params.spdy_default_protocol = protocol; params.http_server_properties = http_server_properties(); - scoped_refptr<HttpNetworkSession> network_session( - new HttpNetworkSession(params)); - SpdySessionPoolPeer pool_peer(network_session->spdy_session_pool()); + storage_.set_http_network_session( + make_scoped_ptr(new HttpNetworkSession(params))); + SpdySessionPoolPeer pool_peer( + storage_.http_network_session()->spdy_session_pool()); pool_peer.SetEnableSendingInitialData(false); - storage_.set_http_transaction_factory(make_scoped_ptr(new HttpCache( - network_session.get(), HttpCache::DefaultBackend::InMemory(0)))); + storage_.set_http_transaction_factory(make_scoped_ptr( + new HttpCache(storage_.http_network_session(), + HttpCache::DefaultBackend::InMemory(0), false))); } SpdyURLRequestContext::~SpdyURLRequestContext() { @@ -520,7 +523,7 @@ bool HasSpdySession(SpdySessionPool* pool, const SpdySessionKey& key) { namespace { base::WeakPtr<SpdySession> CreateSpdySessionHelper( - const scoped_refptr<HttpNetworkSession>& http_session, + HttpNetworkSession* http_session, const SpdySessionKey& key, const BoundNetLog& net_log, Error expected_status, @@ -581,7 +584,7 @@ base::WeakPtr<SpdySession> CreateSpdySessionHelper( } // namespace base::WeakPtr<SpdySession> CreateInsecureSpdySession( - const scoped_refptr<HttpNetworkSession>& http_session, + HttpNetworkSession* http_session, const SpdySessionKey& key, const BoundNetLog& net_log) { return CreateSpdySessionHelper(http_session, key, net_log, @@ -589,7 +592,7 @@ base::WeakPtr<SpdySession> CreateInsecureSpdySession( } base::WeakPtr<SpdySession> TryCreateInsecureSpdySessionExpectingFailure( - const scoped_refptr<HttpNetworkSession>& http_session, + HttpNetworkSession* http_session, const SpdySessionKey& key, Error expected_error, const BoundNetLog& net_log) { @@ -599,7 +602,7 @@ base::WeakPtr<SpdySession> TryCreateInsecureSpdySessionExpectingFailure( } base::WeakPtr<SpdySession> CreateSecureSpdySession( - const scoped_refptr<HttpNetworkSession>& http_session, + HttpNetworkSession* http_session, const SpdySessionKey& key, const BoundNetLog& net_log) { return CreateSpdySessionHelper(http_session, key, net_log, diff --git a/net/spdy/spdy_test_util_common.h b/net/spdy/spdy_test_util_common.h index 68bdfdf..7a3d272 100644 --- a/net/spdy/spdy_test_util_common.h +++ b/net/spdy/spdy_test_util_common.h @@ -194,9 +194,9 @@ struct SpdySessionDependencies { ~SpdySessionDependencies(); - static HttpNetworkSession* SpdyCreateSession( + static scoped_ptr<HttpNetworkSession> SpdyCreateSession( SpdySessionDependencies* session_deps); - static HttpNetworkSession* SpdyCreateSessionDeterministic( + static scoped_ptr<HttpNetworkSession> SpdyCreateSessionDeterministic( SpdySessionDependencies* session_deps); static HttpNetworkSession::Params CreateSessionParams( SpdySessionDependencies* session_deps); @@ -244,7 +244,7 @@ bool HasSpdySession(SpdySessionPool* pool, const SpdySessionKey& key); // session pool in |http_session|. A SPDY session for |key| must not // already exist. base::WeakPtr<SpdySession> CreateInsecureSpdySession( - const scoped_refptr<HttpNetworkSession>& http_session, + HttpNetworkSession* http_session, const SpdySessionKey& key, const BoundNetLog& net_log); @@ -253,14 +253,14 @@ base::WeakPtr<SpdySession> CreateInsecureSpdySession( // not already exist. The session will be created but close in the // next event loop iteration. base::WeakPtr<SpdySession> TryCreateInsecureSpdySessionExpectingFailure( - const scoped_refptr<HttpNetworkSession>& http_session, + HttpNetworkSession* http_session, const SpdySessionKey& key, Error expected_error, const BoundNetLog& net_log); // Like CreateInsecureSpdySession(), but uses TLS. base::WeakPtr<SpdySession> CreateSecureSpdySession( - const scoped_refptr<HttpNetworkSession>& http_session, + HttpNetworkSession* http_session, const SpdySessionKey& key, const BoundNetLog& net_log); diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/url_request_context_builder.cc index e2c77e9..76d85c0 100644 --- a/net/url_request/url_request_context_builder.cc +++ b/net/url_request/url_request_context_builder.cc @@ -386,9 +386,12 @@ scoped_ptr<URLRequestContext> URLRequestContextBuilder::Build() { network_session_params.quic_connection_options = http_network_session_params_.quic_connection_options; + storage->set_http_network_session( + make_scoped_ptr(new HttpNetworkSession(network_session_params))); + scoped_ptr<HttpTransactionFactory> http_transaction_factory; if (http_cache_enabled_) { - HttpCache::BackendFactory* http_cache_backend = NULL; + HttpCache::BackendFactory* http_cache_backend; if (http_cache_params_.type == HttpCacheParams::DISK) { http_cache_backend = new HttpCache::DefaultBackend( DISK_CACHE, CACHE_BACKEND_DEFAULT, http_cache_params_.path, @@ -398,13 +401,11 @@ scoped_ptr<URLRequestContext> URLRequestContextBuilder::Build() { HttpCache::DefaultBackend::InMemory(http_cache_params_.max_size); } - http_transaction_factory.reset( - new HttpCache(network_session_params, http_cache_backend)); + http_transaction_factory.reset(new HttpCache( + storage->http_network_session(), http_cache_backend, true)); } else { - scoped_refptr<HttpNetworkSession> network_session( - new HttpNetworkSession(network_session_params)); - - http_transaction_factory.reset(new HttpNetworkLayer(network_session.get())); + http_transaction_factory.reset( + new HttpNetworkLayer(storage->http_network_session())); } storage->set_http_transaction_factory(http_transaction_factory.Pass()); diff --git a/net/url_request/url_request_context_storage.cc b/net/url_request/url_request_context_storage.cc index 451fa96..e4294b2 100644 --- a/net/url_request/url_request_context_storage.cc +++ b/net/url_request/url_request_context_storage.cc @@ -96,6 +96,11 @@ void URLRequestContextStorage::set_transport_security_state( transport_security_state_ = transport_security_state.Pass(); } +void URLRequestContextStorage::set_http_network_session( + scoped_ptr<HttpNetworkSession> http_network_session) { + http_network_session_ = http_network_session.Pass(); +} + void URLRequestContextStorage::set_http_transaction_factory( scoped_ptr<HttpTransactionFactory> http_transaction_factory) { context_->set_http_transaction_factory(http_transaction_factory.get()); diff --git a/net/url_request/url_request_context_storage.h b/net/url_request/url_request_context_storage.h index 8e2bf0e..77c2807 100644 --- a/net/url_request/url_request_context_storage.h +++ b/net/url_request/url_request_context_storage.h @@ -18,6 +18,7 @@ class CookieStore; class FtpTransactionFactory; class HostResolver; class HttpAuthHandlerFactory; +class HttpNetworkSession; class HttpServerProperties; class HttpTransactionFactory; class HttpUserAgentSettings; @@ -59,6 +60,8 @@ class NET_EXPORT URLRequestContextStorage { void set_cookie_store(CookieStore* cookie_store); void set_transport_security_state( scoped_ptr<TransportSecurityState> transport_security_state); + void set_http_network_session( + scoped_ptr<HttpNetworkSession> http_network_session); void set_http_transaction_factory( scoped_ptr<HttpTransactionFactory> http_transaction_factory); void set_job_factory(scoped_ptr<URLRequestJobFactory> job_factory); @@ -70,6 +73,12 @@ class NET_EXPORT URLRequestContextStorage { scoped_ptr<HttpUserAgentSettings> http_user_agent_settings); void set_sdch_manager(scoped_ptr<SdchManager> sdch_manager); + // Everything else can be access through the URLRequestContext, but this + // cannot. Having an accessor for it makes usage a little cleaner. + HttpNetworkSession* http_network_session() const { + return http_network_session_.get(); + } + private: // We use a raw pointer to prevent reference cycles, since // URLRequestContextStorage can often be contained within a URLRequestContext @@ -92,6 +101,10 @@ class NET_EXPORT URLRequestContextStorage { scoped_refptr<CookieStore> cookie_store_; scoped_ptr<TransportSecurityState> transport_security_state_; + // Not actually pointed at by the URLRequestContext, but may be used (but not + // owned) by the HttpTransactionFactory. + scoped_ptr<HttpNetworkSession> http_network_session_; + scoped_ptr<HttpTransactionFactory> http_transaction_factory_; scoped_ptr<URLRequestJobFactory> job_factory_; scoped_ptr<URLRequestThrottlerManager> throttler_manager_; diff --git a/net/url_request/url_request_test_util.cc b/net/url_request/url_request_test_util.cc index 91c3542..0c240b8 100644 --- a/net/url_request/url_request_test_util.cc +++ b/net/url_request/url_request_test_util.cc @@ -108,10 +108,11 @@ void TestURLRequestContext::Init() { params.network_delegate = network_delegate(); params.http_server_properties = http_server_properties(); params.net_log = net_log(); - context_storage_.set_http_transaction_factory( - make_scoped_ptr(new HttpCache(new HttpNetworkSession(params), - HttpCache::DefaultBackend::InMemory(0))) - .Pass()); + context_storage_.set_http_network_session( + make_scoped_ptr(new HttpNetworkSession(params))); + context_storage_.set_http_transaction_factory(make_scoped_ptr( + new HttpCache(context_storage_.http_network_session(), + HttpCache::DefaultBackend::InMemory(0), false))); } // In-memory cookie store. if (!cookie_store()) diff --git a/net/url_request/url_request_unittest.cc b/net/url_request/url_request_unittest.cc index 645173e..f91a283 100644 --- a/net/url_request/url_request_unittest.cc +++ b/net/url_request/url_request_unittest.cc @@ -7090,12 +7090,13 @@ TEST_F(URLRequestTestHTTP, NetworkSuspendTest) { default_context_.http_auth_handler_factory(); params.network_delegate = &default_network_delegate_; params.http_server_properties = default_context_.http_server_properties(); + HttpNetworkSession network_session(params); scoped_ptr<HttpNetworkLayer> network_layer( - new HttpNetworkLayer(new HttpNetworkSession(params))); + new HttpNetworkLayer(&network_session)); network_layer->OnSuspend(); HttpCache http_cache(network_layer.release(), default_context_.net_log(), - HttpCache::DefaultBackend::InMemory(0)); + HttpCache::DefaultBackend::InMemory(0), true); TestURLRequestContext context(true); context.set_http_transaction_factory(&http_cache); @@ -7127,7 +7128,8 @@ TEST_F(URLRequestTestHTTP, NetworkSuspendTestNoCache) { default_context_.http_auth_handler_factory(); params.network_delegate = &default_network_delegate_; params.http_server_properties = default_context_.http_server_properties(); - HttpNetworkLayer network_layer(new HttpNetworkSession(params)); + HttpNetworkSession network_session(params); + HttpNetworkLayer network_layer(&network_session); network_layer.OnSuspend(); TestURLRequestContext context(true); @@ -8158,9 +8160,9 @@ TEST_F(HTTPSRequestTest, SSLSessionCacheShardTest) { params.http_server_properties = default_context_.http_server_properties(); params.ssl_session_cache_shard = "alternate"; + HttpNetworkSession network_session(params); scoped_ptr<HttpCache> cache(new HttpCache( - new HttpNetworkSession(params), - HttpCache::DefaultBackend::InMemory(0))); + &network_session, HttpCache::DefaultBackend::InMemory(0), false)); default_context_.set_http_transaction_factory(cache.get()); diff --git a/net/url_request/view_cache_helper_unittest.cc b/net/url_request/view_cache_helper_unittest.cc index 284482a..e10b203 100644 --- a/net/url_request/view_cache_helper_unittest.cc +++ b/net/url_request/view_cache_helper_unittest.cc @@ -31,8 +31,10 @@ class TestURLRequestContext : public URLRequestContext { }; TestURLRequestContext::TestURLRequestContext() - : cache_(new MockNetworkLayer(), NULL, - HttpCache::DefaultBackend::InMemory(0)) { + : cache_(new MockNetworkLayer(), + nullptr, + HttpCache::DefaultBackend::InMemory(0), + true) { set_http_transaction_factory(&cache_); } |