diff options
author | kinaba@chromium.org <kinaba@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-29 01:16:47 +0000 |
---|---|---|
committer | kinaba@chromium.org <kinaba@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-29 01:16:47 +0000 |
commit | 92411906a4da3454e552da6f85c0417551f32e45 (patch) | |
tree | c1677ffc2b3ff623ac54999f54dee209cc17ad53 /chrome/browser/chromeos/file_manager/fileapi_util.h | |
parent | bae99ae55cf3ab5ab60ba914d72476c28a536e51 (diff) | |
download | chromium_src-92411906a4da3454e552da6f85c0417551f32e45.zip chromium_src-92411906a4da3454e552da6f85c0417551f32e45.tar.gz chromium_src-92411906a4da3454e552da6f85c0417551f32e45.tar.bz2 |
Clarify and separate the concept of "Drive path" and "Filesystem relative path".
- RelativeFileSystemPath (also called VirtualPath) is the path appended
in the filesystem URL, after .../external/. So it looks like
"drive-xxx/root/foo/bar" or "Downloads-xxx/foo/bar".
Note that in the Drive case, it begins with the mount point name,
that differs from profile to profile.
- DrivePath is the path in the hierarchy we manage in drive::ResourceMetadata.
It is like "drive/root/foo/bar" and always begins with "drive".
Every path comes from drive::FileSystem is in DrivePath.
Every path that will be the part of FileSystem API must be in RelativeFileSystemPath.
We need proper conversion for the bridging codes.
BUG=337095
Review URL: https://codereview.chromium.org/147993003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247561 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos/file_manager/fileapi_util.h')
-rw-r--r-- | chrome/browser/chromeos/file_manager/fileapi_util.h | 36 |
1 files changed, 22 insertions, 14 deletions
diff --git a/chrome/browser/chromeos/file_manager/fileapi_util.h b/chrome/browser/chromeos/file_manager/fileapi_util.h index 703b14a..454c806 100644 --- a/chrome/browser/chromeos/file_manager/fileapi_util.h +++ b/chrome/browser/chromeos/file_manager/fileapi_util.h @@ -39,23 +39,31 @@ fileapi::FileSystemContext* GetFileSystemContextForRenderViewHost( Profile* profile, content::RenderViewHost* render_view_host); -// Converts |relative_path| (e.g., "drive/root" or "Downloads") into external -// filesystem URL (e.g., filesystem://id/external/drive/root). -GURL ConvertRelativeFilePathToFileSystemUrl(const base::FilePath& relative_path, - const std::string& extension_id); +// Converts DrivePath (e.g., "drive/root", which always starts with the fixed +// "drive" directory) to a RelativeFileSystemPathrelative (e.g., +// "drive-xxx/root/foo". which starts from the "mount point" in the FileSystem +// API that may be distinguished for each profile by the appended "xxx" part.) +base::FilePath ConvertDrivePathToRelativeFileSystemPath( + Profile* profile, + const base::FilePath& drive_path); + +// Converts DrivePath to FileSystem URL. +// E.g., "drive/root" to filesystem://id/external/drive-xxx/root. +GURL ConvertDrivePathToFileSystemUrl(Profile* profile, + const base::FilePath& drive_path, + const std::string& extension_id); -// Converts |absolute_path| (e.g., "/special/drive/root" or -// "/home/chronos/user/Downloads") into external filesystem URL. Returns false +// Converts AbsolutePath (e.g., "/special/drive-xxx/root" or +// "/home/chronos/u-xxx/Downloads") into filesystem URL. Returns false // if |absolute_path| is not managed by the external filesystem provider. -bool ConvertAbsoluteFilePathToFileSystemUrl( - Profile* profile, - const base::FilePath& absolute_path, - const std::string& extension_id, - GURL* url); +bool ConvertAbsoluteFilePathToFileSystemUrl(Profile* profile, + const base::FilePath& absolute_path, + const std::string& extension_id, + GURL* url); -// Converts |absolute_path| into |relative_path| within the external -// provider in File API. Returns false if |absolute_path| is not managed -// by the external filesystem provider. +// Converts AbsolutePath into RelativeFileSystemPath (e.g., +// "/special/drive-xxx/root/foo" => "drive-xxx/root/foo".) Returns false if +// |absolute_path| is not managed by the external filesystem provider. bool ConvertAbsoluteFilePathToRelativeFileSystemPath( Profile* profile, const std::string& extension_id, |