summaryrefslogtreecommitdiffstats
path: root/webkit/browser
diff options
context:
space:
mode:
Diffstat (limited to 'webkit/browser')
-rw-r--r--webkit/browser/fileapi/file_system_context.cc12
-rw-r--r--webkit/browser/fileapi/file_system_context.h6
-rw-r--r--webkit/browser/fileapi/file_system_dir_url_request_job_unittest.cc10
-rw-r--r--webkit/browser/fileapi/file_system_file_stream_reader_unittest.cc11
-rw-r--r--webkit/browser/fileapi/file_system_quota_client_unittest.cc4
-rw-r--r--webkit/browser/fileapi/file_system_url_request_job_unittest.cc15
-rw-r--r--webkit/browser/fileapi/local_file_system_operation_unittest.cc5
-rw-r--r--webkit/browser/fileapi/sandbox_file_system_test_helper.cc6
-rw-r--r--webkit/browser/fileapi/sandbox_file_system_test_helper.h3
9 files changed, 44 insertions, 28 deletions
diff --git a/webkit/browser/fileapi/file_system_context.cc b/webkit/browser/fileapi/file_system_context.cc
index e1e99ed..f21824b 100644
--- a/webkit/browser/fileapi/file_system_context.cc
+++ b/webkit/browser/fileapi/file_system_context.cc
@@ -188,6 +188,10 @@ FileSystemMountPointProvider* FileSystemContext::GetMountPointProvider(
return NULL;
}
+bool FileSystemContext::IsSandboxFileSystem(FileSystemType type) const {
+ return GetQuotaUtil(type) != NULL;
+}
+
const UpdateObserverList* FileSystemContext::GetUpdateObservers(
FileSystemType type) const {
// Currently update observer is only available in SandboxMountPointProvider
@@ -195,8 +199,8 @@ const UpdateObserverList* FileSystemContext::GetUpdateObservers(
// TODO(kinuko): Probably GetUpdateObservers() virtual method should be
// added to FileSystemMountPointProvider interface and be called like
// other GetFoo() methods do.
- if (SandboxMountPointProvider::IsSandboxType(type))
- return sandbox_provider()->GetUpdateObservers(type);
+ if (sandbox_provider_->CanHandleType(type))
+ return sandbox_provider_->GetUpdateObservers(type);
if (type != kFileSystemTypeTest)
return NULL;
FileSystemMountPointProvider* mount_point_provider =
@@ -208,8 +212,8 @@ const UpdateObserverList* FileSystemContext::GetUpdateObservers(
const AccessObserverList* FileSystemContext::GetAccessObservers(
FileSystemType type) const {
// Currently access observer is only available in SandboxMountPointProvider.
- if (SandboxMountPointProvider::IsSandboxType(type))
- return sandbox_provider()->GetAccessObservers(type);
+ if (sandbox_provider_->CanHandleType(type))
+ return sandbox_provider_->GetAccessObservers(type);
return NULL;
}
diff --git a/webkit/browser/fileapi/file_system_context.h b/webkit/browser/fileapi/file_system_context.h
index ce8648d..50b3753 100644
--- a/webkit/browser/fileapi/file_system_context.h
+++ b/webkit/browser/fileapi/file_system_context.h
@@ -129,6 +129,12 @@ class WEBKIT_STORAGE_BROWSER_EXPORT FileSystemContext
FileSystemMountPointProvider* GetMountPointProvider(
FileSystemType type) const;
+ // Returns true for sandboxed filesystems. Currently this does
+ // the same as GetQuotaUtil(type) != NULL. (In an assumption that
+ // all sandboxed filesystems must cooperate with QuotaManager so that
+ // they can get deleted)
+ bool IsSandboxFileSystem(FileSystemType type) const;
+
// Returns observers for the given filesystem type.
const UpdateObserverList* GetUpdateObservers(FileSystemType type) const;
const AccessObserverList* GetAccessObservers(FileSystemType type) const;
diff --git a/webkit/browser/fileapi/file_system_dir_url_request_job_unittest.cc b/webkit/browser/fileapi/file_system_dir_url_request_job_unittest.cc
index b86b907..a0c08bf 100644
--- a/webkit/browser/fileapi/file_system_dir_url_request_job_unittest.cc
+++ b/webkit/browser/fileapi/file_system_dir_url_request_job_unittest.cc
@@ -27,7 +27,6 @@
#include "webkit/browser/fileapi/file_system_operation_context.h"
#include "webkit/browser/fileapi/file_system_url.h"
#include "webkit/browser/fileapi/mock_file_system_context.h"
-#include "webkit/browser/fileapi/sandbox_mount_point_provider.h"
#include "webkit/browser/quota/mock_special_storage_policy.h"
namespace fileapi {
@@ -53,7 +52,7 @@ class FileSystemDirURLRequestJobTest : public testing::Test {
file_system_context_ = CreateFileSystemContextForTesting(
NULL, temp_dir_.path());
- file_system_context_->sandbox_provider()->OpenFileSystem(
+ file_system_context_->OpenFileSystem(
GURL("http://remote/"), kFileSystemTypeTemporary,
OPEN_FILE_SYSTEM_CREATE_IF_NONEXISTENT,
base::Bind(&FileSystemDirURLRequestJobTest::OnOpenFileSystem,
@@ -73,7 +72,9 @@ class FileSystemDirURLRequestJobTest : public testing::Test {
ClearUnusedJob();
}
- void OnOpenFileSystem(base::PlatformFileError result) {
+ void OnOpenFileSystem(base::PlatformFileError result,
+ const std::string& name,
+ const GURL& root_url) {
ASSERT_EQ(base::PLATFORM_FILE_OK, result);
}
@@ -198,8 +199,7 @@ class FileSystemDirURLRequestJobTest : public testing::Test {
}
FileSystemFileUtil* file_util() {
- return file_system_context_->sandbox_provider()->GetFileUtil(
- kFileSystemTypeTemporary);
+ return file_system_context_->GetFileUtil(kFileSystemTypeTemporary);
}
// Put the message loop at the top, so that it's the last thing deleted.
diff --git a/webkit/browser/fileapi/file_system_file_stream_reader_unittest.cc b/webkit/browser/fileapi/file_system_file_stream_reader_unittest.cc
index 31f91ae..5d97b9b 100644
--- a/webkit/browser/fileapi/file_system_file_stream_reader_unittest.cc
+++ b/webkit/browser/fileapi/file_system_file_stream_reader_unittest.cc
@@ -20,7 +20,6 @@
#include "webkit/browser/fileapi/file_system_file_util.h"
#include "webkit/browser/fileapi/file_system_operation_context.h"
#include "webkit/browser/fileapi/mock_file_system_context.h"
-#include "webkit/browser/fileapi/sandbox_mount_point_provider.h"
namespace fileapi {
@@ -70,7 +69,7 @@ class FileSystemFileStreamReaderTest : public testing::Test {
file_system_context_ = CreateFileSystemContextForTesting(
NULL, temp_dir_.path());
- file_system_context_->sandbox_provider()->OpenFileSystem(
+ file_system_context_->OpenFileSystem(
GURL(kURLOrigin), kFileSystemTypeTemporary,
OPEN_FILE_SYSTEM_CREATE_IF_NONEXISTENT,
base::Bind(&OnOpenFileSystem));
@@ -103,8 +102,8 @@ class FileSystemFileStreamReaderTest : public testing::Test {
const char* buf,
int buf_size,
base::Time* modification_time) {
- FileSystemFileUtil* file_util = file_system_context_->
- sandbox_provider()->GetFileUtil(kFileSystemTypeTemporary);
+ FileSystemFileUtil* file_util = file_system_context_->GetFileUtil(
+ kFileSystemTypeTemporary);
FileSystemURL url = GetFileSystemURL(file_name);
FileSystemOperationContext context(file_system_context_.get());
@@ -134,7 +133,9 @@ class FileSystemFileStreamReaderTest : public testing::Test {
}
private:
- static void OnOpenFileSystem(base::PlatformFileError result) {
+ static void OnOpenFileSystem(base::PlatformFileError result,
+ const std::string& name,
+ const GURL& root_url) {
ASSERT_EQ(base::PLATFORM_FILE_OK, result);
}
diff --git a/webkit/browser/fileapi/file_system_quota_client_unittest.cc b/webkit/browser/fileapi/file_system_quota_client_unittest.cc
index 01b8e6d..48e4d11 100644
--- a/webkit/browser/fileapi/file_system_quota_client_unittest.cc
+++ b/webkit/browser/fileapi/file_system_quota_client_unittest.cc
@@ -17,7 +17,6 @@
#include "webkit/browser/fileapi/file_system_usage_cache.h"
#include "webkit/browser/fileapi/mock_file_system_context.h"
#include "webkit/browser/fileapi/obfuscated_file_util.h"
-#include "webkit/browser/fileapi/sandbox_mount_point_provider.h"
#include "webkit/common/fileapi/file_system_types.h"
#include "webkit/common/fileapi/file_system_util.h"
#include "webkit/common/quota/quota_types.h"
@@ -147,8 +146,7 @@ class FileSystemQuotaClientTest : public testing::Test {
return false;
FileSystemType type = QuotaStorageTypeToFileSystemType(storage_type);
- FileSystemFileUtil* file_util = file_system_context_->
- sandbox_provider()->GetFileUtil(type);
+ FileSystemFileUtil* file_util = file_system_context_->GetFileUtil(type);
FileSystemURL url = file_system_context_->CreateCrackedFileSystemURL(
GURL(origin_url), type, file_path);
diff --git a/webkit/browser/fileapi/file_system_url_request_job_unittest.cc b/webkit/browser/fileapi/file_system_url_request_job_unittest.cc
index 09ea1ac..7c4e6da 100644
--- a/webkit/browser/fileapi/file_system_url_request_job_unittest.cc
+++ b/webkit/browser/fileapi/file_system_url_request_job_unittest.cc
@@ -32,7 +32,6 @@
#include "webkit/browser/fileapi/file_system_file_util.h"
#include "webkit/browser/fileapi/file_system_operation_context.h"
#include "webkit/browser/fileapi/mock_file_system_context.h"
-#include "webkit/browser/fileapi/sandbox_mount_point_provider.h"
namespace fileapi {
namespace {
@@ -62,7 +61,7 @@ class FileSystemURLRequestJobTest : public testing::Test {
file_system_context_ =
CreateFileSystemContextForTesting(NULL, temp_dir_.path());
- file_system_context_->sandbox_provider()->OpenFileSystem(
+ file_system_context_->OpenFileSystem(
GURL("http://remote/"), kFileSystemTypeTemporary,
OPEN_FILE_SYSTEM_CREATE_IF_NONEXISTENT,
base::Bind(&FileSystemURLRequestJobTest::OnOpenFileSystem,
@@ -84,7 +83,9 @@ class FileSystemURLRequestJobTest : public testing::Test {
base::MessageLoop::current()->RunUntilIdle();
}
- void OnOpenFileSystem(base::PlatformFileError result) {
+ void OnOpenFileSystem(base::PlatformFileError result,
+ const std::string& name,
+ const GURL& root_url) {
ASSERT_EQ(base::PLATFORM_FILE_OK, result);
}
@@ -123,8 +124,8 @@ class FileSystemURLRequestJobTest : public testing::Test {
}
void CreateDirectory(const base::StringPiece& dir_name) {
- FileSystemFileUtil* file_util = file_system_context_->
- sandbox_provider()->GetFileUtil(kFileSystemTypeTemporary);
+ FileSystemFileUtil* file_util = file_system_context_->GetFileUtil(
+ kFileSystemTypeTemporary);
FileSystemURL url = file_system_context_->CreateCrackedFileSystemURL(
GURL("http://remote"),
kFileSystemTypeTemporary,
@@ -142,8 +143,8 @@ class FileSystemURLRequestJobTest : public testing::Test {
void WriteFile(const base::StringPiece& file_name,
const char* buf, int buf_size) {
- FileSystemFileUtil* file_util = file_system_context_->
- sandbox_provider()->GetFileUtil(kFileSystemTypeTemporary);
+ FileSystemFileUtil* file_util = file_system_context_->GetFileUtil(
+ kFileSystemTypeTemporary);
FileSystemURL url = file_system_context_->CreateCrackedFileSystemURL(
GURL("http://remote"),
kFileSystemTypeTemporary,
diff --git a/webkit/browser/fileapi/local_file_system_operation_unittest.cc b/webkit/browser/fileapi/local_file_system_operation_unittest.cc
index e867ba9..58c825d 100644
--- a/webkit/browser/fileapi/local_file_system_operation_unittest.cc
+++ b/webkit/browser/fileapi/local_file_system_operation_unittest.cc
@@ -68,10 +68,7 @@ class LocalFileSystemOperationTest
quota_manager_proxy_ = new quota::MockQuotaManagerProxy(
quota_manager(), base::MessageLoopProxy::current().get());
sandbox_file_system_.SetUp(base_dir, quota_manager_proxy_.get());
- sandbox_file_system_.file_system_context()->sandbox_provider()->
- AddFileChangeObserver(sandbox_file_system_.type(),
- &change_observer_,
- NULL);
+ sandbox_file_system_.AddFileChangeObserver(&change_observer_);
}
virtual void TearDown() OVERRIDE {
diff --git a/webkit/browser/fileapi/sandbox_file_system_test_helper.cc b/webkit/browser/fileapi/sandbox_file_system_test_helper.cc
index 85e909c..f8a84ff 100644
--- a/webkit/browser/fileapi/sandbox_file_system_test_helper.cc
+++ b/webkit/browser/fileapi/sandbox_file_system_test_helper.cc
@@ -123,6 +123,12 @@ SandboxFileSystemTestHelper::NewOperationContext() {
return context;
}
+void SandboxFileSystemTestHelper::AddFileChangeObserver(
+ FileChangeObserver* observer) {
+ file_system_context_->sandbox_provider()->
+ AddFileChangeObserver(type_, observer, NULL);
+}
+
FileSystemUsageCache* SandboxFileSystemTestHelper::usage_cache() {
return file_system_context()->sandbox_provider()->usage_cache();
}
diff --git a/webkit/browser/fileapi/sandbox_file_system_test_helper.h b/webkit/browser/fileapi/sandbox_file_system_test_helper.h
index aa699d5..140d2c3 100644
--- a/webkit/browser/fileapi/sandbox_file_system_test_helper.h
+++ b/webkit/browser/fileapi/sandbox_file_system_test_helper.h
@@ -12,6 +12,7 @@
#include "googleurl/src/gurl.h"
#include "webkit/browser/fileapi/file_system_url.h"
#include "webkit/browser/fileapi/file_system_usage_cache.h"
+#include "webkit/browser/fileapi/task_runner_bound_observer_list.h"
#include "webkit/common/fileapi/file_system_types.h"
#include "webkit/common/fileapi/file_system_util.h"
#include "webkit/common/quota/quota_types.h"
@@ -74,6 +75,8 @@ class SandboxFileSystemTestHelper {
FileSystemOperationRunner* operation_runner();
FileSystemOperationContext* NewOperationContext();
+ void AddFileChangeObserver(FileChangeObserver* observer);
+
FileSystemContext* file_system_context() const {
return file_system_context_.get();
}