Index: webkit/fileapi/file_system_context.h |
diff --git a/webkit/fileapi/file_system_context.h b/webkit/fileapi/file_system_context.h |
index 472bf8aad216f8ba1fa1034e5b97791e9eb375df..46b73b18ab38514b8d6265e07fc54665ab9287d6 100644 |
--- a/webkit/fileapi/file_system_context.h |
+++ b/webkit/fileapi/file_system_context.h |
@@ -5,9 +5,11 @@ |
#ifndef WEBKIT_FILEAPI_FILE_SYSTEM_CONTEXT_H_ |
#define WEBKIT_FILEAPI_FILE_SYSTEM_CONTEXT_H_ |
+#include <map> |
#include <string> |
#include "base/callback.h" |
+#include "base/file_path.h" |
#include "base/memory/ref_counted.h" |
#include "base/memory/scoped_ptr.h" |
#include "base/platform_file.h" |
@@ -15,7 +17,6 @@ |
#include "webkit/fileapi/file_system_types.h" |
#include "webkit/quota/special_storage_policy.h" |
-class FilePath; |
class GURL; |
namespace base { |
@@ -135,6 +136,11 @@ class FileSystemContext |
const GURL& url, |
int64 offset); |
+ // Register a filesystem provider. The ownership of |provider| is |
+ // transferred to this instance. |
+ void RegisterMountPointProvider(FileSystemType type, |
+ FileSystemMountPointProvider* provider); |
+ |
private: |
friend struct DefaultContextDeleter; |
friend class base::DeleteHelper<FileSystemContext>; |
@@ -147,11 +153,14 @@ class FileSystemContext |
scoped_refptr<quota::QuotaManagerProxy> quota_manager_proxy_; |
- // Mount point providers. |
+ // Regular mount point providers. |
scoped_ptr<SandboxMountPointProvider> sandbox_provider_; |
scoped_ptr<IsolatedMountPointProvider> isolated_provider_; |
scoped_ptr<ExternalFileSystemMountPointProvider> external_provider_; |
+ // Registered mount point providers. |
+ std::map<FileSystemType, FileSystemMountPointProvider*> provider_map_; |
+ |
DISALLOW_IMPLICIT_CONSTRUCTORS(FileSystemContext); |
}; |