OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/profiles/profile_io_data.h" | 5 #include "chrome/browser/profiles/profile_io_data.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 10 matching lines...) Expand all Loading... |
21 #include "base/strings/string_util.h" | 21 #include "base/strings/string_util.h" |
22 #include "base/strings/stringprintf.h" | 22 #include "base/strings/stringprintf.h" |
23 #include "base/threading/sequenced_worker_pool.h" | 23 #include "base/threading/sequenced_worker_pool.h" |
24 #include "chrome/browser/browser_process.h" | 24 #include "chrome/browser/browser_process.h" |
25 #include "chrome/browser/chrome_notification_types.h" | 25 #include "chrome/browser/chrome_notification_types.h" |
26 #include "chrome/browser/content_settings/content_settings_provider.h" | 26 #include "chrome/browser/content_settings/content_settings_provider.h" |
27 #include "chrome/browser/content_settings/cookie_settings.h" | 27 #include "chrome/browser/content_settings/cookie_settings.h" |
28 #include "chrome/browser/content_settings/host_content_settings_map.h" | 28 #include "chrome/browser/content_settings/host_content_settings_map.h" |
29 #include "chrome/browser/custom_handlers/protocol_handler_registry.h" | 29 #include "chrome/browser/custom_handlers/protocol_handler_registry.h" |
30 #include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h" | 30 #include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h" |
| 31 #include "chrome/browser/devtools/devtools_network_controller.h" |
| 32 #include "chrome/browser/devtools/devtools_network_transaction_factory.h" |
31 #include "chrome/browser/download/download_service.h" | 33 #include "chrome/browser/download/download_service.h" |
32 #include "chrome/browser/download/download_service_factory.h" | 34 #include "chrome/browser/download/download_service_factory.h" |
33 #include "chrome/browser/extensions/extension_protocols.h" | 35 #include "chrome/browser/extensions/extension_protocols.h" |
34 #include "chrome/browser/extensions/extension_resource_protocols.h" | 36 #include "chrome/browser/extensions/extension_resource_protocols.h" |
35 #include "chrome/browser/io_thread.h" | 37 #include "chrome/browser/io_thread.h" |
36 #include "chrome/browser/media/media_device_id_salt.h" | 38 #include "chrome/browser/media/media_device_id_salt.h" |
37 #include "chrome/browser/net/about_protocol_handler.h" | 39 #include "chrome/browser/net/about_protocol_handler.h" |
38 #include "chrome/browser/net/chrome_fraudulent_certificate_reporter.h" | 40 #include "chrome/browser/net/chrome_fraudulent_certificate_reporter.h" |
39 #include "chrome/browser/net/chrome_http_user_agent_settings.h" | 41 #include "chrome/browser/net/chrome_http_user_agent_settings.h" |
40 #include "chrome/browser/net/chrome_net_log.h" | 42 #include "chrome/browser/net/chrome_net_log.h" |
(...skipping 1090 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1131 | 1133 |
1132 void ProfileIOData::set_server_bound_cert_service( | 1134 void ProfileIOData::set_server_bound_cert_service( |
1133 net::ServerBoundCertService* server_bound_cert_service) const { | 1135 net::ServerBoundCertService* server_bound_cert_service) const { |
1134 server_bound_cert_service_.reset(server_bound_cert_service); | 1136 server_bound_cert_service_.reset(server_bound_cert_service); |
1135 } | 1137 } |
1136 | 1138 |
1137 void ProfileIOData::DestroyResourceContext() { | 1139 void ProfileIOData::DestroyResourceContext() { |
1138 resource_context_.reset(); | 1140 resource_context_.reset(); |
1139 } | 1141 } |
1140 | 1142 |
1141 void ProfileIOData::PopulateNetworkSessionParams( | 1143 scoped_ptr<net::HttpCache> ProfileIOData::CreateMainHttpFactory( |
1142 const ProfileParams* profile_params, | 1144 const ProfileParams* profile_params, |
1143 net::HttpNetworkSession::Params* params) const { | 1145 net::HttpCache::BackendFactory* main_backend) const { |
1144 | 1146 net::HttpNetworkSession::Params params; |
1145 ChromeURLRequestContext* context = main_request_context(); | 1147 ChromeURLRequestContext* context = main_request_context(); |
1146 | 1148 |
1147 IOThread* const io_thread = profile_params->io_thread; | 1149 IOThread* const io_thread = profile_params->io_thread; |
1148 | 1150 |
1149 io_thread->InitializeNetworkSessionParams(params); | 1151 io_thread->InitializeNetworkSessionParams(¶ms); |
1150 | 1152 |
1151 params->host_resolver = context->host_resolver(); | 1153 params.host_resolver = context->host_resolver(); |
1152 params->cert_verifier = context->cert_verifier(); | 1154 params.cert_verifier = context->cert_verifier(); |
1153 params->server_bound_cert_service = context->server_bound_cert_service(); | 1155 params.server_bound_cert_service = context->server_bound_cert_service(); |
1154 params->transport_security_state = context->transport_security_state(); | 1156 params.transport_security_state = context->transport_security_state(); |
1155 params->cert_transparency_verifier = context->cert_transparency_verifier(); | 1157 params.cert_transparency_verifier = context->cert_transparency_verifier(); |
1156 params->proxy_service = context->proxy_service(); | 1158 params.proxy_service = context->proxy_service(); |
1157 params->ssl_session_cache_shard = GetSSLSessionCacheShard(); | 1159 params.ssl_session_cache_shard = GetSSLSessionCacheShard(); |
1158 params->ssl_config_service = context->ssl_config_service(); | 1160 params.ssl_config_service = context->ssl_config_service(); |
1159 params->http_auth_handler_factory = context->http_auth_handler_factory(); | 1161 params.http_auth_handler_factory = context->http_auth_handler_factory(); |
1160 params->network_delegate = network_delegate(); | 1162 params.network_delegate = network_delegate(); |
1161 params->http_server_properties = context->http_server_properties(); | 1163 params.http_server_properties = context->http_server_properties(); |
1162 params->net_log = context->net_log(); | 1164 params.net_log = context->net_log(); |
| 1165 |
| 1166 network_controller_.reset(new DevToolsNetworkController()); |
| 1167 |
| 1168 net::HttpNetworkSession* session = new net::HttpNetworkSession(params); |
| 1169 return scoped_ptr<net::HttpCache>(new net::HttpCache( |
| 1170 new DevToolsNetworkTransactionFactory(network_controller_.get(), session), |
| 1171 context->net_log(), main_backend, true)); |
| 1172 } |
| 1173 |
| 1174 scoped_ptr<net::HttpCache> ProfileIOData::CreateHttpFactory( |
| 1175 net::HttpNetworkSession* shared_session, |
| 1176 net::HttpCache::BackendFactory* backend) const { |
| 1177 return scoped_ptr<net::HttpCache>(new net::HttpCache( |
| 1178 new DevToolsNetworkTransactionFactory( |
| 1179 network_controller_.get(), shared_session), |
| 1180 shared_session->net_log(), backend, false)); |
1163 } | 1181 } |
1164 | 1182 |
1165 void ProfileIOData::SetCookieSettingsForTesting( | 1183 void ProfileIOData::SetCookieSettingsForTesting( |
1166 CookieSettings* cookie_settings) { | 1184 CookieSettings* cookie_settings) { |
1167 DCHECK(!cookie_settings_.get()); | 1185 DCHECK(!cookie_settings_.get()); |
1168 cookie_settings_ = cookie_settings; | 1186 cookie_settings_ = cookie_settings; |
1169 } | 1187 } |
1170 | 1188 |
1171 void ProfileIOData::set_signin_names_for_testing( | 1189 void ProfileIOData::set_signin_names_for_testing( |
1172 SigninNamesOnIOThread* signin_names) { | 1190 SigninNamesOnIOThread* signin_names) { |
1173 signin_names_.reset(signin_names); | 1191 signin_names_.reset(signin_names); |
1174 } | 1192 } |
OLD | NEW |