Index: base/prefs/pref_service_factory.h |
diff --git a/base/prefs/pref_service_builder.h b/base/prefs/pref_service_factory.h |
similarity index 49% |
rename from base/prefs/pref_service_builder.h |
rename to base/prefs/pref_service_factory.h |
index 7af43926233464654bdf2920d548ff624f8b0d7d..47c9060f720b95a7c3087c8cf6371925842d1507 100644 |
--- a/base/prefs/pref_service_builder.h |
+++ b/base/prefs/pref_service_factory.h |
@@ -2,8 +2,8 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef BASE_PREFS_PREF_SERVICE_BUILDER_H_ |
-#define BASE_PREFS_PREF_SERVICE_BUILDER_H_ |
+#ifndef BASE_PREFS_PREF_SERVICE_FACTORY_H_ |
+#define BASE_PREFS_PREF_SERVICE_FACTORY_H_ |
#include "base/basictypes.h" |
#include "base/callback.h" |
@@ -16,45 +16,60 @@ |
class PrefService; |
namespace base { |
+ |
class FilePath; |
class SequencedTaskRunner; |
-} |
// A class that allows convenient building of PrefService. |
-class BASE_PREFS_EXPORT PrefServiceBuilder { |
+class BASE_PREFS_EXPORT PrefServiceFactory { |
public: |
- PrefServiceBuilder(); |
- virtual ~PrefServiceBuilder(); |
+ PrefServiceFactory(); |
+ virtual ~PrefServiceFactory(); |
// 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); |
+ // this factory. |
+ 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_; |
@@ -68,7 +83,9 @@ class BASE_PREFS_EXPORT PrefServiceBuilder { |
bool async_; |
private: |
- DISALLOW_COPY_AND_ASSIGN(PrefServiceBuilder); |
+ DISALLOW_COPY_AND_ASSIGN(PrefServiceFactory); |
}; |
-#endif // BASE_PREFS_PREF_SERVICE_BUILDER_H_ |
+} // namespace base |
+ |
+#endif // BASE_PREFS_PREF_SERVICE_FACTORY_H_ |