| Index: chrome/browser/profiles/profile_io_data.cc
|
| diff --git a/chrome/browser/profiles/profile_io_data.cc b/chrome/browser/profiles/profile_io_data.cc
|
| index ba8b91e3a189298ef1aa73d707ae8cbecf86c5fd..4df0e65c4b448c8f3e68ddbccf9daabafec5268b 100644
|
| --- a/chrome/browser/profiles/profile_io_data.cc
|
| +++ b/chrome/browser/profiles/profile_io_data.cc
|
| @@ -28,6 +28,8 @@
|
| #include "chrome/browser/content_settings/host_content_settings_map.h"
|
| #include "chrome/browser/custom_handlers/protocol_handler_registry.h"
|
| #include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h"
|
| +#include "chrome/browser/devtools/devtools_network_controller.h"
|
| +#include "chrome/browser/devtools/devtools_network_transaction_factory.h"
|
| #include "chrome/browser/download/download_service.h"
|
| #include "chrome/browser/download/download_service_factory.h"
|
| #include "chrome/browser/extensions/extension_resource_protocols.h"
|
| @@ -743,6 +745,12 @@ ResourceContext::SaltCallback ProfileIOData::GetMediaDeviceIDSalt() const {
|
| return base::Bind(&MediaDeviceIDSalt::GetSalt, media_device_id_salt_);
|
| }
|
|
|
| +void ProfileIOData::SetNetworkState(
|
| + const std::string& client_id, bool offline) const {
|
| + DCHECK(network_controller_);
|
| + network_controller_->SetNetworkState(client_id, offline);
|
| +}
|
| +
|
| bool ProfileIOData::IsOffTheRecord() const {
|
| return profile_type() == Profile::INCOGNITO_PROFILE
|
| || profile_type() == Profile::GUEST_PROFILE;
|
| @@ -895,6 +903,12 @@ ProfileIOData::ResourceContext::GetMediaDeviceIDSalt() {
|
| return io_data_->GetMediaDeviceIDSalt();
|
| }
|
|
|
| +void ProfileIOData::ResourceContext::SetNetworkState(
|
| + const std::string& client_id,
|
| + bool offline) {
|
| + io_data_->SetNetworkState(client_id, offline);
|
| +}
|
| +
|
| // static
|
| std::string ProfileIOData::GetSSLSessionCacheShard() {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
|
| @@ -1144,28 +1158,44 @@ void ProfileIOData::DestroyResourceContext() {
|
| resource_context_.reset();
|
| }
|
|
|
| -void ProfileIOData::PopulateNetworkSessionParams(
|
| +scoped_ptr<net::HttpCache> ProfileIOData::CreateMainHttpFactory(
|
| const ProfileParams* profile_params,
|
| - net::HttpNetworkSession::Params* params) const {
|
| -
|
| + net::HttpCache::BackendFactory* main_backend) const {
|
| + net::HttpNetworkSession::Params params;
|
| ChromeURLRequestContext* context = main_request_context();
|
|
|
| IOThread* const io_thread = profile_params->io_thread;
|
|
|
| - io_thread->InitializeNetworkSessionParams(params);
|
| -
|
| - params->host_resolver = context->host_resolver();
|
| - params->cert_verifier = context->cert_verifier();
|
| - params->server_bound_cert_service = context->server_bound_cert_service();
|
| - params->transport_security_state = context->transport_security_state();
|
| - params->cert_transparency_verifier = context->cert_transparency_verifier();
|
| - params->proxy_service = context->proxy_service();
|
| - params->ssl_session_cache_shard = GetSSLSessionCacheShard();
|
| - params->ssl_config_service = context->ssl_config_service();
|
| - params->http_auth_handler_factory = context->http_auth_handler_factory();
|
| - params->network_delegate = network_delegate();
|
| - params->http_server_properties = context->http_server_properties();
|
| - params->net_log = context->net_log();
|
| + io_thread->InitializeNetworkSessionParams(¶ms);
|
| +
|
| + params.host_resolver = context->host_resolver();
|
| + params.cert_verifier = context->cert_verifier();
|
| + params.server_bound_cert_service = context->server_bound_cert_service();
|
| + params.transport_security_state = context->transport_security_state();
|
| + params.cert_transparency_verifier = context->cert_transparency_verifier();
|
| + params.proxy_service = context->proxy_service();
|
| + params.ssl_session_cache_shard = GetSSLSessionCacheShard();
|
| + params.ssl_config_service = context->ssl_config_service();
|
| + params.http_auth_handler_factory = context->http_auth_handler_factory();
|
| + params.network_delegate = network_delegate();
|
| + params.http_server_properties = context->http_server_properties();
|
| + params.net_log = context->net_log();
|
| +
|
| + network_controller_.reset(new DevToolsNetworkController());
|
| +
|
| + net::HttpNetworkSession* session = new net::HttpNetworkSession(params);
|
| + return scoped_ptr<net::HttpCache>(new net::HttpCache(
|
| + new DevToolsNetworkTransactionFactory(network_controller_.get(), session),
|
| + context->net_log(), main_backend));
|
| +}
|
| +
|
| +scoped_ptr<net::HttpCache> ProfileIOData::CreateHttpFactory(
|
| + net::HttpNetworkSession* shared_session,
|
| + net::HttpCache::BackendFactory* backend) const {
|
| + return scoped_ptr<net::HttpCache>(new net::HttpCache(
|
| + new DevToolsNetworkTransactionFactory(
|
| + network_controller_.get(), shared_session),
|
| + shared_session->net_log(), backend));
|
| }
|
|
|
| void ProfileIOData::SetCookieSettingsForTesting(
|
|
|