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

Unified Diff: chrome/browser/browsing_data/browsing_data_remover.cc

Issue 238863005: Domain Reliability: Remove browsing data when requested. (Closed) Base URL: http://git.chromium.org/chromium/src.git@domrel_bakedin
Patch Set: ...and fix BrowsingDataRemoverTet Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/browsing_data/browsing_data_remover.cc
diff --git a/chrome/browser/browsing_data/browsing_data_remover.cc b/chrome/browser/browsing_data/browsing_data_remover.cc
index 1eb34c1008d7d92d0519db7e18718246576865f6..28aa248ad77b9f3fcef4ec14f851af08eaa50188 100644
--- a/chrome/browser/browsing_data/browsing_data_remover.cc
+++ b/chrome/browser/browsing_data/browsing_data_remover.cc
@@ -55,6 +55,7 @@
#include "chrome/browser/webdata/web_data_service_factory.h"
#include "chrome/common/pref_names.h"
#include "chrome/common/url_constants.h"
+#include "components/domain_reliability/monitor.h"
#include "components/password_manager/core/browser/password_store.h"
#if defined(OS_CHROMEOS)
#include "chromeos/attestation/attestation_constants.h"
@@ -189,6 +190,7 @@ BrowsingDataRemover::BrowsingDataRemover(Profile* profile,
waiting_for_clear_cache_(false),
waiting_for_clear_content_licenses_(false),
waiting_for_clear_cookies_count_(0),
+ waiting_for_clear_domain_reliability_monitor_(false),
waiting_for_clear_form_(false),
waiting_for_clear_history_(false),
waiting_for_clear_hostname_resolution_cache_(false),
@@ -673,6 +675,20 @@ void BrowsingDataRemover::RemoveImpl(int remove_mask,
delete_begin_,
base::Bind(&BrowsingDataRemover::OnClearedNetworkingHistory,
base::Unretained(this)));
+
+ if (remove_mask & (REMOVE_COOKIES | REMOVE_HISTORY)) {
+ domain_reliability::DomainReliabilityClearMode mode;
+ if (remove_mask & REMOVE_COOKIES)
+ mode = domain_reliability::CLEAR_CONTEXTS;
+ else
+ mode = domain_reliability::CLEAR_BEACONS;
+
+ waiting_for_clear_domain_reliability_monitor_ = true;
+ profile_->ClearDomainReliabilityMonitor(
+ mode,
+ base::Bind(&BrowsingDataRemover::OnClearedDomainReliabilityMonitor,
+ base::Unretained(this)));
+ }
}
void BrowsingDataRemover::AddObserver(Observer* observer) {
@@ -725,6 +741,7 @@ bool BrowsingDataRemover::AllDone() {
!waiting_for_clear_autofill_origin_urls_ &&
!waiting_for_clear_cache_ && !waiting_for_clear_nacl_cache_ &&
!waiting_for_clear_cookies_count_ && !waiting_for_clear_history_ &&
+ !waiting_for_clear_domain_reliability_monitor_ &&
!waiting_for_clear_logged_in_predictor_ &&
!waiting_for_clear_networking_history_ &&
!waiting_for_clear_server_bound_certs_ &&
@@ -1131,3 +1148,9 @@ void BrowsingDataRemover::OnClearedWebRtcLogs() {
NotifyAndDeleteIfDone();
}
#endif
+
+void BrowsingDataRemover::OnClearedDomainReliabilityMonitor() {
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
+ waiting_for_clear_domain_reliability_monitor_ = false;
+ NotifyAndDeleteIfDone();
+}
« 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