Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CHROME_BROWSER_CHROMEOS_DRIVE_FILE_SYSTEM_INTERFACE_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_DRIVE_FILE_SYSTEM_INTERFACE_H_ |
| 6 #define CHROME_BROWSER_CHROMEOS_DRIVE_FILE_SYSTEM_INTERFACE_H_ | 6 #define CHROME_BROWSER_CHROMEOS_DRIVE_FILE_SYSTEM_INTERFACE_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 91 scoped_ptr<std::vector<SearchResultInfo> > result_paths)> SearchCallback; | 91 scoped_ptr<std::vector<SearchResultInfo> > result_paths)> SearchCallback; |
| 92 | 92 |
| 93 // Callback for SearchMetadata(). On success, |error| is FILE_ERROR_OK, and | 93 // Callback for SearchMetadata(). On success, |error| is FILE_ERROR_OK, and |
| 94 // |result| contains the search result. | 94 // |result| contains the search result. |
| 95 typedef base::Callback<void( | 95 typedef base::Callback<void( |
| 96 FileError error, | 96 FileError error, |
| 97 scoped_ptr<MetadataSearchResultVector> result)> SearchMetadataCallback; | 97 scoped_ptr<MetadataSearchResultVector> result)> SearchMetadataCallback; |
| 98 | 98 |
| 99 // Used to open files from the file system. |file_path| is the path on the local | 99 // Used to open files from the file system. |file_path| is the path on the local |
| 100 // file system for the opened file. | 100 // file system for the opened file. |
| 101 // If |on_close_callback| is not null, it must be called when the | |
| 102 // modification to the cache is done. Otherwise, Drive file system does not | |
| 103 // pick up the file for uploading. | |
| 104 // |on_close_callback| must not be called more than once. | |
| 101 typedef base::Callback<void(FileError error, | 105 typedef base::Callback<void(FileError error, |
| 102 const base::FilePath& file_path)> OpenFileCallback; | 106 const base::FilePath& file_path, |
| 107 const base::Closure& on_close_callback)> | |
|
hashimoto
2013/07/24 03:43:57
nit: Why is this callback called "on close callbac
hidehiko
2013/07/24 04:49:45
Done.
| |
| 108 OpenFileCallback; | |
| 103 | 109 |
| 104 // Used to get available space for the account from Drive. | 110 // Used to get available space for the account from Drive. |
| 105 typedef base::Callback<void(FileError error, | 111 typedef base::Callback<void(FileError error, |
| 106 int64 bytes_total, | 112 int64 bytes_total, |
| 107 int64 bytes_used)> GetAvailableSpaceCallback; | 113 int64 bytes_used)> GetAvailableSpaceCallback; |
| 108 | 114 |
| 109 // Used to get filesystem metadata. | 115 // Used to get filesystem metadata. |
| 110 typedef base::Callback<void(const FileSystemMetadata&)> | 116 typedef base::Callback<void(const FileSystemMetadata&)> |
| 111 GetFilesystemMetadataCallback; | 117 GetFilesystemMetadataCallback; |
| 112 | 118 |
| 119 // Used to mark cached files mounted. | |
| 120 typedef base::Callback<void(FileError error, | |
| 121 const base::FilePath& file_path)> | |
| 122 MarkMountedCallback; | |
| 123 | |
| 113 // The mode of opening a file. | 124 // The mode of opening a file. |
| 114 enum OpenMode { | 125 enum OpenMode { |
| 115 // Open the file if exists. If not, failed. | 126 // Open the file if exists. If not, failed. |
| 116 OPEN_FILE, | 127 OPEN_FILE, |
| 117 | 128 |
| 118 // Create a new file if not exists, and then open it. If exists, failed. | 129 // Create a new file if not exists, and then open it. If exists, failed. |
| 119 CREATE_FILE, | 130 CREATE_FILE, |
| 120 | 131 |
| 121 // Open the file if exists. If not, create a new file and then open it. | 132 // Open the file if exists. If not, create a new file and then open it. |
| 122 OPEN_OR_CREATE_FILE, | 133 OPEN_OR_CREATE_FILE, |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 186 virtual void TransferFileFromLocalToRemote( | 197 virtual void TransferFileFromLocalToRemote( |
| 187 const base::FilePath& local_src_file_path, | 198 const base::FilePath& local_src_file_path, |
| 188 const base::FilePath& remote_dest_file_path, | 199 const base::FilePath& remote_dest_file_path, |
| 189 const FileOperationCallback& callback) = 0; | 200 const FileOperationCallback& callback) = 0; |
| 190 | 201 |
| 191 // Retrieves a file at the virtual path |file_path| on the Drive file system | 202 // Retrieves a file at the virtual path |file_path| on the Drive file system |
| 192 // onto the cache, and mark it dirty. The local path to the cache file is | 203 // onto the cache, and mark it dirty. The local path to the cache file is |
| 193 // returned to |callback|. After opening the file, both read and write | 204 // returned to |callback|. After opening the file, both read and write |
| 194 // on the file can be done with normal local file operations. | 205 // on the file can be done with normal local file operations. |
| 195 // | 206 // |
| 196 // |CloseFile| must be called when the modification to the cache is done. | |
| 197 // Otherwise, Drive file system does not pick up the file for uploading. | |
| 198 // | |
| 199 // |callback| must not be null. | 207 // |callback| must not be null. |
| 200 virtual void OpenFile(const base::FilePath& file_path, | 208 virtual void OpenFile(const base::FilePath& file_path, |
| 201 OpenMode open_mode, | 209 OpenMode open_mode, |
| 202 const OpenFileCallback& callback) = 0; | 210 const OpenFileCallback& callback) = 0; |
| 203 | 211 |
| 204 // Closes a file at the virtual path |file_path| on the Drive file system, | |
| 205 // which is opened via OpenFile(). It commits the dirty flag on the cache. | |
| 206 // | |
| 207 // |callback| must not be null. | |
| 208 virtual void CloseFile(const base::FilePath& file_path, | |
| 209 const FileOperationCallback& callback) = 0; | |
| 210 | |
| 211 // Copies |src_file_path| to |dest_file_path| on the file system. | 212 // Copies |src_file_path| to |dest_file_path| on the file system. |
| 212 // |src_file_path| can be a hosted document (see limitations below). | 213 // |src_file_path| can be a hosted document (see limitations below). |
| 213 // |dest_file_path| is expected to be of the same type of |src_file_path| | 214 // |dest_file_path| is expected to be of the same type of |src_file_path| |
| 214 // (i.e. if |src_file_path| is a file, |dest_file_path| will be created as | 215 // (i.e. if |src_file_path| is a file, |dest_file_path| will be created as |
| 215 // a file). | 216 // a file). |
| 216 // | 217 // |
| 217 // This method also has the following assumptions/limitations that may be | 218 // This method also has the following assumptions/limitations that may be |
| 218 // relaxed or addressed later: | 219 // relaxed or addressed later: |
| 219 // - |src_file_path| cannot be a regular file (i.e. non-hosted document) | 220 // - |src_file_path| cannot be a regular file (i.e. non-hosted document) |
| 220 // or a directory. | 221 // or a directory. |
| (...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 383 | 384 |
| 384 // Returns miscellaneous metadata of the file system like the largest | 385 // Returns miscellaneous metadata of the file system like the largest |
| 385 // timestamp. Used in chrome:drive-internals. |callback| must not be null. | 386 // timestamp. Used in chrome:drive-internals. |callback| must not be null. |
| 386 virtual void GetMetadata( | 387 virtual void GetMetadata( |
| 387 const GetFilesystemMetadataCallback& callback) = 0; | 388 const GetFilesystemMetadataCallback& callback) = 0; |
| 388 | 389 |
| 389 // Marks the cached file as mounted, and runs |callback| upon completion. | 390 // Marks the cached file as mounted, and runs |callback| upon completion. |
| 390 // If succeeded, the cached file path will be passed to the |callback|. | 391 // If succeeded, the cached file path will be passed to the |callback|. |
| 391 // |callback| must not be null. | 392 // |callback| must not be null. |
| 392 virtual void MarkCacheFileAsMounted(const base::FilePath& drive_file_path, | 393 virtual void MarkCacheFileAsMounted(const base::FilePath& drive_file_path, |
| 393 const OpenFileCallback& callback) = 0; | 394 const MarkMountedCallback& callback) = 0; |
| 394 | 395 |
| 395 // Marks the cached file as unmounted, and runs |callback| upon completion. | 396 // Marks the cached file as unmounted, and runs |callback| upon completion. |
| 396 // Note that this method expects that the |cached_file_path| is the path | 397 // Note that this method expects that the |cached_file_path| is the path |
| 397 // returned by MarkCacheFileAsMounted(). | 398 // returned by MarkCacheFileAsMounted(). |
| 398 // |callback| must not be null. | 399 // |callback| must not be null. |
| 399 virtual void MarkCacheFileAsUnmounted( | 400 virtual void MarkCacheFileAsUnmounted( |
| 400 const base::FilePath& cache_file_path, | 401 const base::FilePath& cache_file_path, |
| 401 const FileOperationCallback& callback) = 0; | 402 const FileOperationCallback& callback) = 0; |
| 402 | 403 |
| 403 // Gets the cache entry for file corresponding to |resource_id| and |md5| | 404 // Gets the cache entry for file corresponding to |resource_id| and |md5| |
| 404 // and runs |callback| with true and the found entry if the entry exists | 405 // and runs |callback| with true and the found entry if the entry exists |
| 405 // in the cache map. Otherwise, runs |callback| with false. | 406 // in the cache map. Otherwise, runs |callback| with false. |
| 406 // |md5| can be empty if only matching |resource_id| is desired. | 407 // |md5| can be empty if only matching |resource_id| is desired. |
| 407 // |callback| must not be null. | 408 // |callback| must not be null. |
| 408 virtual void GetCacheEntryByResourceId( | 409 virtual void GetCacheEntryByResourceId( |
| 409 const std::string& resource_id, | 410 const std::string& resource_id, |
| 410 const std::string& md5, | 411 const std::string& md5, |
| 411 const GetCacheEntryCallback& callback) = 0; | 412 const GetCacheEntryCallback& callback) = 0; |
| 412 | 413 |
| 413 // Reloads the resource metadata from the server. | 414 // Reloads the resource metadata from the server. |
| 414 virtual void Reload() = 0; | 415 virtual void Reload() = 0; |
| 415 }; | 416 }; |
| 416 | 417 |
| 417 } // namespace drive | 418 } // namespace drive |
| 418 | 419 |
| 419 #endif // CHROME_BROWSER_CHROMEOS_DRIVE_FILE_SYSTEM_INTERFACE_H_ | 420 #endif // CHROME_BROWSER_CHROMEOS_DRIVE_FILE_SYSTEM_INTERFACE_H_ |
| OLD | NEW |