| Index: webkit/browser/fileapi/sandbox_mount_point_provider.cc
|
| diff --git a/webkit/browser/fileapi/sandbox_mount_point_provider.cc b/webkit/browser/fileapi/sandbox_mount_point_provider.cc
|
| index 89d053845039bd2321482e7cdec055566f752477..46e50b9072a29331e3fb80c8a1fcbbc91fd250b2 100644
|
| --- a/webkit/browser/fileapi/sandbox_mount_point_provider.cc
|
| +++ b/webkit/browser/fileapi/sandbox_mount_point_provider.cc
|
| @@ -8,12 +8,10 @@
|
| #include "base/command_line.h"
|
| #include "base/file_util.h"
|
| #include "base/logging.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| #include "base/metrics/histogram.h"
|
| #include "base/stl_util.h"
|
| #include "base/task_runner_util.h"
|
| #include "net/base/net_util.h"
|
| -#include "url/gurl.h"
|
| #include "webkit/browser/fileapi/async_file_util_adapter.h"
|
| #include "webkit/browser/fileapi/copy_or_move_file_validator.h"
|
| #include "webkit/browser/fileapi/file_system_context.h"
|
| @@ -26,13 +24,10 @@
|
| #include "webkit/browser/fileapi/obfuscated_file_util.h"
|
| #include "webkit/browser/fileapi/sandbox_file_stream_writer.h"
|
| #include "webkit/browser/fileapi/sandbox_quota_observer.h"
|
| -#include "webkit/browser/fileapi/syncable/syncable_file_system_operation.h"
|
| #include "webkit/browser/quota/quota_manager.h"
|
| #include "webkit/common/fileapi/file_system_types.h"
|
| #include "webkit/common/fileapi/file_system_util.h"
|
|
|
| -using quota::QuotaManagerProxy;
|
| -
|
| namespace fileapi {
|
|
|
| namespace {
|
| @@ -61,7 +56,6 @@ enum FileSystemError {
|
|
|
| const char kTemporaryOriginsCountLabel[] = "FileSystem.TemporaryOriginsCount";
|
| const char kPersistentOriginsCountLabel[] = "FileSystem.PersistentOriginsCount";
|
| -const char kSyncableOriginsCountLabel[] = "FileSystem.SyncableOriginsCount";
|
|
|
| // Restricted names.
|
| // http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#naming-restrictions
|
| @@ -143,23 +137,24 @@ SandboxMountPointProvider::SandboxMountPointProvider(
|
| profile_path_(profile_path),
|
| file_system_options_(file_system_options),
|
| enable_temporary_file_system_in_incognito_(false),
|
| - sandbox_file_util_(
|
| - new AsyncFileUtilAdapter(
|
| - new ObfuscatedFileUtil(
|
| - special_storage_policy,
|
| - profile_path.Append(kFileSystemDirectory),
|
| - file_task_runner))),
|
| file_system_usage_cache_(new FileSystemUsageCache(file_task_runner)),
|
| - quota_observer_(new SandboxQuotaObserver(
|
| - quota_manager_proxy,
|
| - file_task_runner,
|
| - sandbox_sync_file_util(),
|
| - file_system_usage_cache_.get())),
|
| enable_usage_tracking_(
|
| !CommandLine::ForCurrentProcess()->HasSwitch(
|
| kDisableUsageTracking)),
|
| special_storage_policy_(special_storage_policy),
|
| weak_factory_(this) {
|
| + sandbox_file_util_.reset(new AsyncFileUtilAdapter(
|
| + new ObfuscatedFileUtil(
|
| + special_storage_policy,
|
| + profile_path.Append(kFileSystemDirectory),
|
| + file_task_runner)));
|
| +
|
| + quota_observer_.reset(new SandboxQuotaObserver(
|
| + quota_manager_proxy,
|
| + file_task_runner,
|
| + sandbox_sync_file_util(),
|
| + file_system_usage_cache_.get()));
|
| +
|
| // Set quota observers.
|
| UpdateObserverList::Source update_observers_src;
|
| AccessObserverList::Source access_observers_src;
|
| @@ -172,7 +167,6 @@ SandboxMountPointProvider::SandboxMountPointProvider(
|
|
|
| update_observers_ = UpdateObserverList(update_observers_src);
|
| access_observers_ = AccessObserverList(access_observers_src);
|
| - syncable_update_observers_ = UpdateObserverList(update_observers_src);
|
|
|
| if (!file_task_runner_->RunsTasksOnCurrentThread()) {
|
| // Post prepopulate task only if it's not already running on
|
| @@ -201,9 +195,14 @@ SandboxMountPointProvider::~SandboxMountPointProvider() {
|
|
|
| bool SandboxMountPointProvider::CanHandleType(FileSystemType type) const {
|
| return type == kFileSystemTypeTemporary ||
|
| - type == kFileSystemTypePersistent ||
|
| - type == kFileSystemTypeSyncable ||
|
| - type == kFileSystemTypeSyncableForInternalSync;
|
| + type == kFileSystemTypePersistent;
|
| +}
|
| +
|
| +GURL SandboxMountPointProvider::GetRootURI(const GURL& origin_url,
|
| + FileSystemType type) const {
|
| + if (!CanHandleType(type))
|
| + return GURL();
|
| + return GetFileSystemRootURI(origin_url, type);
|
| }
|
|
|
| void SandboxMountPointProvider::OpenFileSystem(
|
| @@ -283,16 +282,6 @@ FileSystemOperation* SandboxMountPointProvider::CreateFileSystemOperation(
|
|
|
| scoped_ptr<FileSystemOperationContext> operation_context(
|
| new FileSystemOperationContext(context));
|
| -
|
| - // Copy the observer lists (assuming we only have small number of observers).
|
| - if (url.type() == kFileSystemTypeSyncable) {
|
| - operation_context->set_update_observers(syncable_update_observers_);
|
| - operation_context->set_change_observers(syncable_change_observers_);
|
| - return new sync_file_system::SyncableFileSystemOperation(
|
| - url, context, operation_context.Pass());
|
| - }
|
| -
|
| - // For regular sandboxed types.
|
| operation_context->set_update_observers(update_observers_);
|
| operation_context->set_change_observers(change_observers_);
|
|
|
| @@ -334,6 +323,11 @@ FileSystemQuotaUtil* SandboxMountPointProvider::GetQuotaUtil() {
|
| return this;
|
| }
|
|
|
| +const UpdateObserverList*
|
| +SandboxMountPointProvider::GetUpdateObservers(FileSystemType type) const {
|
| + return &update_observers_;
|
| +}
|
| +
|
| SandboxMountPointProvider::OriginEnumerator*
|
| SandboxMountPointProvider::CreateOriginEnumerator() {
|
| return new ObfuscatedOriginEnumerator(sandbox_sync_file_util());
|
| @@ -353,7 +347,7 @@ base::FilePath SandboxMountPointProvider::GetBaseDirectoryForOriginAndType(
|
| base::PlatformFileError
|
| SandboxMountPointProvider::DeleteOriginDataOnFileThread(
|
| FileSystemContext* file_system_context,
|
| - QuotaManagerProxy* proxy,
|
| + quota::QuotaManagerProxy* proxy,
|
| const GURL& origin_url,
|
| fileapi::FileSystemType type) {
|
|
|
| @@ -393,16 +387,14 @@ void SandboxMountPointProvider::GetOriginsForTypeOnFileThread(
|
| case kFileSystemTypePersistent:
|
| UMA_HISTOGRAM_COUNTS(kPersistentOriginsCountLabel, origins->size());
|
| break;
|
| - case kFileSystemTypeSyncable:
|
| - UMA_HISTOGRAM_COUNTS(kSyncableOriginsCountLabel, origins->size());
|
| - break;
|
| default:
|
| break;
|
| }
|
| }
|
|
|
| void SandboxMountPointProvider::GetOriginsForHostOnFileThread(
|
| - fileapi::FileSystemType type, const std::string& host,
|
| + fileapi::FileSystemType type,
|
| + const std::string& host,
|
| std::set<GURL>* origins) {
|
| DCHECK(CanHandleType(type));
|
| DCHECK(origins);
|
| @@ -516,14 +508,6 @@ void SandboxMountPointProvider::CollectOpenFileSystemMetrics(
|
| #undef REPORT
|
| }
|
|
|
| -const UpdateObserverList* SandboxMountPointProvider::GetUpdateObservers(
|
| - FileSystemType type) const {
|
| - DCHECK(CanHandleType(type));
|
| - if (type == kFileSystemTypeSyncable)
|
| - return &syncable_update_observers_;
|
| - return &update_observers_;
|
| -}
|
| -
|
| const AccessObserverList* SandboxMountPointProvider::GetAccessObservers(
|
| FileSystemType type) const {
|
| DCHECK(CanHandleType(type));
|
| @@ -536,8 +520,6 @@ void SandboxMountPointProvider::AddFileUpdateObserver(
|
| base::SequencedTaskRunner* task_runner) {
|
| DCHECK(CanHandleType(type));
|
| UpdateObserverList* list = &update_observers_;
|
| - if (type == kFileSystemTypeSyncable)
|
| - list = &syncable_update_observers_;
|
| UpdateObserverList::Source observer_source = list->source();
|
| observer_source.AddObserver(observer, task_runner);
|
| *list = UpdateObserverList(observer_source);
|
| @@ -548,8 +530,6 @@ void SandboxMountPointProvider::AddFileChangeObserver(
|
| FileChangeObserver* observer,
|
| base::SequencedTaskRunner* task_runner) {
|
| ChangeObserverList* list = &change_observers_;
|
| - if (type == kFileSystemTypeSyncable)
|
| - list = &syncable_change_observers_;
|
| ChangeObserverList::Source observer_source = list->source();
|
| observer_source.AddObserver(observer, task_runner);
|
| *list = ChangeObserverList(observer_source);
|
|
|