Chromium Code Reviews| 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 24c505bb8a927d07b4b892768b411f3680c59005..181c57924a5d70c36995642c6d391e9cdf3bcdb6 100644 |
| --- a/webkit/browser/fileapi/file_system_context.cc |
| +++ b/webkit/browser/fileapi/file_system_context.cc |
| @@ -25,8 +25,6 @@ |
| #include "webkit/browser/fileapi/isolated_file_system_backend.h" |
| #include "webkit/browser/fileapi/mount_points.h" |
| #include "webkit/browser/fileapi/sandbox_file_system_backend.h" |
| -#include "webkit/browser/fileapi/syncable/local_file_change_tracker.h" |
| -#include "webkit/browser/fileapi/syncable/local_file_sync_context.h" |
| #include "webkit/browser/fileapi/test_file_system_backend.h" |
| #include "webkit/browser/quota/quota_manager.h" |
| #include "webkit/browser/quota/special_storage_policy.h" |
| @@ -116,6 +114,7 @@ FileSystemContext::FileSystemContext( |
| special_storage_policy)), |
| sandbox_backend_(new SandboxFileSystemBackend( |
| sandbox_context_.get(), |
| + task_runners_->file_task_runner(), |
| options)), |
| isolated_backend_(new IsolatedFileSystemBackend()), |
| additional_backends_(additional_backends.Pass()), |
| @@ -182,7 +181,7 @@ AsyncFileUtil* FileSystemContext::GetAsyncFileUtil( |
| FileSystemBackend* backend = GetFileSystemBackend(type); |
| if (!backend) |
| return NULL; |
| - return backend->GetAsyncFileUtil(type); |
| + return backend->GetAsyncFileUtil(type, this); |
| } |
| FileSystemFileUtil* FileSystemContext::GetFileUtil( |
| @@ -190,7 +189,7 @@ FileSystemFileUtil* FileSystemContext::GetFileUtil( |
| FileSystemBackend* backend = GetFileSystemBackend(type); |
| if (!backend) |
| return NULL; |
| - return backend->GetFileUtil(type); |
| + return backend->GetFileUtil(type, this); |
| } |
| CopyOrMoveFileValidatorFactory* |
| @@ -220,25 +219,34 @@ 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. |
| + // Currently update observer is only available in SandboxFileSystemBackend, |
| + // SyncFileSystemBackend and TestFileSystemBackend. |
| 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 (type == kFileSystemTypeSyncable || |
| + type == kFileSystemTypeSyncableForInternalSync) { |
| + return static_cast<SandboxFileSystemBackend*>( |
| + backend)->GetUpdateObservers(type); |
| + } |
| + if (type == kFileSystemTypeTest) { |
| + return static_cast<TestFileSystemBackend*>( |
| + backend)->GetUpdateObservers(type); |
| + } |
| + return NULL; |
| } |
| const AccessObserverList* FileSystemContext::GetAccessObservers( |
| FileSystemType type) const { |
| - // Currently access observer is only available in SandboxFileSystemBackend. |
| + // Currently access observer is only available in SandboxFileSystemBackend and |
| + // SyncFileSystemBackend. |
| if (sandbox_backend_->CanHandleType(type)) |
| return sandbox_backend_->GetAccessObservers(type); |
| + if (type == kFileSystemTypeSyncable || |
| + type == kFileSystemTypeSyncableForInternalSync) { |
| + return static_cast<SandboxFileSystemBackend*>( |
| + GetFileSystemBackend(type))->GetAccessObservers(type); |
| + } |
| return NULL; |
| } |
| @@ -326,26 +334,6 @@ scoped_ptr<FileStreamWriter> FileSystemContext::CreateFileStreamWriter( |
| return backend->CreateFileStreamWriter(url, offset, this); |
| } |
| -void FileSystemContext::SetLocalFileChangeTracker( |
|
kinuko
2013/07/22 05:51:19
Can you separate this change when you upload a pat
nhiroki
2013/07/22 06:33:38
Reverted those setter/getter related changes.
|
| - scoped_ptr<sync_file_system::LocalFileChangeTracker> tracker) { |
| - DCHECK(!change_tracker_.get()); |
| - DCHECK(tracker.get()); |
| - change_tracker_ = tracker.Pass(); |
| - sandbox_backend_->AddFileUpdateObserver( |
| - kFileSystemTypeSyncable, |
| - change_tracker_.get(), |
| - task_runners_->file_task_runner()); |
| - sandbox_backend_->AddFileChangeObserver( |
| - kFileSystemTypeSyncable, |
| - change_tracker_.get(), |
| - task_runners_->file_task_runner()); |
| -} |
| - |
| -void FileSystemContext::set_sync_context( |
| - sync_file_system::LocalFileSyncContext* sync_context) { |
| - sync_context_ = sync_context; |
| -} |
| - |
| FileSystemURL FileSystemContext::CrackURL(const GURL& url) const { |
| return CrackFileSystemURL(FileSystemURL(url)); |
| } |
| @@ -364,8 +352,6 @@ void FileSystemContext::EnableTemporaryFileSystemInIncognito() { |
| #endif |
| FileSystemContext::~FileSystemContext() { |
| - task_runners_->file_task_runner()->DeleteSoon( |
| - FROM_HERE, change_tracker_.release()); |
| } |
| void FileSystemContext::DeleteOnCorrectThread() const { |