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

Unified Diff: chrome/browser/sync/sync_prefs.cc

Issue 12079097: Introduce PrefRegistrySyncable, simplifying PrefServiceSyncable. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head again; base::File changes conflicted. Created 7 years, 10 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
« no previous file with comments | « chrome/browser/sync/sync_prefs.h ('k') | chrome/browser/sync/sync_prefs_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/sync/sync_prefs.cc
diff --git a/chrome/browser/sync/sync_prefs.cc b/chrome/browser/sync/sync_prefs.cc
index 3174957a78ea3aa4c8b332efc8bafe1be8fb1b5c..34ed7c85f8de62dcb9c4805feb6bd117746f4430 100644
--- a/chrome/browser/sync/sync_prefs.cc
+++ b/chrome/browser/sync/sync_prefs.cc
@@ -9,6 +9,7 @@
#include "base/strings/string_number_conversions.h"
#include "base/values.h"
#include "build/build_config.h"
+#include "chrome/browser/prefs/pref_registry_syncable.h"
#include "chrome/browser/prefs/pref_service.h"
#include "chrome/browser/profiles/profile_io_data.h"
#include "chrome/browser/sync/profile_sync_service.h"
@@ -22,7 +23,7 @@ namespace browser_sync {
SyncPrefObserver::~SyncPrefObserver() {}
-SyncPrefs::SyncPrefs(PrefServiceSyncable* pref_service)
+SyncPrefs::SyncPrefs(PrefService* pref_service)
: pref_service_(pref_service) {
RegisterPrefGroups();
// TODO(tim): Create a Mock instead of maintaining the if(!pref_service_) case
@@ -42,16 +43,18 @@ SyncPrefs::~SyncPrefs() {
}
// static
-void SyncPrefs::RegisterUserPrefs(PrefServiceSyncable* prefs) {
- prefs->RegisterBooleanPref(prefs::kSyncHasSetupCompleted,
- false,
- PrefServiceSyncable::UNSYNCABLE_PREF);
- prefs->RegisterBooleanPref(prefs::kSyncSuppressStart,
- false,
- PrefServiceSyncable::UNSYNCABLE_PREF);
- prefs->RegisterInt64Pref(prefs::kSyncLastSyncedTime,
- 0,
- PrefServiceSyncable::UNSYNCABLE_PREF);
+void SyncPrefs::RegisterUserPrefs(PrefService* prefs,
+ PrefRegistrySyncable* registry) {
+ // TODO(joi): Remove |prefs| parameter.
+ registry->RegisterBooleanPref(prefs::kSyncHasSetupCompleted,
+ false,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
+ registry->RegisterBooleanPref(prefs::kSyncSuppressStart,
+ false,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
+ registry->RegisterInt64Pref(prefs::kSyncLastSyncedTime,
+ 0,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
// If you've never synced before, or if you're using Chrome OS or Android,
// all datatypes are on by default.
@@ -63,9 +66,9 @@ void SyncPrefs::RegisterUserPrefs(PrefServiceSyncable* prefs) {
bool enable_by_default = !prefs->HasPrefPath(prefs::kSyncHasSetupCompleted);
#endif
- prefs->RegisterBooleanPref(prefs::kSyncKeepEverythingSynced,
- enable_by_default,
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterBooleanPref(prefs::kSyncKeepEverythingSynced,
+ enable_by_default,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
syncer::ModelTypeSet user_types = syncer::UserTypes();
@@ -74,27 +77,27 @@ void SyncPrefs::RegisterUserPrefs(PrefServiceSyncable* prefs) {
user_types.PutAll(syncer::ProxyTypes());
// Treat bookmarks specially.
- RegisterDataTypePreferredPref(prefs, syncer::BOOKMARKS, true);
+ RegisterDataTypePreferredPref(registry, syncer::BOOKMARKS, true);
user_types.Remove(syncer::BOOKMARKS);
for (syncer::ModelTypeSet::Iterator it = user_types.First();
it.Good(); it.Inc()) {
- RegisterDataTypePreferredPref(prefs, it.Get(), enable_by_default);
+ RegisterDataTypePreferredPref(registry, it.Get(), enable_by_default);
}
- prefs->RegisterBooleanPref(prefs::kSyncManaged,
- false,
- PrefServiceSyncable::UNSYNCABLE_PREF);
- prefs->RegisterStringPref(prefs::kSyncEncryptionBootstrapToken,
- "",
- PrefServiceSyncable::UNSYNCABLE_PREF);
- prefs->RegisterStringPref(prefs::kSyncKeystoreEncryptionBootstrapToken,
- "",
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterBooleanPref(prefs::kSyncManaged,
+ false,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
+ registry->RegisterStringPref(prefs::kSyncEncryptionBootstrapToken,
+ "",
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
+ registry->RegisterStringPref(prefs::kSyncKeystoreEncryptionBootstrapToken,
+ "",
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
#if defined(OS_CHROMEOS)
- prefs->RegisterStringPref(prefs::kSyncSpareBootstrapToken,
- "",
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterStringPref(prefs::kSyncSpareBootstrapToken,
+ "",
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
#endif
// We will start prompting people about new data types after the launch of
@@ -113,9 +116,9 @@ void SyncPrefs::RegisterUserPrefs(PrefServiceSyncable* prefs) {
model_set.Put(syncer::APPS);
model_set.Put(syncer::TYPED_URLS);
model_set.Put(syncer::SESSIONS);
- prefs->RegisterListPref(prefs::kSyncAcknowledgedSyncTypes,
- syncer::ModelTypeSetToValue(model_set),
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterListPref(prefs::kSyncAcknowledgedSyncTypes,
+ syncer::ModelTypeSetToValue(model_set),
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
}
// static
@@ -393,7 +396,7 @@ void SyncPrefs::RegisterPrefGroups() {
}
// static
-void SyncPrefs::RegisterDataTypePreferredPref(PrefServiceSyncable* prefs,
+void SyncPrefs::RegisterDataTypePreferredPref(PrefRegistrySyncable* registry,
syncer::ModelType type,
bool is_preferred) {
const char* pref_name = GetPrefNameForDataType(type);
@@ -401,8 +404,8 @@ void SyncPrefs::RegisterDataTypePreferredPref(PrefServiceSyncable* prefs,
NOTREACHED();
return;
}
- prefs->RegisterBooleanPref(pref_name, is_preferred,
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterBooleanPref(pref_name, is_preferred,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
}
bool SyncPrefs::GetDataTypePreferred(syncer::ModelType type) const {
« no previous file with comments | « chrome/browser/sync/sync_prefs.h ('k') | chrome/browser/sync/sync_prefs_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698