Chromium Code Reviews| Index: chrome/browser/prefs/pref_value_store.h |
| diff --git a/chrome/browser/prefs/pref_value_store.h b/chrome/browser/prefs/pref_value_store.h |
| index 87ed7b26b635cbfb6517d0b6d316a3d22c395e49..0e741c7701c6de28bf0e4bc71e12b4d5697135c9 100644 |
| --- a/chrome/browser/prefs/pref_value_store.h |
| +++ b/chrome/browser/prefs/pref_value_store.h |
| @@ -172,7 +172,7 @@ class PrefValueStore : public base::RefCountedThreadSafe<PrefValueStore> { |
| // that conflict with proxy settings specified by proxy policy. |
| bool HasPolicyConflictingUserProxySettings(); |
| - protected: |
| + protected: |
| // In decreasing order of precedence: |
| // |managed_platform_prefs| contains all managed platform (non-cloud policy) |
| // preference values. |
| @@ -186,6 +186,14 @@ class PrefValueStore : public base::RefCountedThreadSafe<PrefValueStore> { |
| // |default_prefs| contains application-default preference values. It must |
| // be non-null if any preferences are to be registered. |
| // |
| + // The |profile| parameter is used to construct a replacement device |
| + // management pref store in case of policy refresh, may be NULL for the local |
| + // state preferences. |
|
markusheintz_
2010/11/18 15:42:33
I'm so sorry to bother you with comments, but I do
Mattias Nissler (ping if slow)
2010/11/18 16:06:38
Na, the comment is really about this: The device m
markusheintz_
2010/11/19 09:53:08
That's how I understood it too. But I had to read
|
| + // |
| + // TODO(mnissler, danno): Refactor the pref store interface and refresh logic |
| + // so refreshes can be handled by the pref store itself and the profile |
| + // parameter be removed here. |
| + // |
| // This constructor should only be used internally, or by subclasses in |
| // testing. The usual way to create a PrefValueStore is by creating a |
| // PrefService. |
| @@ -195,19 +203,16 @@ class PrefValueStore : public base::RefCountedThreadSafe<PrefValueStore> { |
| PrefStore* command_line_prefs, |
| PrefStore* user_prefs, |
| PrefStore* recommended_prefs, |
| - PrefStore* default_prefs); |
| + PrefStore* default_prefs, |
| + Profile* profile); |
| private: |
| + typedef std::map<std::string, Value::ValueType> PrefTypeMap; |
| + |
| friend class PrefValueStoreTest; |
| FRIEND_TEST_ALL_PREFIXES(PrefValueStoreTest, |
| TestRefreshPolicyPrefsCompletion); |
| - scoped_ptr<PrefStore> pref_stores_[PrefNotifier::PREF_STORE_TYPE_MAX + 1]; |
| - |
| - // A mapping of preference names to their registered types. |
| - typedef std::map<std::string, Value::ValueType> PrefTypeMap; |
| - PrefTypeMap pref_types_; |
| - |
| // Returns true if the preference with the given name has a value in the |
| // given PrefStoreType, of the same value type as the preference was |
| // registered with. |
| @@ -237,6 +242,14 @@ class PrefValueStore : public base::RefCountedThreadSafe<PrefValueStore> { |
| PrefStore* new_recommended_pref_store, |
| AfterRefreshCallback* callback); |
| + scoped_ptr<PrefStore> pref_stores_[PrefNotifier::PREF_STORE_TYPE_MAX + 1]; |
| + |
| + // A mapping of preference names to their registered types. |
| + PrefTypeMap pref_types_; |
| + |
| + // The associated profile, if applicable. |
|
markusheintz_
2010/11/18 15:42:33
When is it not applicable? Maybe it's worth to add
Mattias Nissler (ping if slow)
2010/11/18 16:06:38
It's only applicable if this pref_value_store is a
markusheintz_
2010/11/19 09:53:08
I understood this comment, but I think if someone
|
| + Profile* profile_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(PrefValueStore); |
| }; |