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

Side by Side Diff: chrome/browser/chrome_content_browser_client.cc

Issue 2697123004: Convert RemoveDataMask from enum to pointers and split it between content and embedder (Closed)
Patch Set: Android compilation Created 3 years, 10 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 (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/chrome_content_browser_client.h" 5 #include "chrome/browser/chrome_content_browser_client.h"
6 6
7 #include <map> 7 #include <map>
8 #include <set> 8 #include <set>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 19 matching lines...) Expand all
30 #include "base/threading/thread_task_runner_handle.h" 30 #include "base/threading/thread_task_runner_handle.h"
31 #include "build/build_config.h" 31 #include "build/build_config.h"
32 #include "chrome/browser/after_startup_task_utils.h" 32 #include "chrome/browser/after_startup_task_utils.h"
33 #include "chrome/browser/apps/app_url_redirector.h" 33 #include "chrome/browser/apps/app_url_redirector.h"
34 #include "chrome/browser/browser_about_handler.h" 34 #include "chrome/browser/browser_about_handler.h"
35 #include "chrome/browser/browser_process.h" 35 #include "chrome/browser/browser_process.h"
36 #include "chrome/browser/browser_shutdown.h" 36 #include "chrome/browser/browser_shutdown.h"
37 #include "chrome/browser/browsing_data/browsing_data_helper.h" 37 #include "chrome/browser/browsing_data/browsing_data_helper.h"
38 #include "chrome/browser/browsing_data/browsing_data_remover.h" 38 #include "chrome/browser/browsing_data/browsing_data_remover.h"
39 #include "chrome/browser/browsing_data/browsing_data_remover_factory.h" 39 #include "chrome/browser/browsing_data/browsing_data_remover_factory.h"
40 #include "chrome/browser/browsing_data/chrome_browsing_data_types.h"
40 #include "chrome/browser/budget_service/budget_service_impl.h" 41 #include "chrome/browser/budget_service/budget_service_impl.h"
41 #include "chrome/browser/chrome_content_browser_client_parts.h" 42 #include "chrome/browser/chrome_content_browser_client_parts.h"
42 #include "chrome/browser/chrome_quota_permission_context.h" 43 #include "chrome/browser/chrome_quota_permission_context.h"
43 #include "chrome/browser/content_settings/cookie_settings_factory.h" 44 #include "chrome/browser/content_settings/cookie_settings_factory.h"
44 #include "chrome/browser/content_settings/host_content_settings_map_factory.h" 45 #include "chrome/browser/content_settings/host_content_settings_map_factory.h"
45 #include "chrome/browser/content_settings/tab_specific_content_settings.h" 46 #include "chrome/browser/content_settings/tab_specific_content_settings.h"
46 #include "chrome/browser/defaults.h" 47 #include "chrome/browser/defaults.h"
47 #include "chrome/browser/download/download_prefs.h" 48 #include "chrome/browser/download/download_prefs.h"
48 #include "chrome/browser/field_trial_recorder.h" 49 #include "chrome/browser/field_trial_recorder.h"
49 #include "chrome/browser/font_family_cache.h" 50 #include "chrome/browser/font_family_cache.h"
(...skipping 2656 matching lines...) Expand 10 before | Expand all | Expand 10 after
2706 2707
2707 // chrome: & friends. 2708 // chrome: & friends.
2708 handler->AddHandlerPair(&HandleWebUI, &HandleWebUIReverse); 2709 handler->AddHandlerPair(&HandleWebUI, &HandleWebUIReverse);
2709 } 2710 }
2710 2711
2711 void ChromeContentBrowserClient::ClearCache(RenderFrameHost* rfh) { 2712 void ChromeContentBrowserClient::ClearCache(RenderFrameHost* rfh) {
2712 Profile* profile = Profile::FromBrowserContext( 2713 Profile* profile = Profile::FromBrowserContext(
2713 rfh->GetSiteInstance()->GetProcess()->GetBrowserContext()); 2714 rfh->GetSiteInstance()->GetProcess()->GetBrowserContext());
2714 BrowsingDataRemover* remover = 2715 BrowsingDataRemover* remover =
2715 BrowsingDataRemoverFactory::GetForBrowserContext(profile); 2716 BrowsingDataRemoverFactory::GetForBrowserContext(profile);
2716 remover->Remove(base::Time(), base::Time::Max(), 2717 remover->Remove(base::Time(), base::Time::Max(), {&kBrowsingDataTypeCache},
2717 BrowsingDataRemover::REMOVE_CACHE,
2718 BrowsingDataHelper::UNPROTECTED_WEB); 2718 BrowsingDataHelper::UNPROTECTED_WEB);
2719 } 2719 }
2720 2720
2721 void ChromeContentBrowserClient::ClearCookies(RenderFrameHost* rfh) { 2721 void ChromeContentBrowserClient::ClearCookies(RenderFrameHost* rfh) {
2722 Profile* profile = Profile::FromBrowserContext( 2722 Profile* profile = Profile::FromBrowserContext(
2723 rfh->GetSiteInstance()->GetProcess()->GetBrowserContext()); 2723 rfh->GetSiteInstance()->GetProcess()->GetBrowserContext());
2724 BrowsingDataRemover* remover = 2724 BrowsingDataRemover* remover =
2725 BrowsingDataRemoverFactory::GetForBrowserContext(profile); 2725 BrowsingDataRemoverFactory::GetForBrowserContext(profile);
2726 int remove_mask = BrowsingDataRemover::REMOVE_SITE_DATA; 2726 remover->Remove(base::Time(), base::Time::Max(),
2727 remover->Remove(base::Time(), base::Time::Max(), remove_mask, 2727 BrowsingDataTypeSetSiteData(),
2728 BrowsingDataHelper::UNPROTECTED_WEB); 2728 BrowsingDataHelper::UNPROTECTED_WEB);
2729 } 2729 }
2730 2730
2731 void ChromeContentBrowserClient::ClearSiteData( 2731 void ChromeContentBrowserClient::ClearSiteData(
2732 content::BrowserContext* browser_context, 2732 content::BrowserContext* browser_context,
2733 const url::Origin& origin, 2733 const url::Origin& origin,
2734 bool remove_cookies, 2734 bool remove_cookies,
2735 bool remove_storage, 2735 bool remove_storage,
2736 bool remove_cache, 2736 bool remove_cache,
2737 const base::Closure& callback) { 2737 const base::Closure& callback) {
(...skipping 16 matching lines...) Expand all
2754 net::registry_controlled_domains::INCLUDE_PRIVATE_REGISTRIES); 2754 net::registry_controlled_domains::INCLUDE_PRIVATE_REGISTRIES);
2755 2755
2756 if (domain.empty()) 2756 if (domain.empty())
2757 domain = origin.host(); // IP address or internal hostname. 2757 domain = origin.host(); // IP address or internal hostname.
2758 2758
2759 std::unique_ptr<BrowsingDataFilterBuilder> domain_filter_builder( 2759 std::unique_ptr<BrowsingDataFilterBuilder> domain_filter_builder(
2760 BrowsingDataFilterBuilder::Create( 2760 BrowsingDataFilterBuilder::Create(
2761 BrowsingDataFilterBuilder::WHITELIST)); 2761 BrowsingDataFilterBuilder::WHITELIST));
2762 domain_filter_builder->AddRegisterableDomain(domain); 2762 domain_filter_builder->AddRegisterableDomain(domain);
2763 2763
2764 std::set<const content::BrowsingDataType*> remove_mask;
2765 remove_mask.insert(&kBrowsingDataTypeCookies);
2766 remove_mask.insert(&kBrowsingDataTypeChannelIDs);
2767 remove_mask.insert(&kBrowsingDataTypePluginData);
2764 remover->RemoveWithFilterAndReply( 2768 remover->RemoveWithFilterAndReply(
2765 base::Time(), base::Time::Max(), 2769 base::Time(), base::Time::Max(), remove_mask, BrowsingDataHelper::ALL,
2766 BrowsingDataRemover::REMOVE_COOKIES | 2770 std::move(domain_filter_builder), observer);
2767 BrowsingDataRemover::REMOVE_CHANNEL_IDS |
2768 BrowsingDataRemover::REMOVE_PLUGIN_DATA,
2769 BrowsingDataHelper::ALL, std::move(domain_filter_builder), observer);
2770 } else { 2771 } else {
2771 // The first removal task is a no-op. 2772 // The first removal task is a no-op.
2772 observer->OnBrowsingDataRemoverDone(); 2773 observer->OnBrowsingDataRemoverDone();
2773 } 2774 }
2774 2775
2775 // Delete origin-scoped data. 2776 // Delete origin-scoped data.
2776 int remove_mask = 0; 2777 std::set<const content::BrowsingDataType*> remove_mask;
2777 if (remove_storage) { 2778 if (remove_storage) {
2778 remove_mask |= BrowsingDataRemover::REMOVE_SITE_DATA & 2779 remove_mask = BrowsingDataTypeSetSiteData();
2779 ~BrowsingDataRemover::REMOVE_COOKIES & 2780 remove_mask.erase(&kBrowsingDataTypeCookies);
2780 ~BrowsingDataRemover::REMOVE_CHANNEL_IDS & 2781 remove_mask.erase(&kBrowsingDataTypeChannelIDs);
2781 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA; 2782 remove_mask.erase(&kBrowsingDataTypePluginData);
2782 } 2783 }
2783 if (remove_cache) 2784 if (remove_cache)
2784 remove_mask |= BrowsingDataRemover::REMOVE_CACHE; 2785 remove_mask.insert(&kBrowsingDataTypeCache);
2785 2786
2786 if (remove_mask) { 2787 if (!remove_mask.empty()) {
2787 std::unique_ptr<BrowsingDataFilterBuilder> origin_filter_builder( 2788 std::unique_ptr<BrowsingDataFilterBuilder> origin_filter_builder(
2788 BrowsingDataFilterBuilder::Create( 2789 BrowsingDataFilterBuilder::Create(
2789 BrowsingDataFilterBuilder::WHITELIST)); 2790 BrowsingDataFilterBuilder::WHITELIST));
2790 origin_filter_builder->AddOrigin(origin); 2791 origin_filter_builder->AddOrigin(origin);
2791 2792
2792 remover->RemoveWithFilterAndReply( 2793 remover->RemoveWithFilterAndReply(
2793 base::Time(), base::Time::Max(), 2794 base::Time(), base::Time::Max(),
2794 remove_mask, BrowsingDataHelper::ALL, std::move(origin_filter_builder), 2795 remove_mask, BrowsingDataHelper::ALL, std::move(origin_filter_builder),
2795 observer); 2796 observer);
2796 } else { 2797 } else {
(...skipping 744 matching lines...) Expand 10 before | Expand all | Expand 10 after
3541 RedirectNonUINonIOBrowserThreadsToTaskScheduler() { 3542 RedirectNonUINonIOBrowserThreadsToTaskScheduler() {
3542 return variations::GetVariationParamValue( 3543 return variations::GetVariationParamValue(
3543 "BrowserScheduler", "RedirectNonUINonIOBrowserThreads") == "true"; 3544 "BrowserScheduler", "RedirectNonUINonIOBrowserThreads") == "true";
3544 } 3545 }
3545 3546
3546 // static 3547 // static
3547 void ChromeContentBrowserClient::SetDefaultQuotaSettingsForTesting( 3548 void ChromeContentBrowserClient::SetDefaultQuotaSettingsForTesting(
3548 const storage::QuotaSettings* settings) { 3549 const storage::QuotaSettings* settings) {
3549 g_default_quota_settings = settings; 3550 g_default_quota_settings = settings;
3550 } 3551 }
OLDNEW
« no previous file with comments | « chrome/browser/browsing_data/chrome_browsing_data_types.cc ('k') | chrome/browser/chrome_content_browser_client_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698