| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_SYNC_WORKER_H_ | 5 #ifndef CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_SYNC_WORKER_H_ |
| 6 #define CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_SYNC_WORKER_H_ | 6 #define CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_SYNC_WORKER_H_ |
| 7 | 7 |
| 8 #include <set> | 8 #include <set> |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 enum AppStatus { | 54 enum AppStatus { |
| 55 APP_STATUS_ENABLED, | 55 APP_STATUS_ENABLED, |
| 56 APP_STATUS_DISABLED, | 56 APP_STATUS_DISABLED, |
| 57 APP_STATUS_UNINSTALLED, | 57 APP_STATUS_UNINSTALLED, |
| 58 }; | 58 }; |
| 59 | 59 |
| 60 typedef base::hash_map<std::string, AppStatus> AppStatusMap; | 60 typedef base::hash_map<std::string, AppStatus> AppStatusMap; |
| 61 | 61 |
| 62 class Observer { | 62 class Observer { |
| 63 public: | 63 public: |
| 64 virtual ~Observer() {} |
| 65 |
| 64 virtual void OnPendingFileListUpdated(int item_count) = 0; | 66 virtual void OnPendingFileListUpdated(int item_count) = 0; |
| 65 virtual void OnFileStatusChanged(const fileapi::FileSystemURL& url, | 67 virtual void OnFileStatusChanged(const fileapi::FileSystemURL& url, |
| 66 SyncFileStatus file_status, | 68 SyncFileStatus file_status, |
| 67 SyncAction sync_action, | 69 SyncAction sync_action, |
| 68 SyncDirection direction) = 0; | 70 SyncDirection direction) = 0; |
| 69 virtual void UpdateServiceState(RemoteServiceState state, | 71 virtual void UpdateServiceState(RemoteServiceState state, |
| 70 const std::string& description) = 0; | 72 const std::string& description) = 0; |
| 71 | |
| 72 protected: | |
| 73 virtual ~Observer() {} | |
| 74 }; | 73 }; |
| 75 | 74 |
| 76 static scoped_ptr<SyncWorker> CreateOnWorker( | 75 static scoped_ptr<SyncWorker> CreateOnWorker( |
| 77 const base::FilePath& base_dir, | 76 const base::FilePath& base_dir, |
| 78 Observer* observer, | 77 Observer* observer, |
| 79 const base::WeakPtr<ExtensionServiceInterface>& extension_service, | 78 const base::WeakPtr<ExtensionServiceInterface>& extension_service, |
| 80 scoped_ptr<SyncEngineContext> sync_engine_context, | 79 scoped_ptr<SyncEngineContext> sync_engine_context, |
| 81 leveldb::Env* env_override); | 80 leveldb::Env* env_override); |
| 82 | 81 |
| 82 static void DestructOnWorker(scoped_ptr<SyncWorker> sync_worker, |
| 83 scoped_ptr<Observer> worker_observer); |
| 84 |
| 83 virtual ~SyncWorker(); | 85 virtual ~SyncWorker(); |
| 84 | 86 |
| 85 void Initialize(); | 87 void Initialize(); |
| 86 | 88 |
| 87 // SyncTaskManager::Client overrides | 89 // SyncTaskManager::Client overrides |
| 88 virtual void MaybeScheduleNextTask() OVERRIDE; | 90 virtual void MaybeScheduleNextTask() OVERRIDE; |
| 89 virtual void NotifyLastOperationStatus( | 91 virtual void NotifyLastOperationStatus( |
| 90 SyncStatusCode sync_status, bool used_network) OVERRIDE; | 92 SyncStatusCode sync_status, bool used_network) OVERRIDE; |
| 91 | 93 |
| 92 void RegisterOrigin(const GURL& origin, const SyncStatusCallback& callback); | 94 void RegisterOrigin(const GURL& origin, const SyncStatusCallback& callback); |
| (...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 196 ObserverList<Observer> observers_; | 198 ObserverList<Observer> observers_; |
| 197 | 199 |
| 198 base::WeakPtrFactory<SyncWorker> weak_ptr_factory_; | 200 base::WeakPtrFactory<SyncWorker> weak_ptr_factory_; |
| 199 DISALLOW_COPY_AND_ASSIGN(SyncWorker); | 201 DISALLOW_COPY_AND_ASSIGN(SyncWorker); |
| 200 }; | 202 }; |
| 201 | 203 |
| 202 } // namespace drive_backend | 204 } // namespace drive_backend |
| 203 } // namespace sync_file_system | 205 } // namespace sync_file_system |
| 204 | 206 |
| 205 #endif // CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_SYNC_WORKER_H_ | 207 #endif // CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_SYNC_WORKER_H_ |
| OLD | NEW |