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 "net/url_request/url_request_context_builder.h" | 5 #include "net/url_request/url_request_context_builder.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <utility> | 8 #include <utility> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
252 throttling_enabled_(false), | 252 throttling_enabled_(false), |
253 sdch_enabled_(false), | 253 sdch_enabled_(false), |
254 cookie_store_set_by_client_(false), | 254 cookie_store_set_by_client_(false), |
255 net_log_(nullptr), | 255 net_log_(nullptr), |
256 socket_performance_watcher_factory_(nullptr) { | 256 socket_performance_watcher_factory_(nullptr) { |
257 } | 257 } |
258 | 258 |
259 URLRequestContextBuilder::~URLRequestContextBuilder() {} | 259 URLRequestContextBuilder::~URLRequestContextBuilder() {} |
260 | 260 |
261 void URLRequestContextBuilder::SetHttpNetworkSessionComponents( | 261 void URLRequestContextBuilder::SetHttpNetworkSessionComponents( |
262 const URLRequestContext* context, | 262 const URLRequestContext* request_context, |
263 HttpNetworkSession::Params* params) { | 263 HttpNetworkSession::Context* session_context) { |
264 params->host_resolver = context->host_resolver(); | 264 session_context->host_resolver = request_context->host_resolver(); |
265 params->cert_verifier = context->cert_verifier(); | 265 session_context->cert_verifier = request_context->cert_verifier(); |
266 params->transport_security_state = context->transport_security_state(); | 266 session_context->transport_security_state = |
267 params->cert_transparency_verifier = context->cert_transparency_verifier(); | 267 request_context->transport_security_state(); |
268 params->ct_policy_enforcer = context->ct_policy_enforcer(); | 268 session_context->cert_transparency_verifier = |
269 params->proxy_service = context->proxy_service(); | 269 request_context->cert_transparency_verifier(); |
270 params->ssl_config_service = context->ssl_config_service(); | 270 session_context->ct_policy_enforcer = request_context->ct_policy_enforcer(); |
271 params->http_auth_handler_factory = context->http_auth_handler_factory(); | 271 session_context->proxy_service = request_context->proxy_service(); |
272 params->http_server_properties = context->http_server_properties(); | 272 session_context->ssl_config_service = request_context->ssl_config_service(); |
273 params->net_log = context->net_log(); | 273 session_context->http_auth_handler_factory = |
274 params->channel_id_service = context->channel_id_service(); | 274 request_context->http_auth_handler_factory(); |
| 275 session_context->http_server_properties = |
| 276 request_context->http_server_properties(); |
| 277 session_context->net_log = request_context->net_log(); |
| 278 session_context->channel_id_service = request_context->channel_id_service(); |
275 } | 279 } |
276 | 280 |
277 void URLRequestContextBuilder::EnableHttpCache(const HttpCacheParams& params) { | 281 void URLRequestContextBuilder::EnableHttpCache(const HttpCacheParams& params) { |
278 http_cache_enabled_ = true; | 282 http_cache_enabled_ = true; |
279 http_cache_params_ = params; | 283 http_cache_params_ = params; |
280 } | 284 } |
281 | 285 |
282 void URLRequestContextBuilder::DisableHttpCache() { | 286 void URLRequestContextBuilder::DisableHttpCache() { |
283 http_cache_enabled_ = false; | 287 http_cache_enabled_ = false; |
284 http_cache_params_ = HttpCacheParams(); | 288 http_cache_params_ = HttpCacheParams(); |
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
444 context->GetFileTaskRunner()); | 448 context->GetFileTaskRunner()); |
445 } | 449 } |
446 #endif // !defined(OS_LINUX) && !defined(OS_ANDROID) | 450 #endif // !defined(OS_LINUX) && !defined(OS_ANDROID) |
447 proxy_service_ = | 451 proxy_service_ = |
448 CreateProxyService(std::move(proxy_config_service_), context.get(), | 452 CreateProxyService(std::move(proxy_config_service_), context.get(), |
449 context->host_resolver(), | 453 context->host_resolver(), |
450 context->network_delegate(), context->net_log()); | 454 context->network_delegate(), context->net_log()); |
451 } | 455 } |
452 storage->set_proxy_service(std::move(proxy_service_)); | 456 storage->set_proxy_service(std::move(proxy_service_)); |
453 | 457 |
| 458 HttpNetworkSession::Context network_session_context; |
| 459 SetHttpNetworkSessionComponents(context.get(), &network_session_context); |
454 HttpNetworkSession::Params network_session_params; | 460 HttpNetworkSession::Params network_session_params; |
455 SetHttpNetworkSessionComponents(context.get(), &network_session_params); | |
456 http_network_session_params_.ConfigureSessionParams(&network_session_params); | 461 http_network_session_params_.ConfigureSessionParams(&network_session_params); |
457 | 462 |
458 if (proxy_delegate_) { | 463 if (proxy_delegate_) { |
459 network_session_params.proxy_delegate = proxy_delegate_.get(); | 464 network_session_context.proxy_delegate = proxy_delegate_.get(); |
460 storage->set_proxy_delegate(std::move(proxy_delegate_)); | 465 storage->set_proxy_delegate(std::move(proxy_delegate_)); |
461 } | 466 } |
462 if (socket_performance_watcher_factory_) { | 467 if (socket_performance_watcher_factory_) { |
463 network_session_params.socket_performance_watcher_factory = | 468 network_session_context.socket_performance_watcher_factory = |
464 socket_performance_watcher_factory_; | 469 socket_performance_watcher_factory_; |
465 } | 470 } |
466 | 471 |
467 storage->set_http_network_session( | 472 storage->set_http_network_session(base::MakeUnique<HttpNetworkSession>( |
468 base::MakeUnique<HttpNetworkSession>(network_session_params)); | 473 network_session_params, network_session_context)); |
469 | 474 |
470 std::unique_ptr<HttpTransactionFactory> http_transaction_factory; | 475 std::unique_ptr<HttpTransactionFactory> http_transaction_factory; |
471 if (http_cache_enabled_) { | 476 if (http_cache_enabled_) { |
472 std::unique_ptr<HttpCache::BackendFactory> http_cache_backend; | 477 std::unique_ptr<HttpCache::BackendFactory> http_cache_backend; |
473 if (http_cache_params_.type != HttpCacheParams::IN_MEMORY) { | 478 if (http_cache_params_.type != HttpCacheParams::IN_MEMORY) { |
474 BackendType backend_type = | 479 BackendType backend_type = |
475 http_cache_params_.type == HttpCacheParams::DISK | 480 http_cache_params_.type == HttpCacheParams::DISK |
476 ? CACHE_BACKEND_DEFAULT | 481 ? CACHE_BACKEND_DEFAULT |
477 : CACHE_BACKEND_SIMPLE; | 482 : CACHE_BACKEND_SIMPLE; |
478 http_cache_backend.reset(new HttpCache::DefaultBackend( | 483 http_cache_backend.reset(new HttpCache::DefaultBackend( |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
540 std::unique_ptr<ProxyConfigService> proxy_config_service, | 545 std::unique_ptr<ProxyConfigService> proxy_config_service, |
541 URLRequestContext* url_request_context, | 546 URLRequestContext* url_request_context, |
542 HostResolver* host_resolver, | 547 HostResolver* host_resolver, |
543 NetworkDelegate* network_delegate, | 548 NetworkDelegate* network_delegate, |
544 NetLog* net_log) { | 549 NetLog* net_log) { |
545 return ProxyService::CreateUsingSystemProxyResolver( | 550 return ProxyService::CreateUsingSystemProxyResolver( |
546 std::move(proxy_config_service), net_log); | 551 std::move(proxy_config_service), net_log); |
547 } | 552 } |
548 | 553 |
549 } // namespace net | 554 } // namespace net |
OLD | NEW |