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

Side by Side Diff: chrome/browser/browsing_data/browsing_data_remover.cc

Issue 2512563003: Convert enable_plugins to a buildflag header. (Closed)
Patch Set: Merge Created 4 years, 1 month 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 (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 "chrome/browser/browsing_data/browsing_data_remover.h" 5 #include "chrome/browser/browsing_data/browsing_data_remover.h"
6 6
7 #include <map> 7 #include <map>
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 #include "extensions/features/features.h" 82 #include "extensions/features/features.h"
83 #include "net/base/net_errors.h" 83 #include "net/base/net_errors.h"
84 #include "net/cookies/cookie_store.h" 84 #include "net/cookies/cookie_store.h"
85 #include "net/http/http_network_session.h" 85 #include "net/http/http_network_session.h"
86 #include "net/http/http_transaction_factory.h" 86 #include "net/http/http_transaction_factory.h"
87 #include "net/http/transport_security_state.h" 87 #include "net/http/transport_security_state.h"
88 #include "net/ssl/channel_id_service.h" 88 #include "net/ssl/channel_id_service.h"
89 #include "net/ssl/channel_id_store.h" 89 #include "net/ssl/channel_id_store.h"
90 #include "net/url_request/url_request_context.h" 90 #include "net/url_request/url_request_context.h"
91 #include "net/url_request/url_request_context_getter.h" 91 #include "net/url_request/url_request_context_getter.h"
92 #include "ppapi/features/features.h"
92 #include "storage/browser/quota/special_storage_policy.h" 93 #include "storage/browser/quota/special_storage_policy.h"
93 #include "url/origin.h" 94 #include "url/origin.h"
94 95
95 #if BUILDFLAG(ANDROID_JAVA_UI) 96 #if BUILDFLAG(ANDROID_JAVA_UI)
96 #include "chrome/browser/android/offline_pages/offline_page_model_factory.h" 97 #include "chrome/browser/android/offline_pages/offline_page_model_factory.h"
97 #include "chrome/browser/android/webapps/webapp_registry.h" 98 #include "chrome/browser/android/webapps/webapp_registry.h"
98 #include "chrome/browser/precache/precache_manager_factory.h" 99 #include "chrome/browser/precache/precache_manager_factory.h"
99 #include "components/offline_pages/offline_page_feature.h" 100 #include "components/offline_pages/offline_page_feature.h"
100 #include "components/offline_pages/offline_page_model.h" 101 #include "components/offline_pages/offline_page_model.h"
101 #include "components/precache/content/precache_manager.h" 102 #include "components/precache/content/precache_manager.h"
102 #endif 103 #endif
103 104
104 #if BUILDFLAG(ENABLE_EXTENSIONS) 105 #if BUILDFLAG(ENABLE_EXTENSIONS)
105 #include "chrome/browser/extensions/activity_log/activity_log.h" 106 #include "chrome/browser/extensions/activity_log/activity_log.h"
106 #include "extensions/browser/extension_prefs.h" 107 #include "extensions/browser/extension_prefs.h"
107 #endif 108 #endif
108 109
109 #if defined(ENABLE_PLUGINS) 110 #if BUILDFLAG(ENABLE_PLUGINS)
110 #include "chrome/browser/browsing_data/browsing_data_flash_lso_helper.h" 111 #include "chrome/browser/browsing_data/browsing_data_flash_lso_helper.h"
111 #endif 112 #endif
112 113
113 #if BUILDFLAG(ENABLE_SESSION_SERVICE) 114 #if BUILDFLAG(ENABLE_SESSION_SERVICE)
114 #include "chrome/browser/sessions/session_service.h" 115 #include "chrome/browser/sessions/session_service.h"
115 #include "chrome/browser/sessions/session_service_factory.h" 116 #include "chrome/browser/sessions/session_service_factory.h"
116 #endif 117 #endif
117 118
118 #if defined(OS_CHROMEOS) 119 #if defined(OS_CHROMEOS)
119 #include "chrome/browser/chromeos/profiles/profile_helper.h" 120 #include "chrome/browser/chromeos/profiles/profile_helper.h"
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 } 317 }
317 return TimeRange(CalculateBeginDeleteTime(period), base::Time::Max()); 318 return TimeRange(CalculateBeginDeleteTime(period), base::Time::Max());
318 } 319 }
319 320
320 BrowsingDataRemover::BrowsingDataRemover( 321 BrowsingDataRemover::BrowsingDataRemover(
321 content::BrowserContext* browser_context) 322 content::BrowserContext* browser_context)
322 : profile_(Profile::FromBrowserContext(browser_context)), 323 : profile_(Profile::FromBrowserContext(browser_context)),
323 remove_mask_(-1), 324 remove_mask_(-1),
324 origin_type_mask_(-1), 325 origin_type_mask_(-1),
325 is_removing_(false), 326 is_removing_(false),
326 #if defined(ENABLE_PLUGINS) 327 #if BUILDFLAG(ENABLE_PLUGINS)
327 flash_lso_helper_(BrowsingDataFlashLSOHelper::Create(profile_)), 328 flash_lso_helper_(BrowsingDataFlashLSOHelper::Create(profile_)),
328 #endif 329 #endif
329 #if BUILDFLAG(ANDROID_JAVA_UI) 330 #if BUILDFLAG(ANDROID_JAVA_UI)
330 webapp_registry_(new WebappRegistry()), 331 webapp_registry_(new WebappRegistry()),
331 #endif 332 #endif
332 weak_ptr_factory_(this) { 333 weak_ptr_factory_(this) {
333 DCHECK(browser_context); 334 DCHECK(browser_context);
334 } 335 }
335 336
336 BrowsingDataRemover::~BrowsingDataRemover() { 337 BrowsingDataRemover::~BrowsingDataRemover() {
(...skipping 506 matching lines...) Expand 10 before | Expand all | Expand 10 after
843 } 844 }
844 if (remove_mask & REMOVE_CACHE_STORAGE) { 845 if (remove_mask & REMOVE_CACHE_STORAGE) {
845 storage_partition_remove_mask |= 846 storage_partition_remove_mask |=
846 content::StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE; 847 content::StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE;
847 } 848 }
848 if (remove_mask & REMOVE_FILE_SYSTEMS) { 849 if (remove_mask & REMOVE_FILE_SYSTEMS) {
849 storage_partition_remove_mask |= 850 storage_partition_remove_mask |=
850 content::StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS; 851 content::StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS;
851 } 852 }
852 853
853 #if defined(ENABLE_PLUGINS) 854 #if BUILDFLAG(ENABLE_PLUGINS)
854 // Plugin is data not separated for protected and unprotected web origins. We 855 // Plugin is data not separated for protected and unprotected web origins. We
855 // check the origin_type_mask_ to prevent unintended deletion. 856 // check the origin_type_mask_ to prevent unintended deletion.
856 if (remove_mask & REMOVE_PLUGIN_DATA && 857 if (remove_mask & REMOVE_PLUGIN_DATA &&
857 origin_type_mask_ & BrowsingDataHelper::UNPROTECTED_WEB) { 858 origin_type_mask_ & BrowsingDataHelper::UNPROTECTED_WEB) {
858 content::RecordAction(UserMetricsAction("ClearBrowsingData_LSOData")); 859 content::RecordAction(UserMetricsAction("ClearBrowsingData_LSOData"));
859 waiting_for_clear_plugin_data_count_ = 1; 860 waiting_for_clear_plugin_data_count_ = 1;
860 861
861 if (filter_builder.IsEmptyBlacklist()) { 862 if (filter_builder.IsEmptyBlacklist()) {
862 DCHECK(!plugin_data_remover_); 863 DCHECK(!plugin_data_remover_);
863 plugin_data_remover_.reset(content::PluginDataRemover::Create(profile_)); 864 plugin_data_remover_.reset(content::PluginDataRemover::Create(profile_));
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
1109 base::Bind(&BrowsingDataRemover::OnClearedStoragePartitionData, 1110 base::Bind(&BrowsingDataRemover::OnClearedStoragePartitionData,
1110 weak_ptr_factory_.GetWeakPtr())); 1111 weak_ptr_factory_.GetWeakPtr()));
1111 } 1112 }
1112 1113
1113 if (remove_mask & REMOVE_MEDIA_LICENSES) { 1114 if (remove_mask & REMOVE_MEDIA_LICENSES) {
1114 // TODO(jrummell): This UMA should be renamed to indicate it is for Media 1115 // TODO(jrummell): This UMA should be renamed to indicate it is for Media
1115 // Licenses. 1116 // Licenses.
1116 content::RecordAction( 1117 content::RecordAction(
1117 UserMetricsAction("ClearBrowsingData_ContentLicenses")); 1118 UserMetricsAction("ClearBrowsingData_ContentLicenses"));
1118 1119
1119 #if defined(ENABLE_PLUGINS) 1120 #if BUILDFLAG(ENABLE_PLUGINS)
1120 waiting_for_clear_flash_content_licenses_ = true; 1121 waiting_for_clear_flash_content_licenses_ = true;
1121 if (!pepper_flash_settings_manager_.get()) { 1122 if (!pepper_flash_settings_manager_.get()) {
1122 pepper_flash_settings_manager_.reset( 1123 pepper_flash_settings_manager_.reset(
1123 new PepperFlashSettingsManager(this, profile_)); 1124 new PepperFlashSettingsManager(this, profile_));
1124 } 1125 }
1125 deauthorize_flash_content_licenses_request_id_ = 1126 deauthorize_flash_content_licenses_request_id_ =
1126 pepper_flash_settings_manager_->DeauthorizeContentLicenses(prefs); 1127 pepper_flash_settings_manager_->DeauthorizeContentLicenses(prefs);
1127 #if defined(OS_CHROMEOS) 1128 #if defined(OS_CHROMEOS)
1128 // On Chrome OS, also delete any content protection platform keys. 1129 // On Chrome OS, also delete any content protection platform keys.
1129 const user_manager::User* user = 1130 const user_manager::User* user =
1130 chromeos::ProfileHelper::Get()->GetUserByProfile(profile_); 1131 chromeos::ProfileHelper::Get()->GetUserByProfile(profile_);
1131 if (!user) { 1132 if (!user) {
1132 LOG(WARNING) << "Failed to find user for current profile."; 1133 LOG(WARNING) << "Failed to find user for current profile.";
1133 } else { 1134 } else {
1134 chromeos::DBusThreadManager::Get() 1135 chromeos::DBusThreadManager::Get()
1135 ->GetCryptohomeClient() 1136 ->GetCryptohomeClient()
1136 ->TpmAttestationDeleteKeys( 1137 ->TpmAttestationDeleteKeys(
1137 chromeos::attestation::KEY_USER, 1138 chromeos::attestation::KEY_USER,
1138 cryptohome::Identification(user->GetAccountId()), 1139 cryptohome::Identification(user->GetAccountId()),
1139 chromeos::attestation::kContentProtectionKeyPrefix, 1140 chromeos::attestation::kContentProtectionKeyPrefix,
1140 base::Bind(&BrowsingDataRemover::OnClearPlatformKeys, 1141 base::Bind(&BrowsingDataRemover::OnClearPlatformKeys,
1141 weak_ptr_factory_.GetWeakPtr())); 1142 weak_ptr_factory_.GetWeakPtr()));
1142 waiting_for_clear_platform_keys_ = true; 1143 waiting_for_clear_platform_keys_ = true;
1143 } 1144 }
1144 #endif // defined(OS_CHROMEOS) 1145 #endif // defined(OS_CHROMEOS)
1145 #endif // defined(ENABLE_PLUGINS) 1146 #endif // BUILDFLAG(ENABLE_PLUGINS)
1146 } 1147 }
1147 1148
1148 // Remove omnibox zero-suggest cache results. Filtering is not supported. 1149 // Remove omnibox zero-suggest cache results. Filtering is not supported.
1149 // This is not a problem, as deleting more data than necessary will just cause 1150 // This is not a problem, as deleting more data than necessary will just cause
1150 // another server round-trip; no data is actually lost. 1151 // another server round-trip; no data is actually lost.
1151 if ((remove_mask & (REMOVE_CACHE | REMOVE_COOKIES))) 1152 if ((remove_mask & (REMOVE_CACHE | REMOVE_COOKIES)))
1152 prefs->SetString(omnibox::kZeroSuggestCachedResults, std::string()); 1153 prefs->SetString(omnibox::kZeroSuggestCachedResults, std::string());
1153 1154
1154 if (remove_mask & (REMOVE_COOKIES | REMOVE_HISTORY)) { 1155 if (remove_mask & (REMOVE_COOKIES | REMOVE_HISTORY)) {
1155 domain_reliability::DomainReliabilityService* service = 1156 domain_reliability::DomainReliabilityService* service =
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
1219 storage_partition_for_testing_ = storage_partition; 1220 storage_partition_for_testing_ = storage_partition;
1220 } 1221 }
1221 1222
1222 #if BUILDFLAG(ANDROID_JAVA_UI) 1223 #if BUILDFLAG(ANDROID_JAVA_UI)
1223 void BrowsingDataRemover::OverrideWebappRegistryForTesting( 1224 void BrowsingDataRemover::OverrideWebappRegistryForTesting(
1224 std::unique_ptr<WebappRegistry> webapp_registry) { 1225 std::unique_ptr<WebappRegistry> webapp_registry) {
1225 webapp_registry_ = std::move(webapp_registry); 1226 webapp_registry_ = std::move(webapp_registry);
1226 } 1227 }
1227 #endif 1228 #endif
1228 1229
1229 #if defined(ENABLE_PLUGINS) 1230 #if BUILDFLAG(ENABLE_PLUGINS)
1230 void BrowsingDataRemover::OverrideFlashLSOHelperForTesting( 1231 void BrowsingDataRemover::OverrideFlashLSOHelperForTesting(
1231 scoped_refptr<BrowsingDataFlashLSOHelper> flash_lso_helper) { 1232 scoped_refptr<BrowsingDataFlashLSOHelper> flash_lso_helper) {
1232 flash_lso_helper_ = flash_lso_helper; 1233 flash_lso_helper_ = flash_lso_helper;
1233 } 1234 }
1234 #endif 1235 #endif
1235 1236
1236 const base::Time& BrowsingDataRemover::GetLastUsedBeginTime() { 1237 const base::Time& BrowsingDataRemover::GetLastUsedBeginTime() {
1237 return delete_begin_; 1238 return delete_begin_;
1238 } 1239 }
1239 1240
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
1402 NotifyIfDone(); 1403 NotifyIfDone();
1403 } 1404 }
1404 1405
1405 void BrowsingDataRemover::ClearedPnaclCache() { 1406 void BrowsingDataRemover::ClearedPnaclCache() {
1406 DCHECK_CURRENTLY_ON(BrowserThread::UI); 1407 DCHECK_CURRENTLY_ON(BrowserThread::UI);
1407 waiting_for_clear_pnacl_cache_ = false; 1408 waiting_for_clear_pnacl_cache_ = false;
1408 NotifyIfDone(); 1409 NotifyIfDone();
1409 } 1410 }
1410 #endif 1411 #endif
1411 1412
1412 #if defined(ENABLE_PLUGINS) 1413 #if BUILDFLAG(ENABLE_PLUGINS)
1413 void BrowsingDataRemover::OnWaitableEventSignaled( 1414 void BrowsingDataRemover::OnWaitableEventSignaled(
1414 base::WaitableEvent* waitable_event) { 1415 base::WaitableEvent* waitable_event) {
1415 DCHECK_CURRENTLY_ON(BrowserThread::UI); 1416 DCHECK_CURRENTLY_ON(BrowserThread::UI);
1416 1417
1417 DCHECK_EQ(1, waiting_for_clear_plugin_data_count_); 1418 DCHECK_EQ(1, waiting_for_clear_plugin_data_count_);
1418 waiting_for_clear_plugin_data_count_ = 0; 1419 waiting_for_clear_plugin_data_count_ = 0;
1419 1420
1420 plugin_data_remover_.reset(); 1421 plugin_data_remover_.reset();
1421 watcher_.StopWatching(); 1422 watcher_.StopWatching();
1422 NotifyIfDone(); 1423 NotifyIfDone();
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
1546 waiting_for_clear_offline_page_data_ = false; 1547 waiting_for_clear_offline_page_data_ = false;
1547 NotifyIfDone(); 1548 NotifyIfDone();
1548 } 1549 }
1549 #endif 1550 #endif
1550 1551
1551 void BrowsingDataRemover::OnClearedDomainReliabilityMonitor() { 1552 void BrowsingDataRemover::OnClearedDomainReliabilityMonitor() {
1552 DCHECK_CURRENTLY_ON(BrowserThread::UI); 1553 DCHECK_CURRENTLY_ON(BrowserThread::UI);
1553 waiting_for_clear_domain_reliability_monitor_ = false; 1554 waiting_for_clear_domain_reliability_monitor_ = false;
1554 NotifyIfDone(); 1555 NotifyIfDone();
1555 } 1556 }
OLDNEW
« no previous file with comments | « chrome/browser/browsing_data/browsing_data_remover.h ('k') | chrome/browser/browsing_data/browsing_data_remover_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698