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

Unified Diff: base/prefs/pref_service_builder.h

Issue 64193003: Clean up PrefServiceBuilder (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix indentation Created 7 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 side-by-side diff with in-line comments
Download patch
Index: base/prefs/pref_service_builder.h
diff --git a/base/prefs/pref_service_builder.h b/base/prefs/pref_service_builder.h
index 7af43926233464654bdf2920d548ff624f8b0d7d..3433f68bf00ad0cd85667adb5edc6a924ca4e8ad 100644
--- a/base/prefs/pref_service_builder.h
+++ b/base/prefs/pref_service_builder.h
@@ -16,9 +16,9 @@
class PrefService;
namespace base {
+
class FilePath;
class SequencedTaskRunner;
-}
// A class that allows convenient building of PrefService.
class BASE_PREFS_EXPORT PrefServiceBuilder {
@@ -27,34 +27,49 @@ class BASE_PREFS_EXPORT PrefServiceBuilder {
virtual ~PrefServiceBuilder();
// Functions for setting the various parameters of the PrefService to build.
- // These take ownership of the |store| parameter.
- PrefServiceBuilder& WithManagedPrefs(PrefStore* store);
- PrefServiceBuilder& WithSupervisedUserPrefs(PrefStore* store);
- PrefServiceBuilder& WithExtensionPrefs(PrefStore* store);
- PrefServiceBuilder& WithCommandLinePrefs(PrefStore* store);
- PrefServiceBuilder& WithUserPrefs(PersistentPrefStore* store);
- PrefServiceBuilder& WithRecommendedPrefs(PrefStore* store);
+ void set_managed_prefs(const scoped_refptr<PrefStore>& managed_prefs) {
+ managed_prefs_ = managed_prefs;
+ }
+ void set_supervised_user_prefs(
+ const scoped_refptr<PrefStore>& supervised_user_prefs) {
+ supervised_user_prefs_ = supervised_user_prefs;
+ }
+ void set_extension_prefs(const scoped_refptr<PrefStore>& extension_prefs) {
+ extension_prefs_ = extension_prefs;
+ }
+ void set_command_line_prefs(
+ const scoped_refptr<PrefStore>& command_line_prefs) {
+ command_line_prefs_ = command_line_prefs;
+ }
+ void set_user_prefs(const scoped_refptr<PersistentPrefStore>& user_prefs) {
+ user_prefs_ = user_prefs;
+ }
+ void set_recommended_prefs(
+ const scoped_refptr<PrefStore>& recommended_prefs) {
+ recommended_prefs_ = recommended_prefs;
+ }
// Sets up error callback for the PrefService. A do-nothing default
// is provided if this is not called.
- PrefServiceBuilder& WithReadErrorCallback(
+ void set_read_error_callback(
const base::Callback<void(PersistentPrefStore::PrefReadError)>&
- read_error_callback);
+ read_error_callback) {
+ read_error_callback_ = read_error_callback;
+ }
// Specifies to use an actual file-backed user pref store.
- PrefServiceBuilder& WithUserFilePrefs(
- const base::FilePath& prefs_file,
- base::SequencedTaskRunner* task_runner);
+ void SetUserPrefsFile(const base::FilePath& prefs_file,
+ base::SequencedTaskRunner* task_runner);
- PrefServiceBuilder& WithAsync(bool async);
+ void set_async(bool async) {
+ async_ = async;
+ }
// Creates a PrefService object initialized with the parameters from
// this builder.
- virtual PrefService* Create(PrefRegistry* registry);
+ scoped_ptr<PrefService> Create(PrefRegistry* registry);
protected:
- virtual void ResetDefaultState();
-
scoped_refptr<PrefStore> managed_prefs_;
scoped_refptr<PrefStore> supervised_user_prefs_;
scoped_refptr<PrefStore> extension_prefs_;
@@ -71,4 +86,6 @@ class BASE_PREFS_EXPORT PrefServiceBuilder {
DISALLOW_COPY_AND_ASSIGN(PrefServiceBuilder);
};
+} // namespace base
+
#endif // BASE_PREFS_PREF_SERVICE_BUILDER_H_

Powered by Google App Engine
This is Rietveld 408576698