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

Unified Diff: chrome/browser/browsing_data/cookie_counting_helper.h

Issue 2594723002: Count number of origins with data affected by clearing "cookies and site data". (Closed)
Patch Set: Add comments for issues with incomplete data deletion Created 3 years, 11 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/cookie_counting_helper.h
diff --git a/chrome/browser/browsing_data/cookie_counting_helper.h b/chrome/browser/browsing_data/cookie_counting_helper.h
new file mode 100644
index 0000000000000000000000000000000000000000..a705f516b5cbcf23e8582e3a429bc114b3bf06ad
--- /dev/null
+++ b/chrome/browser/browsing_data/cookie_counting_helper.h
@@ -0,0 +1,70 @@
+// Copyright (c) 2016 The Chromium Authors. All rights reserved.
msramek 2017/01/09 12:54:44 Ditto.
dullweber 2017/01/09 16:05:46 Done.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_BROWSING_DATA_COOKIE_COUNTING_HELPER_H_
+#define CHROME_BROWSER_BROWSING_DATA_COOKIE_COUNTING_HELPER_H_
+
+#include <set>
+#include "net/cookies/canonical_cookie.h"
+#include "net/ssl/channel_id_store.h"
+#include "storage/common/quota/quota_types.h"
+
+class Profile;
+class BrowsingDataFlashLSOHelper;
+
+namespace net {
+class URLRequestContextGetter;
+}
+
+namespace content {
+struct LocalStorageUsageInfo;
+struct SessionStorageUsageInfo;
+}
+
+namespace storage {
+class SpecialStoragePolicy;
+}
+
+// Helper class that counts the number of unique origins, that are affected by
+// deleting "cookies and site data" in the CBD dialog.
+class CookieCountingHelper {
msramek 2017/01/09 12:54:43 Note that we have SiteDataSizeCollector (used in c
dullweber 2017/01/09 16:05:46 The SiteDataSizeCollector uses the same helper cla
+ public:
+ explicit CookieCountingHelper(Profile* profile,
+ base::Time begin,
+ base::Callback<void(int)> completion_callback);
+ ~CookieCountingHelper();
+
+ void CountAndDestroySelfWhenFinished();
+
+ private:
+ void GetCookiesOnIOThread(
+ const scoped_refptr<net::URLRequestContextGetter>& rq_context);
+ void GetCookiesCallback(const net::CookieList& cookies);
+ void GetSessionStorageUsageInfoCallback(
+ const scoped_refptr<storage::SpecialStoragePolicy>&
+ special_storage_policy,
+ const std::vector<content::SessionStorageUsageInfo>& infos);
+ void GetLocalStorageUsageInfoCallback(
+ const scoped_refptr<storage::SpecialStoragePolicy>&
+ special_storage_policy,
+ const std::vector<content::LocalStorageUsageInfo>& infos);
+ void GetQuotaOriginsCallback(const std::set<GURL>& origin_set,
+ storage::StorageType type);
+ void SitesWithFlashDataCallback(const std::vector<std::string>& sites);
+ void GetChannelIDsOnIOThread(
+ const scoped_refptr<net::URLRequestContextGetter>& rq_context);
+ void GetChannelIDsCallback(
+ const net::ChannelIDStore::ChannelIDList& channel_ids);
+
+ void Done(const std::vector<GURL>& origins);
+
+ Profile* profile_;
+ base::Time begin_;
+ base::Callback<void(int)> completion_callback_;
+ int tasks_;
+ std::set<GURL> unique_origins_;
+ scoped_refptr<BrowsingDataFlashLSOHelper> flash_lso_helper_;
+};
+
+#endif // CHROME_BROWSER_BROWSING_DATA_COOKIE_COUNTING_HELPER_H_

Powered by Google App Engine
This is Rietveld 408576698