Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Side by Side Diff: chromecast/shell/browser/url_request_context_factory.cc

Issue 442213002: Chromecast shell build fix in CastBrowserContext (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "chromecast/shell/browser/url_request_context_factory.h" 5 #include "chromecast/shell/browser/url_request_context_factory.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/files/file_path.h" 8 #include "base/files/file_path.h"
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/path_service.h" 10 #include "base/path_service.h"
11 #include "base/threading/worker_pool.h" 11 #include "base/threading/worker_pool.h"
12 #include "chromecast/shell/browser/cast_http_user_agent_settings.h" 12 #include "chromecast/shell/browser/cast_http_user_agent_settings.h"
13 #include "content/public/browser/browser_context.h" 13 #include "content/public/browser/browser_context.h"
14 #include "content/public/browser/browser_thread.h" 14 #include "content/public/browser/browser_thread.h"
15 #include "content/public/browser/cookie_store_factory.h" 15 #include "content/public/browser/cookie_store_factory.h"
16 #include "content/public/common/content_switches.h" 16 #include "content/public/common/content_switches.h"
17 #include "content/public/common/url_constants.h" 17 #include "content/public/common/url_constants.h"
18 #include "net/cert/cert_verifier.h" 18 #include "net/cert/cert_verifier.h"
19 #include "net/cookies/cookie_store.h" 19 #include "net/cookies/cookie_store.h"
20 #include "net/dns/host_resolver.h" 20 #include "net/dns/host_resolver.h"
21 #include "net/http/http_auth_handler_factory.h" 21 #include "net/http/http_auth_handler_factory.h"
22 #include "net/http/http_cache.h" 22 #include "net/http/http_cache.h"
23 #include "net/http/http_network_layer.h" 23 #include "net/http/http_network_layer.h"
24 #include "net/http/http_server_properties_impl.h" 24 #include "net/http/http_server_properties_impl.h"
25 #include "net/http/http_stream_factory.h" 25 #include "net/http/http_stream_factory.h"
26 #include "net/ocsp/nss_ocsp.h" 26 #include "net/ocsp/nss_ocsp.h"
27 #include "net/proxy/proxy_service.h" 27 #include "net/proxy/proxy_service.h"
28 #include "net/socket/next_proto.h" 28 #include "net/socket/next_proto.h"
29 #include "net/ssl/default_server_bound_cert_store.h" 29 #include "net/ssl/channel_id_service.h"
30 #include "net/ssl/server_bound_cert_service.h" 30 #include "net/ssl/default_channel_id_store.h"
31 #include "net/ssl/ssl_config_service_defaults.h" 31 #include "net/ssl/ssl_config_service_defaults.h"
32 #include "net/url_request/data_protocol_handler.h" 32 #include "net/url_request/data_protocol_handler.h"
33 #include "net/url_request/url_request_context.h" 33 #include "net/url_request/url_request_context.h"
34 #include "net/url_request/url_request_context_getter.h" 34 #include "net/url_request/url_request_context_getter.h"
35 #include "net/url_request/url_request_intercepting_job_factory.h" 35 #include "net/url_request/url_request_intercepting_job_factory.h"
36 #include "net/url_request/url_request_job_factory_impl.h" 36 #include "net/url_request/url_request_job_factory_impl.h"
37 37
38 namespace chromecast { 38 namespace chromecast {
39 namespace shell { 39 namespace shell {
40 40
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 return media_getter_.get(); 177 return media_getter_.get();
178 } 178 }
179 179
180 void URLRequestContextFactory::InitializeSystemContextDependencies() { 180 void URLRequestContextFactory::InitializeSystemContextDependencies() {
181 if (system_dependencies_initialized_) 181 if (system_dependencies_initialized_)
182 return; 182 return;
183 183
184 host_resolver_ = net::HostResolver::CreateDefaultResolver(NULL); 184 host_resolver_ = net::HostResolver::CreateDefaultResolver(NULL);
185 185
186 // TODO(lcwu): http://crbug.com/392352. For performance and security reasons, 186 // TODO(lcwu): http://crbug.com/392352. For performance and security reasons,
187 // a persistent (on-disk) HttpServerProperties and ServerBoundCertService 187 // a persistent (on-disk) HttpServerProperties and ChannelIDService
188 // might be desirable in the future. 188 // might be desirable in the future.
189 server_bound_cert_service_.reset(new net::ServerBoundCertService( 189 channel_id_service_.reset(new net::ChannelIDService(
190 new net::DefaultServerBoundCertStore(NULL), 190 new net::DefaultChannelIDStore(NULL),
191 base::WorkerPool::GetTaskRunner(true))); 191 base::WorkerPool::GetTaskRunner(true)));
192 192
193 cert_verifier_.reset(net::CertVerifier::CreateDefault()); 193 cert_verifier_.reset(net::CertVerifier::CreateDefault());
194 194
195 ssl_config_service_ = new net::SSLConfigServiceDefaults; 195 ssl_config_service_ = new net::SSLConfigServiceDefaults;
196 196
197 transport_security_state_.reset(new net::TransportSecurityState()); 197 transport_security_state_.reset(new net::TransportSecurityState());
198 http_auth_handler_factory_.reset( 198 http_auth_handler_factory_.reset(
199 net::HttpAuthHandlerFactory::CreateDefault(host_resolver_.get())); 199 net::HttpAuthHandlerFactory::CreateDefault(host_resolver_.get()));
200 200
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
260 260
261 media_transaction_factory_.reset(transaction_factory); 261 media_transaction_factory_.reset(transaction_factory);
262 media_dependencies_initialized_ = true; 262 media_dependencies_initialized_ = true;
263 } 263 }
264 264
265 void URLRequestContextFactory::PopulateNetworkSessionParams( 265 void URLRequestContextFactory::PopulateNetworkSessionParams(
266 bool ignore_certificate_errors, 266 bool ignore_certificate_errors,
267 net::HttpNetworkSession::Params* params) { 267 net::HttpNetworkSession::Params* params) {
268 params->host_resolver = host_resolver_.get(); 268 params->host_resolver = host_resolver_.get();
269 params->cert_verifier = cert_verifier_.get(); 269 params->cert_verifier = cert_verifier_.get();
270 params->server_bound_cert_service = server_bound_cert_service_.get(); 270 params->channel_id_service = channel_id_service_.get();
271 params->ssl_config_service = ssl_config_service_.get(); 271 params->ssl_config_service = ssl_config_service_.get();
272 params->transport_security_state = transport_security_state_.get(); 272 params->transport_security_state = transport_security_state_.get();
273 params->http_auth_handler_factory = http_auth_handler_factory_.get(); 273 params->http_auth_handler_factory = http_auth_handler_factory_.get();
274 params->http_server_properties = http_server_properties_->GetWeakPtr(); 274 params->http_server_properties = http_server_properties_->GetWeakPtr();
275 params->ignore_certificate_errors = ignore_certificate_errors; 275 params->ignore_certificate_errors = ignore_certificate_errors;
276 params->proxy_service = proxy_service_.get(); 276 params->proxy_service = proxy_service_.get();
277 277
278 // TODO(lcwu): http://crbug.com/329681. Remove this once spdy is enabled 278 // TODO(lcwu): http://crbug.com/329681. Remove this once spdy is enabled
279 // by default at the content level. 279 // by default at the content level.
280 params->next_protos = net::NextProtosSpdy31(); 280 params->next_protos = net::NextProtosSpdy31();
281 params->use_alternate_protocols = true; 281 params->use_alternate_protocols = true;
282 } 282 }
283 283
284 net::URLRequestContext* URLRequestContextFactory::CreateSystemRequestContext() { 284 net::URLRequestContext* URLRequestContextFactory::CreateSystemRequestContext() {
285 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::IO)); 285 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::IO));
286 InitializeSystemContextDependencies(); 286 InitializeSystemContextDependencies();
287 net::HttpNetworkSession::Params system_params; 287 net::HttpNetworkSession::Params system_params;
288 PopulateNetworkSessionParams(false, &system_params); 288 PopulateNetworkSessionParams(false, &system_params);
289 system_transaction_factory_.reset(new net::HttpNetworkLayer( 289 system_transaction_factory_.reset(new net::HttpNetworkLayer(
290 new net::HttpNetworkSession(system_params))); 290 new net::HttpNetworkSession(system_params)));
291 291
292 net::URLRequestContext* system_context = new net::URLRequestContext(); 292 net::URLRequestContext* system_context = new net::URLRequestContext();
293 system_context->set_host_resolver(host_resolver_.get()); 293 system_context->set_host_resolver(host_resolver_.get());
294 system_context->set_server_bound_cert_service( 294 system_context->set_channel_id_service(
295 server_bound_cert_service_.get()); 295 channel_id_service_.get());
296 system_context->set_cert_verifier(cert_verifier_.get()); 296 system_context->set_cert_verifier(cert_verifier_.get());
297 system_context->set_proxy_service(proxy_service_.get()); 297 system_context->set_proxy_service(proxy_service_.get());
298 system_context->set_ssl_config_service(ssl_config_service_.get()); 298 system_context->set_ssl_config_service(ssl_config_service_.get());
299 system_context->set_transport_security_state( 299 system_context->set_transport_security_state(
300 transport_security_state_.get()); 300 transport_security_state_.get());
301 system_context->set_http_auth_handler_factory( 301 system_context->set_http_auth_handler_factory(
302 http_auth_handler_factory_.get()); 302 http_auth_handler_factory_.get());
303 system_context->set_http_server_properties( 303 system_context->set_http_server_properties(
304 http_server_properties_->GetWeakPtr()); 304 http_server_properties_->GetWeakPtr());
305 system_context->set_http_transaction_factory( 305 system_context->set_http_transaction_factory(
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
357 browser_context->GetPath().Append(kCookieStoreFile), 357 browser_context->GetPath().Append(kCookieStoreFile),
358 content::CookieStoreConfig::PERSISTANT_SESSION_COOKIES, 358 content::CookieStoreConfig::PERSISTANT_SESSION_COOKIES,
359 NULL, NULL); 359 NULL, NULL);
360 cookie_config.background_task_runner = 360 cookie_config.background_task_runner =
361 scoped_refptr<base::SequencedTaskRunner>(); 361 scoped_refptr<base::SequencedTaskRunner>();
362 scoped_refptr<net::CookieStore> cookie_store = 362 scoped_refptr<net::CookieStore> cookie_store =
363 content::CreateCookieStore(cookie_config); 363 content::CreateCookieStore(cookie_config);
364 364
365 net::URLRequestContext* main_context = new net::URLRequestContext(); 365 net::URLRequestContext* main_context = new net::URLRequestContext();
366 main_context->set_host_resolver(host_resolver_.get()); 366 main_context->set_host_resolver(host_resolver_.get());
367 main_context->set_server_bound_cert_service( 367 main_context->set_channel_id_service(
368 server_bound_cert_service_.get()); 368 channel_id_service_.get());
369 main_context->set_cert_verifier(cert_verifier_.get()); 369 main_context->set_cert_verifier(cert_verifier_.get());
370 main_context->set_proxy_service(proxy_service_.get()); 370 main_context->set_proxy_service(proxy_service_.get());
371 main_context->set_ssl_config_service(ssl_config_service_.get()); 371 main_context->set_ssl_config_service(ssl_config_service_.get());
372 main_context->set_transport_security_state(transport_security_state_.get()); 372 main_context->set_transport_security_state(transport_security_state_.get());
373 main_context->set_http_auth_handler_factory( 373 main_context->set_http_auth_handler_factory(
374 http_auth_handler_factory_.get()); 374 http_auth_handler_factory_.get());
375 main_context->set_http_server_properties( 375 main_context->set_http_server_properties(
376 http_server_properties_->GetWeakPtr()); 376 http_server_properties_->GetWeakPtr());
377 main_context->set_cookie_store(cookie_store.get()); 377 main_context->set_cookie_store(cookie_store.get());
378 main_context->set_http_user_agent_settings( 378 main_context->set_http_user_agent_settings(
379 http_user_agent_settings_.get()); 379 http_user_agent_settings_.get());
380 380
381 main_context->set_http_transaction_factory( 381 main_context->set_http_transaction_factory(
382 main_transaction_factory_.get()); 382 main_transaction_factory_.get());
383 main_context->set_job_factory(main_job_factory_.get()); 383 main_context->set_job_factory(main_job_factory_.get());
384 return main_context; 384 return main_context;
385 } 385 }
386 386
387 } // namespace shell 387 } // namespace shell
388 } // namespace chromecast 388 } // namespace chromecast
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698