Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / sync_file_system / drive_backend / sync_engine_initializer.cc
index 6898cb5..c34505c 100644 (file)
@@ -85,22 +85,10 @@ void SyncEngineInitializer::RunPreflight(scoped_ptr<SyncTaskToken> token) {
     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.");
@@ -108,8 +96,8 @@ void SyncEngineInitializer::DidCreateMetadataDatabase(
     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.");
@@ -120,6 +108,10 @@ void SyncEngineInitializer::DidCreateMetadataDatabase(
   GetAboutResource(token.Pass());
 }
 
+scoped_ptr<MetadataDatabase> SyncEngineInitializer::PassMetadataDatabase() {
+  return metadata_database_.Pass();
+}
+
 void SyncEngineInitializer::GetAboutResource(
     scoped_ptr<SyncTaskToken> token) {
   set_used_network(true);
@@ -347,17 +339,8 @@ void SyncEngineInitializer::DidListAppRootFolders(
 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"