Chromium Code Reviews| Index: chrome/browser/sync_file_system/sync_file_system_service.cc |
| diff --git a/chrome/browser/sync_file_system/sync_file_system_service.cc b/chrome/browser/sync_file_system/sync_file_system_service.cc |
| index e4df2aa917bdf65d93ee6fde6f7831edf4c15180..492a4001cb7e62a28eb05f06d6179ecaf1c07ac2 100644 |
| --- a/chrome/browser/sync_file_system/sync_file_system_service.cc |
| +++ b/chrome/browser/sync_file_system/sync_file_system_service.cc |
| @@ -10,6 +10,7 @@ |
| #include "chrome/browser/profiles/profile.h" |
| #include "chrome/browser/profiles/profile_dependency_manager.h" |
| #include "chrome/browser/sync_file_system/local_file_sync_service.h" |
| +#include "chrome/browser/sync_file_system/remote_file_sync_service.h" |
| #include "content/public/browser/browser_thread.h" |
| #include "googleurl/src/gurl.h" |
| #include "webkit/fileapi/file_system_context.h" |
| @@ -25,6 +26,10 @@ void SyncFileSystemService::Shutdown() { |
| local_file_service_->Shutdown(); |
| local_file_service_.reset(); |
| + // TODO(tzik): Uncomment this line after RemoteChangeObserver lands. |
| + // remote_file_service_->RemoveObserver(this); |
|
kinuko
2012/10/23 08:12:14
Not sure if this line is really necessary...
tzik
2012/10/24 03:32:33
Done.
|
| + remote_file_service_.reset(); |
| + |
| profile_ = NULL; |
| } |
| @@ -38,27 +43,33 @@ void SyncFileSystemService::InitializeForApp( |
| const std::string& service_name, |
| const GURL& app_url, |
| const StatusCallback& callback) { |
| - DCHECK(local_file_service_.get()); |
| + DCHECK(local_file_service_); |
| // TODO(kinuko,tzik): Instantiate the remote_file_service for the given |
| // |service_name| if it hasn't been initialized. |
| local_file_service_->MaybeInitializeFileSystemContext( |
| - app_url, file_system_context, callback); |
| + app_url.GetOrigin(), file_system_context, callback); |
| - // TODO(tzik): Hook up remote service initialization code. |
| + if (remote_file_service_) |
| + remote_file_service_->RegisterOriginForTrackingChanges(app_url.GetOrigin()); |
| } |
| SyncFileSystemService::SyncFileSystemService(Profile* profile) |
| : profile_(profile) {} |
| void SyncFileSystemService::Initialize( |
| - scoped_ptr<LocalFileSyncService> local_file_service) { |
| + scoped_ptr<LocalFileSyncService> local_file_service, |
| + scoped_ptr<RemoteFileSyncService> remote_file_service) { |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(local_file_service.get()); |
| DCHECK(profile_); |
| local_file_service_ = local_file_service.Pass(); |
| + remote_file_service_ = remote_file_service.Pass(); |
| + |
| + // TODO(tzik): Uncomment this line after RemoteChangeObserver lands. |
| + // remote_file_service_->AddObserver(this); |
| } |
| // SyncFileSystemServiceFactory ----------------------------------------------- |
| @@ -91,8 +102,12 @@ ProfileKeyedService* SyncFileSystemServiceFactory::BuildServiceInstanceFor( |
| scoped_ptr<LocalFileSyncService> local_file_service( |
| new LocalFileSyncService); |
| - service->Initialize(local_file_service.Pass()); |
| + scoped_ptr<RemoteFileSyncService> remote_file_service; |
| + // TODO(tzik): Instantiate DriveFileSyncService. |
| + |
| + service->Initialize(local_file_service.Pass(), |
| + remote_file_service.Pass()); |
| return service; |
| } |
| -} // namespace chrome |
| +} // namespace sync_file_system |