| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "chrome/browser/extensions/extension_protocols.h" | 21 #include "chrome/browser/extensions/extension_protocols.h" |
| 22 #include "chrome/browser/io_thread.h" | 22 #include "chrome/browser/io_thread.h" |
| 23 #include "chrome/browser/media/media_internals.h" | 23 #include "chrome/browser/media/media_internals.h" |
| 24 #include "chrome/browser/net/chrome_cookie_notification_details.h" | 24 #include "chrome/browser/net/chrome_cookie_notification_details.h" |
| 25 #include "chrome/browser/net/chrome_dns_cert_provenance_checker_factory.h" | 25 #include "chrome/browser/net/chrome_dns_cert_provenance_checker_factory.h" |
| 26 #include "chrome/browser/net/chrome_net_log.h" | 26 #include "chrome/browser/net/chrome_net_log.h" |
| 27 #include "chrome/browser/net/chrome_network_delegate.h" | 27 #include "chrome/browser/net/chrome_network_delegate.h" |
| 28 #include "chrome/browser/net/pref_proxy_config_service.h" | 28 #include "chrome/browser/net/pref_proxy_config_service.h" |
| 29 #include "chrome/browser/net/proxy_service_factory.h" | 29 #include "chrome/browser/net/proxy_service_factory.h" |
| 30 #include "chrome/browser/notifications/desktop_notification_service_factory.h" | 30 #include "chrome/browser/notifications/desktop_notification_service_factory.h" |
| 31 #include "chrome/browser/policy/url_blacklist_manager.h" |
| 31 #include "chrome/browser/prefs/pref_service.h" | 32 #include "chrome/browser/prefs/pref_service.h" |
| 32 #include "chrome/browser/prerender/prerender_manager.h" | 33 #include "chrome/browser/prerender/prerender_manager.h" |
| 33 #include "chrome/browser/profiles/profile.h" | 34 #include "chrome/browser/profiles/profile.h" |
| 34 #include "chrome/browser/profiles/profile_manager.h" | 35 #include "chrome/browser/profiles/profile_manager.h" |
| 35 #include "chrome/browser/ui/webui/chrome_url_data_manager_backend.h" | 36 #include "chrome/browser/ui/webui/chrome_url_data_manager_backend.h" |
| 36 #include "chrome/common/chrome_notification_types.h" | 37 #include "chrome/common/chrome_notification_types.h" |
| 37 #include "chrome/common/chrome_switches.h" | 38 #include "chrome/common/chrome_switches.h" |
| 38 #include "chrome/common/pref_names.h" | 39 #include "chrome/common/pref_names.h" |
| 39 #include "chrome/common/url_constants.h" | 40 #include "chrome/common/url_constants.h" |
| 40 #include "content/browser/appcache/chrome_appcache_service.h" | 41 #include "content/browser/appcache/chrome_appcache_service.h" |
| (...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 236 params->blob_storage_context = profile->GetBlobStorageContext(); | 237 params->blob_storage_context = profile->GetBlobStorageContext(); |
| 237 params->file_system_context = profile->GetFileSystemContext(); | 238 params->file_system_context = profile->GetFileSystemContext(); |
| 238 params->quota_manager = profile->GetQuotaManager(); | 239 params->quota_manager = profile->GetQuotaManager(); |
| 239 params->extension_info_map = profile->GetExtensionInfoMap(); | 240 params->extension_info_map = profile->GetExtensionInfoMap(); |
| 240 params->notification_service = | 241 params->notification_service = |
| 241 DesktopNotificationServiceFactory::GetForProfile(profile); | 242 DesktopNotificationServiceFactory::GetForProfile(profile); |
| 242 params->prerender_manager_getter = | 243 params->prerender_manager_getter = |
| 243 base::Bind(&GetPrerenderManagerOnUI, profile_getter); | 244 base::Bind(&GetPrerenderManagerOnUI, profile_getter); |
| 244 params->protocol_handler_registry = profile->GetProtocolHandlerRegistry(); | 245 params->protocol_handler_registry = profile->GetProtocolHandlerRegistry(); |
| 245 | 246 |
| 247 #if defined(ENABLE_CONFIGURATION_POLICY) |
| 248 params->url_blacklist_manager.reset( |
| 249 new policy::URLBlacklistManager(pref_service)); |
| 250 #endif |
| 251 |
| 246 params->proxy_config_service.reset( | 252 params->proxy_config_service.reset( |
| 247 ProxyServiceFactory::CreateProxyConfigService( | 253 ProxyServiceFactory::CreateProxyConfigService( |
| 248 profile->GetProxyConfigTracker())); | 254 profile->GetProxyConfigTracker())); |
| 249 params->profile = profile; | 255 params->profile = profile; |
| 250 profile_params_.reset(params.release()); | 256 profile_params_.reset(params.release()); |
| 251 } | 257 } |
| 252 | 258 |
| 253 ProfileIOData::AppRequestContext::AppRequestContext() {} | 259 ProfileIOData::AppRequestContext::AppRequestContext() {} |
| 254 ProfileIOData::AppRequestContext::~AppRequestContext() {} | 260 ProfileIOData::AppRequestContext::~AppRequestContext() {} |
| 255 | 261 |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 397 main_request_context_ = new ChromeURLRequestContext; | 403 main_request_context_ = new ChromeURLRequestContext; |
| 398 extensions_request_context_ = new ChromeURLRequestContext; | 404 extensions_request_context_ = new ChromeURLRequestContext; |
| 399 | 405 |
| 400 profile_params_->appcache_service->set_request_context(main_request_context_); | 406 profile_params_->appcache_service->set_request_context(main_request_context_); |
| 401 | 407 |
| 402 chrome_url_data_manager_backend_.reset(new ChromeURLDataManagerBackend); | 408 chrome_url_data_manager_backend_.reset(new ChromeURLDataManagerBackend); |
| 403 | 409 |
| 404 network_delegate_.reset(new ChromeNetworkDelegate( | 410 network_delegate_.reset(new ChromeNetworkDelegate( |
| 405 io_thread_globals->extension_event_router_forwarder.get(), | 411 io_thread_globals->extension_event_router_forwarder.get(), |
| 406 profile_params_->extension_info_map, | 412 profile_params_->extension_info_map, |
| 413 profile_params_->url_blacklist_manager.get(), |
| 407 profile_params_->profile, | 414 profile_params_->profile, |
| 408 &enable_referrers_)); | 415 &enable_referrers_)); |
| 409 | 416 |
| 410 dns_cert_checker_.reset( | 417 dns_cert_checker_.reset( |
| 411 CreateDnsCertProvenanceChecker(io_thread_globals->dnsrr_resolver.get(), | 418 CreateDnsCertProvenanceChecker(io_thread_globals->dnsrr_resolver.get(), |
| 412 main_request_context_)); | 419 main_request_context_)); |
| 413 | 420 |
| 414 proxy_service_.reset( | 421 proxy_service_.reset( |
| 415 ProxyServiceFactory::CreateProxyService( | 422 ProxyServiceFactory::CreateProxyService( |
| 416 io_thread->net_log(), | 423 io_thread->net_log(), |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 466 database_tracker_ = profile_params_->database_tracker; | 473 database_tracker_ = profile_params_->database_tracker; |
| 467 appcache_service_ = profile_params_->appcache_service; | 474 appcache_service_ = profile_params_->appcache_service; |
| 468 blob_storage_context_ = profile_params_->blob_storage_context; | 475 blob_storage_context_ = profile_params_->blob_storage_context; |
| 469 file_system_context_ = profile_params_->file_system_context; | 476 file_system_context_ = profile_params_->file_system_context; |
| 470 quota_manager_ = profile_params_->quota_manager; | 477 quota_manager_ = profile_params_->quota_manager; |
| 471 host_zoom_map_ = profile_params_->host_zoom_map; | 478 host_zoom_map_ = profile_params_->host_zoom_map; |
| 472 host_content_settings_map_ = profile_params_->host_content_settings_map; | 479 host_content_settings_map_ = profile_params_->host_content_settings_map; |
| 473 notification_service_ = profile_params_->notification_service; | 480 notification_service_ = profile_params_->notification_service; |
| 474 extension_info_map_ = profile_params_->extension_info_map; | 481 extension_info_map_ = profile_params_->extension_info_map; |
| 475 prerender_manager_getter_ = profile_params_->prerender_manager_getter; | 482 prerender_manager_getter_ = profile_params_->prerender_manager_getter; |
| 483 url_blacklist_manager_.swap(profile_params_->url_blacklist_manager); |
| 476 | 484 |
| 477 resource_context_.set_host_resolver(io_thread_globals->host_resolver.get()); | 485 resource_context_.set_host_resolver(io_thread_globals->host_resolver.get()); |
| 478 resource_context_.set_request_context(main_request_context_); | 486 resource_context_.set_request_context(main_request_context_); |
| 479 resource_context_.set_database_tracker(database_tracker_); | 487 resource_context_.set_database_tracker(database_tracker_); |
| 480 resource_context_.set_appcache_service(appcache_service_); | 488 resource_context_.set_appcache_service(appcache_service_); |
| 481 resource_context_.set_blob_storage_context(blob_storage_context_); | 489 resource_context_.set_blob_storage_context(blob_storage_context_); |
| 482 resource_context_.set_file_system_context(file_system_context_); | 490 resource_context_.set_file_system_context(file_system_context_); |
| 483 resource_context_.set_quota_manager(quota_manager_); | 491 resource_context_.set_quota_manager(quota_manager_); |
| 484 resource_context_.set_host_zoom_map(host_zoom_map_); | 492 resource_context_.set_host_zoom_map(host_zoom_map_); |
| 485 resource_context_.set_prerender_manager_getter(prerender_manager_getter_); | 493 resource_context_.set_prerender_manager_getter(prerender_manager_getter_); |
| (...skipping 16 matching lines...) Expand all Loading... |
| 502 context->set_transport_security_state( | 510 context->set_transport_security_state( |
| 503 profile_params_->transport_security_state); | 511 profile_params_->transport_security_state); |
| 504 context->set_ssl_config_service(profile_params_->ssl_config_service); | 512 context->set_ssl_config_service(profile_params_->ssl_config_service); |
| 505 } | 513 } |
| 506 | 514 |
| 507 void ProfileIOData::ShutdownOnUIThread() { | 515 void ProfileIOData::ShutdownOnUIThread() { |
| 508 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 516 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| 509 enable_referrers_.Destroy(); | 517 enable_referrers_.Destroy(); |
| 510 clear_local_state_on_exit_.Destroy(); | 518 clear_local_state_on_exit_.Destroy(); |
| 511 safe_browsing_enabled_.Destroy(); | 519 safe_browsing_enabled_.Destroy(); |
| 520 if (url_blacklist_manager_.get()) |
| 521 url_blacklist_manager_->ShutdownOnUIThread(); |
| 512 BrowserThread::PostTask( | 522 BrowserThread::PostTask( |
| 513 BrowserThread::IO, FROM_HERE, | 523 BrowserThread::IO, FROM_HERE, |
| 514 base::Bind( | 524 base::Bind( |
| 515 &ResourceDispatcherHost::CancelRequestsForContext, | 525 &ResourceDispatcherHost::CancelRequestsForContext, |
| 516 base::Unretained(g_browser_process->resource_dispatcher_host()), | 526 base::Unretained(g_browser_process->resource_dispatcher_host()), |
| 517 &resource_context_)); | 527 &resource_context_)); |
| 518 bool posted = BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, | 528 bool posted = BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, |
| 519 new DeleteTask<ProfileIOData>(this)); | 529 new DeleteTask<ProfileIOData>(this)); |
| 520 if (!posted) | 530 if (!posted) |
| 521 delete this; | 531 delete this; |
| 522 } | 532 } |
| 523 | 533 |
| 524 void ProfileIOData::set_origin_bound_cert_service( | 534 void ProfileIOData::set_origin_bound_cert_service( |
| 525 net::OriginBoundCertService* origin_bound_cert_service) const { | 535 net::OriginBoundCertService* origin_bound_cert_service) const { |
| 526 origin_bound_cert_service_.reset(origin_bound_cert_service); | 536 origin_bound_cert_service_.reset(origin_bound_cert_service); |
| 527 } | 537 } |
| OLD | NEW |