| OLD | NEW |
| 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 #include "components/sync_driver/sync_prefs.h" | 5 #include "components/sync_driver/sync_prefs.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/prefs/pref_member.h" | 8 #include "base/prefs/pref_member.h" |
| 9 #include "base/prefs/pref_service.h" | 9 #include "base/prefs/pref_service.h" |
| 10 #include "base/strings/string_number_conversions.h" | 10 #include "base/strings/string_number_conversions.h" |
| (...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 114 registry->RegisterBooleanPref( | 114 registry->RegisterBooleanPref( |
| 115 prefs::kSyncHasAuthError, | 115 prefs::kSyncHasAuthError, |
| 116 false, | 116 false, |
| 117 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 117 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 118 | 118 |
| 119 registry->RegisterStringPref( | 119 registry->RegisterStringPref( |
| 120 prefs::kSyncSessionsGUID, | 120 prefs::kSyncSessionsGUID, |
| 121 std::string(), | 121 std::string(), |
| 122 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 122 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 123 | 123 |
| 124 // We will start prompting people about new data types after the launch of | |
| 125 // SESSIONS - all previously launched data types are treated as if they are | |
| 126 // already acknowledged. | |
| 127 syncer::ModelTypeSet model_set; | |
| 128 model_set.Put(syncer::BOOKMARKS); | |
| 129 model_set.Put(syncer::PREFERENCES); | |
| 130 model_set.Put(syncer::PASSWORDS); | |
| 131 model_set.Put(syncer::AUTOFILL_PROFILE); | |
| 132 model_set.Put(syncer::AUTOFILL_WALLET_DATA); | |
| 133 model_set.Put(syncer::AUTOFILL); | |
| 134 model_set.Put(syncer::THEMES); | |
| 135 model_set.Put(syncer::EXTENSIONS); | |
| 136 model_set.Put(syncer::NIGORI); | |
| 137 model_set.Put(syncer::SEARCH_ENGINES); | |
| 138 model_set.Put(syncer::APPS); | |
| 139 model_set.Put(syncer::APP_LIST); | |
| 140 model_set.Put(syncer::TYPED_URLS); | |
| 141 model_set.Put(syncer::SESSIONS); | |
| 142 model_set.Put(syncer::ARTICLES); | |
| 143 model_set.Put(syncer::WIFI_CREDENTIALS); | |
| 144 registry->RegisterListPref(prefs::kSyncAcknowledgedSyncTypes, | |
| 145 syncer::ModelTypeSetToValue(model_set), | |
| 146 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | |
| 147 | |
| 148 registry->RegisterIntegerPref( | 124 registry->RegisterIntegerPref( |
| 149 prefs::kSyncRemainingRollbackTries, 0, | 125 prefs::kSyncRemainingRollbackTries, 0, |
| 150 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 126 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| 151 } | 127 } |
| 152 | 128 |
| 153 void SyncPrefs::AddSyncPrefObserver(SyncPrefObserver* sync_pref_observer) { | 129 void SyncPrefs::AddSyncPrefObserver(SyncPrefObserver* sync_pref_observer) { |
| 154 DCHECK(CalledOnValidThread()); | 130 DCHECK(CalledOnValidThread()); |
| 155 sync_pref_observers_.AddObserver(sync_pref_observer); | 131 sync_pref_observers_.AddObserver(sync_pref_observer); |
| 156 } | 132 } |
| 157 | 133 |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 365 DCHECK(CalledOnValidThread()); | 341 DCHECK(CalledOnValidThread()); |
| 366 return pref_service_->GetString(prefs::kSyncSpareBootstrapToken); | 342 return pref_service_->GetString(prefs::kSyncSpareBootstrapToken); |
| 367 } | 343 } |
| 368 | 344 |
| 369 void SyncPrefs::SetSpareBootstrapToken(const std::string& token) { | 345 void SyncPrefs::SetSpareBootstrapToken(const std::string& token) { |
| 370 DCHECK(CalledOnValidThread()); | 346 DCHECK(CalledOnValidThread()); |
| 371 pref_service_->SetString(prefs::kSyncSpareBootstrapToken, token); | 347 pref_service_->SetString(prefs::kSyncSpareBootstrapToken, token); |
| 372 } | 348 } |
| 373 #endif | 349 #endif |
| 374 | 350 |
| 375 void SyncPrefs::AcknowledgeSyncedTypes(syncer::ModelTypeSet types) { | |
| 376 DCHECK(CalledOnValidThread()); | |
| 377 // Add the types to the current set of acknowledged | |
| 378 // types, and then store the resulting set in prefs. | |
| 379 const syncer::ModelTypeSet acknowledged_types = | |
| 380 Union(types, | |
| 381 syncer::ModelTypeSetFromValue( | |
| 382 *pref_service_->GetList(prefs::kSyncAcknowledgedSyncTypes))); | |
| 383 | |
| 384 scoped_ptr<base::ListValue> value( | |
| 385 syncer::ModelTypeSetToValue(acknowledged_types)); | |
| 386 pref_service_->Set(prefs::kSyncAcknowledgedSyncTypes, *value); | |
| 387 } | |
| 388 | |
| 389 int SyncPrefs::GetRemainingRollbackTries() const { | 351 int SyncPrefs::GetRemainingRollbackTries() const { |
| 390 return pref_service_->GetInteger(prefs::kSyncRemainingRollbackTries); | 352 return pref_service_->GetInteger(prefs::kSyncRemainingRollbackTries); |
| 391 } | 353 } |
| 392 | 354 |
| 393 void SyncPrefs::SetRemainingRollbackTries(int times) { | 355 void SyncPrefs::SetRemainingRollbackTries(int times) { |
| 394 pref_service_->SetInteger(prefs::kSyncRemainingRollbackTries, times); | 356 pref_service_->SetInteger(prefs::kSyncRemainingRollbackTries, times); |
| 395 } | 357 } |
| 396 | 358 |
| 397 void SyncPrefs::OnSyncManagedPrefChanged() { | 359 void SyncPrefs::OnSyncManagedPrefChanged() { |
| 398 DCHECK(CalledOnValidThread()); | 360 DCHECK(CalledOnValidThread()); |
| 399 FOR_EACH_OBSERVER(SyncPrefObserver, | 361 FOR_EACH_OBSERVER(SyncPrefObserver, |
| 400 sync_pref_observers_, | 362 sync_pref_observers_, |
| 401 OnSyncManagedPrefChange(*pref_sync_managed_)); | 363 OnSyncManagedPrefChange(*pref_sync_managed_)); |
| 402 } | 364 } |
| 403 | 365 |
| 404 void SyncPrefs::SetManagedForTest(bool is_managed) { | 366 void SyncPrefs::SetManagedForTest(bool is_managed) { |
| 405 DCHECK(CalledOnValidThread()); | 367 DCHECK(CalledOnValidThread()); |
| 406 pref_service_->SetBoolean(prefs::kSyncManaged, is_managed); | 368 pref_service_->SetBoolean(prefs::kSyncManaged, is_managed); |
| 407 } | 369 } |
| 408 | 370 |
| 409 syncer::ModelTypeSet SyncPrefs::GetAcknowledgeSyncedTypesForTest() const { | |
| 410 DCHECK(CalledOnValidThread()); | |
| 411 return syncer::ModelTypeSetFromValue( | |
| 412 *pref_service_->GetList(prefs::kSyncAcknowledgedSyncTypes)); | |
| 413 } | |
| 414 | |
| 415 void SyncPrefs::RegisterPrefGroups() { | 371 void SyncPrefs::RegisterPrefGroups() { |
| 416 pref_groups_[syncer::APPS].Put(syncer::APP_NOTIFICATIONS); | 372 pref_groups_[syncer::APPS].Put(syncer::APP_NOTIFICATIONS); |
| 417 pref_groups_[syncer::APPS].Put(syncer::APP_SETTINGS); | 373 pref_groups_[syncer::APPS].Put(syncer::APP_SETTINGS); |
| 418 pref_groups_[syncer::APPS].Put(syncer::APP_LIST); | 374 pref_groups_[syncer::APPS].Put(syncer::APP_LIST); |
| 419 | 375 |
| 420 pref_groups_[syncer::AUTOFILL].Put(syncer::AUTOFILL_PROFILE); | 376 pref_groups_[syncer::AUTOFILL].Put(syncer::AUTOFILL_PROFILE); |
| 421 pref_groups_[syncer::AUTOFILL].Put(syncer::AUTOFILL_WALLET_DATA); | 377 pref_groups_[syncer::AUTOFILL].Put(syncer::AUTOFILL_WALLET_DATA); |
| 422 | 378 |
| 423 pref_groups_[syncer::EXTENSIONS].Put(syncer::EXTENSION_SETTINGS); | 379 pref_groups_[syncer::EXTENSIONS].Put(syncer::EXTENSION_SETTINGS); |
| 424 | 380 |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 516 | 472 |
| 517 void SyncPrefs::SetFirstSyncTime(base::Time time) { | 473 void SyncPrefs::SetFirstSyncTime(base::Time time) { |
| 518 pref_service_->SetInt64(prefs::kSyncFirstSyncTime, time.ToInternalValue()); | 474 pref_service_->SetInt64(prefs::kSyncFirstSyncTime, time.ToInternalValue()); |
| 519 } | 475 } |
| 520 | 476 |
| 521 void SyncPrefs::ClearFirstSyncTime() { | 477 void SyncPrefs::ClearFirstSyncTime() { |
| 522 pref_service_->ClearPref(prefs::kSyncFirstSyncTime); | 478 pref_service_->ClearPref(prefs::kSyncFirstSyncTime); |
| 523 } | 479 } |
| 524 | 480 |
| 525 } // namespace sync_driver | 481 } // namespace sync_driver |
| OLD | NEW |