return;
}
- MetadataDatabase::Create(
- sync_context_->GetWorkerTaskRunner(),
- database_path_,
- env_override_,
- base::Bind(&SyncEngineInitializer::DidCreateMetadataDatabase,
- weak_ptr_factory_.GetWeakPtr(), base::Passed(&token)));
-}
-
-scoped_ptr<MetadataDatabase> SyncEngineInitializer::PassMetadataDatabase() {
- return metadata_database_.Pass();
-}
+ SyncStatusCode status = SYNC_STATUS_FAILED;
+ scoped_ptr<MetadataDatabase> metadata_database =
+ MetadataDatabase::Create(database_path_, env_override_, &status);
-void SyncEngineInitializer::DidCreateMetadataDatabase(
- scoped_ptr<SyncTaskToken> token,
- SyncStatusCode status,
- scoped_ptr<MetadataDatabase> instance) {
if (status != SYNC_STATUS_OK) {
util::Log(logging::LOG_VERBOSE, FROM_HERE,
"[Initialize] Failed to initialize MetadataDatabase.");
return;
}
- DCHECK(instance);
- metadata_database_ = instance.Pass();
+ DCHECK(metadata_database);
+ metadata_database_ = metadata_database.Pass();
if (metadata_database_->HasSyncRoot()) {
util::Log(logging::LOG_VERBOSE, FROM_HERE,
"[Initialize] Found local cache of sync-root.");
GetAboutResource(token.Pass());
}
+scoped_ptr<MetadataDatabase> SyncEngineInitializer::PassMetadataDatabase() {
+ return metadata_database_.Pass();
+}
+
void SyncEngineInitializer::GetAboutResource(
scoped_ptr<SyncTaskToken> token) {
set_used_network(true);
void SyncEngineInitializer::PopulateDatabase(
scoped_ptr<SyncTaskToken> token) {
DCHECK(sync_root_folder_);
- metadata_database_->PopulateInitialData(
- largest_change_id_,
- *sync_root_folder_,
- app_root_folders_,
- base::Bind(&SyncEngineInitializer::DidPopulateDatabase,
- weak_ptr_factory_.GetWeakPtr(), base::Passed(&token)));
-}
-
-void SyncEngineInitializer::DidPopulateDatabase(
- scoped_ptr<SyncTaskToken> token,
- SyncStatusCode status) {
+ SyncStatusCode status = metadata_database_->PopulateInitialData(
+ largest_change_id_, *sync_root_folder_, app_root_folders_);
if (status != SYNC_STATUS_OK) {
util::Log(logging::LOG_VERBOSE, FROM_HERE,
"[Initialize] Failed to populate initial data"