Index: chrome/browser/sync_file_system/drive_backend/sync_engine_initializer.h |
diff --git a/chrome/browser/sync_file_system/drive_backend/sync_engine_initializer.h b/chrome/browser/sync_file_system/drive_backend/sync_engine_initializer.h |
index 13446a5fdcd1dd23f056d4e295590382414e6abc..dc31beacf8e1a777428b13f11a2369b6f020be0a 100644 |
--- a/chrome/browser/sync_file_system/drive_backend/sync_engine_initializer.h |
+++ b/chrome/browser/sync_file_system/drive_backend/sync_engine_initializer.h |
@@ -5,19 +5,43 @@ |
#ifndef CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_SYNC_ENGINE_INITIALIZER_H_ |
#define CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_SYNC_ENGINE_INITIALIZER_H_ |
+#include "base/memory/ref_counted.h" |
+#include "base/memory/scoped_ptr.h" |
+#include "base/memory/weak_ptr.h" |
+#include "base/sequenced_task_runner.h" |
#include "chrome/browser/sync_file_system/sync_callbacks.h" |
#include "chrome/browser/sync_file_system/sync_task.h" |
+namespace drive { |
+class DriveAPIService; |
+} |
+ |
namespace sync_file_system { |
namespace drive_backend { |
+class MetadataDatabase; |
+ |
class SyncEngineInitializer : public SyncTask { |
public: |
- SyncEngineInitializer(); |
+ SyncEngineInitializer(base::SequencedTaskRunner* task_runner, |
+ drive::DriveAPIService* drive_api, |
+ const base::FilePath& database_path); |
virtual ~SyncEngineInitializer(); |
virtual void Run(const SyncStatusCallback& callback) OVERRIDE; |
private: |
+ void DidCreateMetadataDatabase(const SyncStatusCallback& callback, |
+ SyncStatusCode status, |
+ scoped_ptr<MetadataDatabase> instance); |
+ |
+ scoped_refptr<base::SequencedTaskRunner> task_runner_; |
+ drive::DriveAPIService* drive_api_; |
+ base::FilePath database_path_; |
+ |
+ scoped_ptr<MetadataDatabase> metadata_database_; |
+ |
+ base::WeakPtrFactory<SyncEngineInitializer> weak_ptr_factory_; |
+ |
DISALLOW_COPY_AND_ASSIGN(SyncEngineInitializer); |
}; |