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 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
297 void URLRequestContextBuilder::SetHttpServerProperties( | 297 void URLRequestContextBuilder::SetHttpServerProperties( |
298 std::unique_ptr<HttpServerProperties> http_server_properties) { | 298 std::unique_ptr<HttpServerProperties> http_server_properties) { |
299 http_server_properties_ = std::move(http_server_properties); | 299 http_server_properties_ = std::move(http_server_properties); |
300 } | 300 } |
301 | 301 |
302 std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() { | 302 std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() { |
303 std::unique_ptr<ContainerURLRequestContext> context( | 303 std::unique_ptr<ContainerURLRequestContext> context( |
304 new ContainerURLRequestContext(file_task_runner_)); | 304 new ContainerURLRequestContext(file_task_runner_)); |
305 URLRequestContextStorage* storage = context->storage(); | 305 URLRequestContextStorage* storage = context->storage(); |
306 | 306 |
307 storage->set_http_user_agent_settings(base::WrapUnique( | 307 storage->set_http_user_agent_settings( |
308 new StaticHttpUserAgentSettings(accept_language_, user_agent_))); | 308 base::MakeUnique<StaticHttpUserAgentSettings>(accept_language_, |
| 309 user_agent_)); |
309 | 310 |
310 if (!network_delegate_) | 311 if (!network_delegate_) |
311 network_delegate_.reset(new BasicNetworkDelegate); | 312 network_delegate_.reset(new BasicNetworkDelegate); |
312 storage->set_network_delegate(std::move(network_delegate_)); | 313 storage->set_network_delegate(std::move(network_delegate_)); |
313 | 314 |
314 if (net_log_) { | 315 if (net_log_) { |
315 // Unlike the other builder parameters, |net_log_| is not owned by the | 316 // Unlike the other builder parameters, |net_log_| is not owned by the |
316 // builder or resulting context. | 317 // builder or resulting context. |
317 context->set_net_log(net_log_); | 318 context->set_net_log(net_log_); |
318 } else { | 319 } else { |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
364 storage->set_cookie_store(std::move(cookie_store)); | 365 storage->set_cookie_store(std::move(cookie_store)); |
365 storage->set_channel_id_service(std::move(channel_id_service)); | 366 storage->set_channel_id_service(std::move(channel_id_service)); |
366 } | 367 } |
367 | 368 |
368 if (sdch_enabled_) { | 369 if (sdch_enabled_) { |
369 storage->set_sdch_manager( | 370 storage->set_sdch_manager( |
370 std::unique_ptr<net::SdchManager>(new SdchManager())); | 371 std::unique_ptr<net::SdchManager>(new SdchManager())); |
371 } | 372 } |
372 | 373 |
373 storage->set_transport_security_state( | 374 storage->set_transport_security_state( |
374 base::WrapUnique(new TransportSecurityState())); | 375 base::MakeUnique<TransportSecurityState>()); |
375 if (!transport_security_persister_path_.empty()) { | 376 if (!transport_security_persister_path_.empty()) { |
376 context->set_transport_security_persister( | 377 context->set_transport_security_persister( |
377 base::WrapUnique<TransportSecurityPersister>( | 378 base::WrapUnique<TransportSecurityPersister>( |
378 new TransportSecurityPersister(context->transport_security_state(), | 379 new TransportSecurityPersister(context->transport_security_state(), |
379 transport_security_persister_path_, | 380 transport_security_persister_path_, |
380 context->GetFileTaskRunner(), | 381 context->GetFileTaskRunner(), |
381 false))); | 382 false))); |
382 } | 383 } |
383 | 384 |
384 if (http_server_properties_) { | 385 if (http_server_properties_) { |
(...skipping 14 matching lines...) Expand all Loading... |
399 } else { | 400 } else { |
400 std::unique_ptr<MultiLogCTVerifier> ct_verifier = | 401 std::unique_ptr<MultiLogCTVerifier> ct_verifier = |
401 base::MakeUnique<MultiLogCTVerifier>(); | 402 base::MakeUnique<MultiLogCTVerifier>(); |
402 ct_verifier->AddLogs(ct::CreateLogVerifiersForKnownLogs()); | 403 ct_verifier->AddLogs(ct::CreateLogVerifiersForKnownLogs()); |
403 storage->set_cert_transparency_verifier(std::move(ct_verifier)); | 404 storage->set_cert_transparency_verifier(std::move(ct_verifier)); |
404 } | 405 } |
405 storage->set_ct_policy_enforcer(base::MakeUnique<CTPolicyEnforcer>()); | 406 storage->set_ct_policy_enforcer(base::MakeUnique<CTPolicyEnforcer>()); |
406 | 407 |
407 if (throttling_enabled_) { | 408 if (throttling_enabled_) { |
408 storage->set_throttler_manager( | 409 storage->set_throttler_manager( |
409 base::WrapUnique(new URLRequestThrottlerManager())); | 410 base::MakeUnique<URLRequestThrottlerManager>()); |
410 } | 411 } |
411 | 412 |
412 HttpNetworkSession::Params network_session_params; | 413 HttpNetworkSession::Params network_session_params; |
413 SetHttpNetworkSessionComponents(context.get(), &network_session_params); | 414 SetHttpNetworkSessionComponents(context.get(), &network_session_params); |
414 | 415 |
415 network_session_params.ignore_certificate_errors = | 416 network_session_params.ignore_certificate_errors = |
416 http_network_session_params_.ignore_certificate_errors; | 417 http_network_session_params_.ignore_certificate_errors; |
417 network_session_params.host_mapping_rules = | 418 network_session_params.host_mapping_rules = |
418 http_network_session_params_.host_mapping_rules; | 419 http_network_session_params_.host_mapping_rules; |
419 network_session_params.testing_fixed_http_port = | 420 network_session_params.testing_fixed_http_port = |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
454 if (proxy_delegate_) { | 455 if (proxy_delegate_) { |
455 network_session_params.proxy_delegate = proxy_delegate_.get(); | 456 network_session_params.proxy_delegate = proxy_delegate_.get(); |
456 storage->set_proxy_delegate(std::move(proxy_delegate_)); | 457 storage->set_proxy_delegate(std::move(proxy_delegate_)); |
457 } | 458 } |
458 if (socket_performance_watcher_factory_) { | 459 if (socket_performance_watcher_factory_) { |
459 network_session_params.socket_performance_watcher_factory = | 460 network_session_params.socket_performance_watcher_factory = |
460 socket_performance_watcher_factory_; | 461 socket_performance_watcher_factory_; |
461 } | 462 } |
462 | 463 |
463 storage->set_http_network_session( | 464 storage->set_http_network_session( |
464 base::WrapUnique(new HttpNetworkSession(network_session_params))); | 465 base::MakeUnique<HttpNetworkSession>(network_session_params)); |
465 | 466 |
466 std::unique_ptr<HttpTransactionFactory> http_transaction_factory; | 467 std::unique_ptr<HttpTransactionFactory> http_transaction_factory; |
467 if (http_cache_enabled_) { | 468 if (http_cache_enabled_) { |
468 std::unique_ptr<HttpCache::BackendFactory> http_cache_backend; | 469 std::unique_ptr<HttpCache::BackendFactory> http_cache_backend; |
469 if (http_cache_params_.type != HttpCacheParams::IN_MEMORY) { | 470 if (http_cache_params_.type != HttpCacheParams::IN_MEMORY) { |
470 BackendType backend_type = | 471 BackendType backend_type = |
471 http_cache_params_.type == HttpCacheParams::DISK | 472 http_cache_params_.type == HttpCacheParams::DISK |
472 ? CACHE_BACKEND_DEFAULT | 473 ? CACHE_BACKEND_DEFAULT |
473 : CACHE_BACKEND_SIMPLE; | 474 : CACHE_BACKEND_SIMPLE; |
474 http_cache_backend.reset(new HttpCache::DefaultBackend( | 475 http_cache_backend.reset(new HttpCache::DefaultBackend( |
(...skipping 21 matching lines...) Expand all Loading... |
496 } | 497 } |
497 protocol_handlers_.clear(); | 498 protocol_handlers_.clear(); |
498 | 499 |
499 if (data_enabled_) | 500 if (data_enabled_) |
500 job_factory->SetProtocolHandler("data", | 501 job_factory->SetProtocolHandler("data", |
501 base::WrapUnique(new DataProtocolHandler)); | 502 base::WrapUnique(new DataProtocolHandler)); |
502 | 503 |
503 #if !defined(DISABLE_FILE_SUPPORT) | 504 #if !defined(DISABLE_FILE_SUPPORT) |
504 if (file_enabled_) { | 505 if (file_enabled_) { |
505 job_factory->SetProtocolHandler( | 506 job_factory->SetProtocolHandler( |
506 "file", base::WrapUnique( | 507 "file", |
507 new FileProtocolHandler(context->GetFileTaskRunner()))); | 508 base::MakeUnique<FileProtocolHandler>(context->GetFileTaskRunner())); |
508 } | 509 } |
509 #endif // !defined(DISABLE_FILE_SUPPORT) | 510 #endif // !defined(DISABLE_FILE_SUPPORT) |
510 | 511 |
511 #if !defined(DISABLE_FTP_SUPPORT) | 512 #if !defined(DISABLE_FTP_SUPPORT) |
512 if (ftp_enabled_) { | 513 if (ftp_enabled_) { |
513 ftp_transaction_factory_.reset( | 514 ftp_transaction_factory_.reset( |
514 new FtpNetworkLayer(context->host_resolver())); | 515 new FtpNetworkLayer(context->host_resolver())); |
515 job_factory->SetProtocolHandler( | 516 job_factory->SetProtocolHandler("ftp", base::MakeUnique<FtpProtocolHandler>( |
516 "ftp", base::WrapUnique( | 517 ftp_transaction_factory_.get())); |
517 new FtpProtocolHandler(ftp_transaction_factory_.get()))); | |
518 } | 518 } |
519 #endif // !defined(DISABLE_FTP_SUPPORT) | 519 #endif // !defined(DISABLE_FTP_SUPPORT) |
520 | 520 |
521 std::unique_ptr<net::URLRequestJobFactory> top_job_factory(job_factory); | 521 std::unique_ptr<net::URLRequestJobFactory> top_job_factory(job_factory); |
522 if (!url_request_interceptors_.empty()) { | 522 if (!url_request_interceptors_.empty()) { |
523 // Set up interceptors in the reverse order. | 523 // Set up interceptors in the reverse order. |
524 | 524 |
525 for (auto i = url_request_interceptors_.rbegin(); | 525 for (auto i = url_request_interceptors_.rbegin(); |
526 i != url_request_interceptors_.rend(); ++i) { | 526 i != url_request_interceptors_.rend(); ++i) { |
527 top_job_factory.reset(new net::URLRequestInterceptingJobFactory( | 527 top_job_factory.reset(new net::URLRequestInterceptingJobFactory( |
528 std::move(top_job_factory), std::move(*i))); | 528 std::move(top_job_factory), std::move(*i))); |
529 } | 529 } |
530 url_request_interceptors_.clear(); | 530 url_request_interceptors_.clear(); |
531 } | 531 } |
532 storage->set_job_factory(std::move(top_job_factory)); | 532 storage->set_job_factory(std::move(top_job_factory)); |
533 // TODO(willchan): Support sdch. | 533 // TODO(willchan): Support sdch. |
534 | 534 |
535 return std::move(context); | 535 return std::move(context); |
536 } | 536 } |
537 | 537 |
538 } // namespace net | 538 } // namespace net |
OLD | NEW |