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

Side by Side Diff: chrome/browser/extensions/api/browsing_data/browsing_data_api.h

Issue 2827523003: Move BrowsingDataRemover to content/ (Closed)
Patch Set: Rebase over codereview.chromium.org/2815913005 Created 3 years, 8 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 // Defines the Chrome Extensions BrowsingData API functions, which entail 5 // Defines the Chrome Extensions BrowsingData API functions, which entail
6 // clearing browsing data, and clearing the browser's cache (which, let's be 6 // clearing browsing data, and clearing the browser's cache (which, let's be
7 // honest, are the same thing), as specified in the extension API JSON. 7 // honest, are the same thing), as specified in the extension API JSON.
8 8
9 #ifndef CHROME_BROWSER_EXTENSIONS_API_BROWSING_DATA_BROWSING_DATA_API_H_ 9 #ifndef CHROME_BROWSER_EXTENSIONS_API_BROWSING_DATA_BROWSING_DATA_API_H_
10 #define CHROME_BROWSER_EXTENSIONS_API_BROWSING_DATA_BROWSING_DATA_API_H_ 10 #define CHROME_BROWSER_EXTENSIONS_API_BROWSING_DATA_BROWSING_DATA_API_H_
11 11
12 #include <string> 12 #include <string>
13 13
14 #include "base/scoped_observer.h" 14 #include "base/scoped_observer.h"
15 #include "chrome/browser/browsing_data/browsing_data_remover.h"
16 #include "chrome/browser/extensions/chrome_extension_function.h" 15 #include "chrome/browser/extensions/chrome_extension_function.h"
16 #include "content/public/browser/browsing_data_remover.h"
17 17
18 class PluginPrefs; 18 class PluginPrefs;
19 class PrefService; 19 class PrefService;
20 20
21 namespace extension_browsing_data_api_constants { 21 namespace extension_browsing_data_api_constants {
22 22
23 // Parameter name keys. 23 // Parameter name keys.
24 extern const char kDataRemovalPermittedKey[]; 24 extern const char kDataRemovalPermittedKey[];
25 extern const char kDataToRemoveKey[]; 25 extern const char kDataToRemoveKey[];
26 extern const char kOptionsKey[]; 26 extern const char kOptionsKey[];
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 PrefService* prefs_ = nullptr; 77 PrefService* prefs_ = nullptr;
78 }; 78 };
79 79
80 // This serves as a base class from which the browsing data API removal 80 // This serves as a base class from which the browsing data API removal
81 // functions will inherit. Each needs to be an observer of BrowsingDataRemover 81 // functions will inherit. Each needs to be an observer of BrowsingDataRemover
82 // events, and each will handle those events in the same way (by calling the 82 // events, and each will handle those events in the same way (by calling the
83 // passed-in callback function). 83 // passed-in callback function).
84 // 84 //
85 // Each child class must implement GetRemovalMask(), which returns the bitmask 85 // Each child class must implement GetRemovalMask(), which returns the bitmask
86 // of data types to remove. 86 // of data types to remove.
87 class BrowsingDataRemoverFunction : public ChromeAsyncExtensionFunction, 87 class BrowsingDataRemoverFunction
88 public BrowsingDataRemover::Observer { 88 : public ChromeAsyncExtensionFunction,
89 public content::BrowsingDataRemover::Observer {
89 public: 90 public:
90 BrowsingDataRemoverFunction(); 91 BrowsingDataRemoverFunction();
91 92
92 // BrowsingDataRemover::Observer interface method. 93 // BrowsingDataRemover::Observer interface method.
93 void OnBrowsingDataRemoverDone() override; 94 void OnBrowsingDataRemoverDone() override;
94 95
95 // ExtensionFunction: 96 // ExtensionFunction:
96 bool RunAsync() override; 97 bool RunAsync() override;
97 98
98 protected: 99 protected:
(...skipping 16 matching lines...) Expand all
115 // Returns true if parsing was successful. 116 // Returns true if parsing was successful.
116 bool ParseOriginTypeMask(const base::DictionaryValue& options, 117 bool ParseOriginTypeMask(const base::DictionaryValue& options,
117 int* origin_type_mask); 118 int* origin_type_mask);
118 119
119 // Called when we're ready to start removing data. 120 // Called when we're ready to start removing data.
120 void StartRemoving(); 121 void StartRemoving();
121 122
122 base::Time remove_since_; 123 base::Time remove_since_;
123 int removal_mask_; 124 int removal_mask_;
124 int origin_type_mask_; 125 int origin_type_mask_;
125 ScopedObserver<BrowsingDataRemover, BrowsingDataRemover::Observer> observer_; 126 ScopedObserver<content::BrowsingDataRemover,
127 content::BrowsingDataRemover::Observer>
128 observer_;
126 }; 129 };
127 130
128 class BrowsingDataRemoveAppcacheFunction : public BrowsingDataRemoverFunction { 131 class BrowsingDataRemoveAppcacheFunction : public BrowsingDataRemoverFunction {
129 public: 132 public:
130 DECLARE_EXTENSION_FUNCTION("browsingData.removeAppcache", 133 DECLARE_EXTENSION_FUNCTION("browsingData.removeAppcache",
131 BROWSINGDATA_REMOVEAPPCACHE) 134 BROWSINGDATA_REMOVEAPPCACHE)
132 135
133 protected: 136 protected:
134 ~BrowsingDataRemoveAppcacheFunction() override {} 137 ~BrowsingDataRemoveAppcacheFunction() override {}
135 138
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
303 BROWSINGDATA_REMOVEWEBSQL) 306 BROWSINGDATA_REMOVEWEBSQL)
304 307
305 protected: 308 protected:
306 ~BrowsingDataRemoveWebSQLFunction() override {} 309 ~BrowsingDataRemoveWebSQLFunction() override {}
307 310
308 // BrowsingDataRemoverFunction: 311 // BrowsingDataRemoverFunction:
309 bool GetRemovalMask(int* removal_mask) override; 312 bool GetRemovalMask(int* removal_mask) override;
310 }; 313 };
311 314
312 #endif // CHROME_BROWSER_EXTENSIONS_API_BROWSING_DATA_BROWSING_DATA_API_H_ 315 #endif // CHROME_BROWSER_EXTENSIONS_API_BROWSING_DATA_BROWSING_DATA_API_H_
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/profiles/profile_helper.cc ('k') | chrome/browser/extensions/api/browsing_data/browsing_data_api.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698