1dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// Use of this source code is governed by a BSD-style license that can be 3dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// found in the LICENSE file. 4dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 5dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/url_request/url_request_context_storage.h" 6dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 7dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "base/logging.h" 8dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/base/cert_verifier.h" 9dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/base/cookie_policy.h" 10dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/base/cookie_store.h" 11dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/base/dnsrr_resolver.h" 12dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/base/host_resolver.h" 13dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/base/net_log.h" 14dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/base/network_delegate.h" 15dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/ftp/ftp_transaction_factory.h" 16dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/http/http_auth_handler_factory.h" 17dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/http/http_transaction_factory.h" 18dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/proxy/proxy_service.h" 19dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/url_request/url_request_context.h" 20dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 21dc0f95d653279beabeb9817299e2902918ba123eKristian Monsennamespace net { 22dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 23dc0f95d653279beabeb9817299e2902918ba123eKristian MonsenURLRequestContextStorage::URLRequestContextStorage(URLRequestContext* context) 24dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen : context_(context) { 25dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen DCHECK(context); 26dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 27dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 28dc0f95d653279beabeb9817299e2902918ba123eKristian MonsenURLRequestContextStorage::~URLRequestContextStorage() {} 29dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 30dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_net_log(NetLog* net_log) { 31dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_net_log(net_log); 32dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen net_log_.reset(net_log); 33dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 34dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 35dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_host_resolver(HostResolver* host_resolver) { 36dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_host_resolver(host_resolver); 37dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen host_resolver_.reset(host_resolver); 38dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 39dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 40dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_cert_verifier(CertVerifier* cert_verifier) { 41dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_cert_verifier(cert_verifier); 42dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen cert_verifier_.reset(cert_verifier); 43dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 44dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 45dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_dnsrr_resolver( 46dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen DnsRRResolver* dnsrr_resolver) { 47dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_dnsrr_resolver(dnsrr_resolver); 48dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen dnsrr_resolver_.reset(dnsrr_resolver); 49dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 50dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 51dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_dns_cert_checker( 52dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen DnsCertProvenanceChecker* dns_cert_checker) { 53dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_dns_cert_checker(dns_cert_checker); 54dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen dns_cert_checker_.reset(dns_cert_checker); 55dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 56dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 57dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_http_auth_handler_factory( 58dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen HttpAuthHandlerFactory* http_auth_handler_factory) { 59dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_http_auth_handler_factory(http_auth_handler_factory); 60dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen http_auth_handler_factory_.reset(http_auth_handler_factory); 61dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 62dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 63dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_proxy_service(ProxyService* proxy_service) { 64dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_proxy_service(proxy_service); 65dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen proxy_service_ = proxy_service; 66dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 67dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 68dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_ssl_config_service( 69dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen SSLConfigService* ssl_config_service) { 70dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_ssl_config_service(ssl_config_service); 71dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen ssl_config_service_ = ssl_config_service; 72dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 73dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 74dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_network_delegate( 75dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen NetworkDelegate* network_delegate) { 76dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_network_delegate(network_delegate); 77dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen network_delegate_.reset(network_delegate); 78dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 79dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 80dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_cookie_store(CookieStore* cookie_store) { 81dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_cookie_store(cookie_store); 82dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen cookie_store_ = cookie_store; 83dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 84dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 85dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_cookie_policy(CookiePolicy* cookie_policy) { 86dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_cookie_policy(cookie_policy); 87dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen cookie_policy_.reset(cookie_policy); 88dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 89dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 90dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_transport_security_state( 91dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen TransportSecurityState* transport_security_state) { 92dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_transport_security_state(transport_security_state); 93dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen transport_security_state_ = transport_security_state; 94dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 95dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 96dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_http_transaction_factory( 97dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen HttpTransactionFactory* http_transaction_factory) { 98dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_http_transaction_factory(http_transaction_factory); 99dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen http_transaction_factory_.reset(http_transaction_factory); 100dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 101dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 102dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid URLRequestContextStorage::set_ftp_transaction_factory( 103dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen FtpTransactionFactory* ftp_transaction_factory) { 104dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen context_->set_ftp_transaction_factory(ftp_transaction_factory); 105dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen ftp_transaction_factory_.reset(ftp_transaction_factory); 106dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 107dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 108dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} // namespace net 109