| Index: webkit/browser/fileapi/file_system_context.cc
|
| diff --git a/webkit/browser/fileapi/file_system_context.cc b/webkit/browser/fileapi/file_system_context.cc
|
| index 7ae261ae8b60405e02184157f318c4ec7ca85654..124d427823a74d225352da3efdfa64b6b8ec357d 100644
|
| --- a/webkit/browser/fileapi/file_system_context.cc
|
| +++ b/webkit/browser/fileapi/file_system_context.cc
|
| @@ -228,25 +228,17 @@ bool FileSystemContext::IsSandboxFileSystem(FileSystemType type) const {
|
|
|
| const UpdateObserverList* FileSystemContext::GetUpdateObservers(
|
| FileSystemType type) const {
|
| - // Currently update observer is only available in SandboxFileSystemBackend
|
| - // and TestFileSystemBackend.
|
| - // TODO(kinuko): Probably GetUpdateObservers() virtual method should be
|
| - // added to FileSystemBackend interface and be called like
|
| - // other GetFoo() methods do.
|
| - if (sandbox_backend_->CanHandleType(type))
|
| - return sandbox_backend_->GetUpdateObservers(type);
|
| - if (type != kFileSystemTypeTest)
|
| - return NULL;
|
| FileSystemBackend* backend = GetFileSystemBackend(type);
|
| - return static_cast<TestFileSystemBackend*>(
|
| - backend)->GetUpdateObservers(type);
|
| + if (backend->GetQuotaUtil())
|
| + return backend->GetQuotaUtil()->GetUpdateObservers(type);
|
| + return NULL;
|
| }
|
|
|
| const AccessObserverList* FileSystemContext::GetAccessObservers(
|
| FileSystemType type) const {
|
| - // Currently access observer is only available in SandboxFileSystemBackend.
|
| - if (sandbox_backend_->CanHandleType(type))
|
| - return sandbox_backend_->GetAccessObservers(type);
|
| + FileSystemBackend* backend = GetFileSystemBackend(type);
|
| + if (backend->GetQuotaUtil())
|
| + return backend->GetQuotaUtil()->GetAccessObservers(type);
|
| return NULL;
|
| }
|
|
|
| @@ -339,21 +331,26 @@ FileSystemContext::CreateFileSystemOperationRunner() {
|
| return make_scoped_ptr(new FileSystemOperationRunner(this));
|
| }
|
|
|
| +// TODO(nhiroki): Move into SyncFileSystemBackend (http://crbug.com/242422/).
|
| void FileSystemContext::SetLocalFileChangeTracker(
|
| scoped_ptr<sync_file_system::LocalFileChangeTracker> tracker) {
|
| DCHECK(!change_tracker_.get());
|
| DCHECK(tracker.get());
|
| change_tracker_ = tracker.Pass();
|
| - sandbox_backend_->AddFileUpdateObserver(
|
| +
|
| + FileSystemBackend* backend = GetFileSystemBackend(kFileSystemTypeSyncable);
|
| + DCHECK(backend->GetQuotaUtil());
|
| + backend->GetQuotaUtil()->AddFileUpdateObserver(
|
| kFileSystemTypeSyncable,
|
| change_tracker_.get(),
|
| task_runners_->file_task_runner());
|
| - sandbox_backend_->AddFileChangeObserver(
|
| + backend->GetQuotaUtil()->AddFileChangeObserver(
|
| kFileSystemTypeSyncable,
|
| change_tracker_.get(),
|
| task_runners_->file_task_runner());
|
| }
|
|
|
| +// TODO(nhiroki): Move into SyncFileSystemBackend (http://crbug.com/242422/).
|
| void FileSystemContext::set_sync_context(
|
| sync_file_system::LocalFileSyncContext* sync_context) {
|
| sync_context_ = sync_context;
|
|
|