Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(167)

Side by Side Diff: webkit/fileapi/file_system_mount_point_provider.h

Issue 9004019: Cleanup: Removing FileSystemPathManager (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebased Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef WEBKIT_FILEAPI_FILE_SYSTEM_MOUNT_POINT_PROVIDER_H_ 5 #ifndef WEBKIT_FILEAPI_FILE_SYSTEM_MOUNT_POINT_PROVIDER_H_
6 #define WEBKIT_FILEAPI_FILE_SYSTEM_MOUNT_POINT_PROVIDER_H_ 6 #define WEBKIT_FILEAPI_FILE_SYSTEM_MOUNT_POINT_PROVIDER_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/callback_forward.h"
11 #include "base/file_path.h" 12 #include "base/file_path.h"
12 #include "googleurl/src/gurl.h"
13 #include "webkit/fileapi/file_system_path_manager.h"
14 #include "webkit/fileapi/file_system_types.h" 13 #include "webkit/fileapi/file_system_types.h"
15 14
15 class GURL;
16
16 namespace fileapi { 17 namespace fileapi {
17 18
19 class FileSystemFileUtil;
20
18 // An interface to provide mount-point-specific path-related utilities 21 // An interface to provide mount-point-specific path-related utilities
19 // and specialized FileSystemFileUtil instance. 22 // and specialized FileSystemFileUtil instance.
20 class FileSystemMountPointProvider { 23 class FileSystemMountPointProvider {
21 public: 24 public:
25 // Callback for GetFileSystemRootPath.
26 // If the request is accepted and the root filesystem for the origin exists
27 // the callback is called with success=true and valid root_path and name.
28 // If the request is accepted, |create| is specified for
29 // GetFileSystemRootPath, and the root directory does not exist, it creates
30 // a new one and calls back with success=true if the creation has succeeded.
31 typedef base::Callback<void(bool /* success */,
32 const FilePath& /* root_path */,
33 const std::string& /* name */)>
34 GetRootPathCallback;
22 virtual ~FileSystemMountPointProvider() {} 35 virtual ~FileSystemMountPointProvider() {}
23 36
24 // Checks if access to |virtual_path| is allowed from |origin_url|. 37 // Checks if access to |virtual_path| is allowed from |origin_url|.
25 virtual bool IsAccessAllowed(const GURL& origin_url, 38 virtual bool IsAccessAllowed(const GURL& origin_url,
26 FileSystemType type, 39 FileSystemType type,
27 const FilePath& virtual_path) = 0; 40 const FilePath& virtual_path) = 0;
28 41
29 // Retrieves the root path for the given |origin_url| and |type|, and 42 // Retrieves the root path for the given |origin_url| and |type|, and
30 // calls the given |callback| with the root path and name. 43 // calls the given |callback| with the root path and name.
31 // If |create| is true this also creates the directory if it doesn't exist. 44 // If |create| is true this also creates the directory if it doesn't exist.
32 virtual void ValidateFileSystemRootAndGetURL( 45 virtual void ValidateFileSystemRootAndGetURL(
33 const GURL& origin_url, 46 const GURL& origin_url,
34 FileSystemType type, 47 FileSystemType type,
35 bool create, 48 bool create,
36 const FileSystemPathManager::GetRootPathCallback& callback) = 0; 49 const GetRootPathCallback& callback) = 0;
37 50
38 // Like GetFileSystemRootPath, but synchronous, and can be called only while 51 // Like GetFileSystemRootPath, but synchronous, and can be called only while
39 // running on the file thread. 52 // running on the file thread.
40 virtual FilePath ValidateFileSystemRootAndGetPathOnFileThread( 53 virtual FilePath ValidateFileSystemRootAndGetPathOnFileThread(
41 const GURL& origin_url, 54 const GURL& origin_url,
42 FileSystemType type, 55 FileSystemType type,
43 const FilePath& virtual_path, 56 const FilePath& virtual_path,
44 bool create) = 0; 57 bool create) = 0;
45 58
46 // Checks if a given |name| contains any restricted names/chars in it. 59 // Checks if a given |name| contains any restricted names/chars in it.
(...skipping 29 matching lines...) Expand all
76 virtual void RemoveMountPoint(FilePath mount_point) = 0; 89 virtual void RemoveMountPoint(FilePath mount_point) = 0;
77 // Gets virtual path by known filesystem path. Returns false when filesystem 90 // Gets virtual path by known filesystem path. Returns false when filesystem
78 // path is not exposed by this provider. 91 // path is not exposed by this provider.
79 virtual bool GetVirtualPath(const FilePath& filesystem_path, 92 virtual bool GetVirtualPath(const FilePath& filesystem_path,
80 FilePath* virtual_path) = 0; 93 FilePath* virtual_path) = 0;
81 }; 94 };
82 95
83 } // namespace fileapi 96 } // namespace fileapi
84 97
85 #endif // WEBKIT_FILEAPI_FILE_SYSTEM_MOUNT_POINT_PROVIDER_H_ 98 #endif // WEBKIT_FILEAPI_FILE_SYSTEM_MOUNT_POINT_PROVIDER_H_
OLDNEW
« no previous file with comments | « webkit/fileapi/file_system_file_util_unittest.cc ('k') | webkit/fileapi/file_system_mount_point_provider_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698