Index: chrome/browser/sync/glue/data_type_manager_impl.cc |
diff --git a/chrome/browser/sync/glue/data_type_manager_impl.cc b/chrome/browser/sync/glue/data_type_manager_impl.cc |
index d5acf569d8870da43b6874810900eb9b66afaf7f..7721c4748bb1ea918503b5d7767c5812d665ff77 100644 |
--- a/chrome/browser/sync/glue/data_type_manager_impl.cc |
+++ b/chrome/browser/sync/glue/data_type_manager_impl.cc |
@@ -36,7 +36,6 @@ DataTypeManagerImpl::DataTypeManagerImpl( |
state_(DataTypeManager::STOPPED), |
needs_reconfigure_(false), |
last_configure_reason_(syncer::CONFIGURE_REASON_UNKNOWN), |
- last_nigori_state_(BackendDataTypeConfigurer::WITHOUT_NIGORI), |
weak_ptr_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)), |
model_association_manager_(controllers, |
ALLOW_THIS_IN_INITIALIZER_LIST(this)) { |
@@ -47,20 +46,20 @@ DataTypeManagerImpl::~DataTypeManagerImpl() {} |
void DataTypeManagerImpl::Configure(TypeSet desired_types, |
syncer::ConfigureReason reason) { |
- ConfigureImpl(desired_types, reason, |
- BackendDataTypeConfigurer::WITH_NIGORI); |
+ desired_types.Put(syncer::NIGORI); |
+ ConfigureImpl(desired_types, reason); |
} |
-void DataTypeManagerImpl::ConfigureWithoutNigori(TypeSet desired_types, |
+void DataTypeManagerImpl::ConfigureWithoutNigori( |
+ TypeSet desired_types, |
syncer::ConfigureReason reason) { |
- ConfigureImpl(desired_types, reason, |
- BackendDataTypeConfigurer::WITHOUT_NIGORI); |
+ DCHECK(!desired_types.Has(syncer::NIGORI)); |
+ ConfigureImpl(desired_types, reason); |
} |
void DataTypeManagerImpl::ConfigureImpl( |
TypeSet desired_types, |
- syncer::ConfigureReason reason, |
- BackendDataTypeConfigurer::NigoriState nigori_state) { |
+ syncer::ConfigureReason reason) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
DCHECK_NE(reason, syncer::CONFIGURE_REASON_UNKNOWN); |
if (state_ == STOPPING) { |
@@ -81,7 +80,6 @@ void DataTypeManagerImpl::ConfigureImpl( |
} |
last_requested_types_ = desired_types; |
- last_nigori_state_ = nigori_state; |
// Only proceed if we're in a steady state or blocked. |
if (state_ != STOPPED && state_ != CONFIGURED && state_ != BLOCKED) { |
DVLOG(1) << "Received configure request while configuration in flight. " |
@@ -91,12 +89,10 @@ void DataTypeManagerImpl::ConfigureImpl( |
return; |
} |
- Restart(reason, nigori_state); |
+ Restart(reason); |
} |
-void DataTypeManagerImpl::Restart( |
- syncer::ConfigureReason reason, |
- BackendDataTypeConfigurer::NigoriState nigori_state) { |
+void DataTypeManagerImpl::Restart(syncer::ConfigureReason reason) { |
DVLOG(1) << "Restarting..."; |
model_association_manager_.Initialize(last_requested_types_); |
last_restart_time_ = base::Time::Now(); |
@@ -113,12 +109,13 @@ void DataTypeManagerImpl::Restart( |
// Tell the backend about the new set of data types we wish to sync. |
// The task will be invoked when updates are downloaded. |
state_ = DOWNLOAD_PENDING; |
- // Hopefully http://crbug.com/79970 will make this less verbose. |
syncer::ModelTypeSet all_types; |
for (DataTypeController::TypeMap::const_iterator it = |
controllers_->begin(); it != controllers_->end(); ++it) { |
all_types.Put(it->first); |
} |
+ // NIGORI has no controller. We must add it manually. |
+ all_types.Put(syncer::NIGORI); |
const syncer::ModelTypeSet types_to_add = last_requested_types_; |
// Check that types_to_add \subseteq all_types. |
DCHECK(all_types.HasAll(types_to_add)); |
@@ -129,7 +126,6 @@ void DataTypeManagerImpl::Restart( |
reason, |
types_to_add, |
types_to_remove, |
- nigori_state, |
base::Bind(&DataTypeManagerImpl::DownloadReady, |
weak_ptr_factory_.GetWeakPtr()), |
base::Bind(&DataTypeManagerImpl::OnDownloadRetry, |
@@ -157,12 +153,10 @@ bool DataTypeManagerImpl::ProcessReconfigure() { |
base::Bind(&DataTypeManagerImpl::ConfigureImpl, |
weak_ptr_factory_.GetWeakPtr(), |
last_requested_types_, |
- last_configure_reason_, |
- last_nigori_state_)); |
+ last_configure_reason_)); |
needs_reconfigure_ = false; |
last_configure_reason_ = syncer::CONFIGURE_REASON_UNKNOWN; |
- last_nigori_state_ = BackendDataTypeConfigurer::WITHOUT_NIGORI; |
return true; |
} |
@@ -249,8 +243,7 @@ void DataTypeManagerImpl::OnTypesLoaded() { |
return; |
} |
- Restart(syncer::CONFIGURE_REASON_RECONFIGURATION, |
- last_nigori_state_); |
+ Restart(syncer::CONFIGURE_REASON_RECONFIGURATION); |
} |