| 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 WEBKIT_BROWSER_FILEAPI_FILE_SYSTEM_OPERATION_H_ | 5 #ifndef WEBKIT_BROWSER_FILEAPI_FILE_SYSTEM_OPERATION_H_ |
| 6 #define WEBKIT_BROWSER_FILEAPI_FILE_SYSTEM_OPERATION_H_ | 6 #define WEBKIT_BROWSER_FILEAPI_FILE_SYSTEM_OPERATION_H_ |
| 7 | 7 |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 13 matching lines...) Expand all Loading... |
| 24 namespace webkit_blob { | 24 namespace webkit_blob { |
| 25 class ShareableFileReference; | 25 class ShareableFileReference; |
| 26 } | 26 } |
| 27 | 27 |
| 28 class GURL; | 28 class GURL; |
| 29 | 29 |
| 30 namespace fileapi { | 30 namespace fileapi { |
| 31 | 31 |
| 32 class FileSystemURL; | 32 class FileSystemURL; |
| 33 class FileWriterDelegate; | 33 class FileWriterDelegate; |
| 34 class LocalFileSystemOperation; | 34 class FileSystemOperationImpl; |
| 35 | 35 |
| 36 // The interface class for FileSystemOperation implementations. | 36 // The interface class for FileSystemOperation implementations. |
| 37 // | 37 // |
| 38 // This interface defines file system operations required to implement | 38 // This interface defines file system operations required to implement |
| 39 // "File API: Directories and System" | 39 // "File API: Directories and System" |
| 40 // http://www.w3.org/TR/file-system-api/ | 40 // http://www.w3.org/TR/file-system-api/ |
| 41 // | 41 // |
| 42 // DESIGN NOTES | 42 // DESIGN NOTES |
| 43 // | 43 // |
| 44 // This class is designed to | 44 // This class is designed to |
| (...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 223 // | 223 // |
| 224 // |peer_handle| is the process handle of a pepper plugin process, which | 224 // |peer_handle| is the process handle of a pepper plugin process, which |
| 225 // is necessary for underlying IPC calls with Pepper plugins. | 225 // is necessary for underlying IPC calls with Pepper plugins. |
| 226 // | 226 // |
| 227 // This function is used only by Pepper as of writing. | 227 // This function is used only by Pepper as of writing. |
| 228 virtual void OpenFile(const FileSystemURL& path, | 228 virtual void OpenFile(const FileSystemURL& path, |
| 229 int file_flags, | 229 int file_flags, |
| 230 base::ProcessHandle peer_handle, | 230 base::ProcessHandle peer_handle, |
| 231 const OpenFileCallback& callback) = 0; | 231 const OpenFileCallback& callback) = 0; |
| 232 | 232 |
| 233 // For downcasting to FileSystemOperation. | 233 // For downcasting to FileSystemOperationImpl. |
| 234 // TODO(kinuko): this hack should go away once appropriate upload-stream | 234 // TODO(kinuko): this hack should go away once appropriate upload-stream |
| 235 // handling based on element types is supported. | 235 // handling based on element types is supported. |
| 236 virtual LocalFileSystemOperation* AsLocalFileSystemOperation() = 0; | 236 virtual FileSystemOperationImpl* AsFileSystemOperationImpl() = 0; |
| 237 | 237 |
| 238 // Creates a local snapshot file for a given |path| and returns the | 238 // Creates a local snapshot file for a given |path| and returns the |
| 239 // metadata and platform path of the snapshot file via |callback|. | 239 // metadata and platform path of the snapshot file via |callback|. |
| 240 // In local filesystem cases the implementation may simply return | 240 // In local filesystem cases the implementation may simply return |
| 241 // the metadata of the file itself (as well as GetMetadata does), | 241 // the metadata of the file itself (as well as GetMetadata does), |
| 242 // while in remote filesystem case the backend may want to download the file | 242 // while in remote filesystem case the backend may want to download the file |
| 243 // into a temporary snapshot file and return the metadata of the | 243 // into a temporary snapshot file and return the metadata of the |
| 244 // temporary file. Or if the implementaiton already has the local cache | 244 // temporary file. Or if the implementaiton already has the local cache |
| 245 // data for |path| it can simply return the path to the cache. | 245 // data for |path| it can simply return the path to the cache. |
| 246 virtual void CreateSnapshotFile(const FileSystemURL& path, | 246 virtual void CreateSnapshotFile(const FileSystemURL& path, |
| (...skipping 20 matching lines...) Expand all Loading... |
| 267 kOperationOpenFile, | 267 kOperationOpenFile, |
| 268 kOperationCloseFile, | 268 kOperationCloseFile, |
| 269 kOperationGetLocalPath, | 269 kOperationGetLocalPath, |
| 270 kOperationCancel, | 270 kOperationCancel, |
| 271 }; | 271 }; |
| 272 }; | 272 }; |
| 273 | 273 |
| 274 } // namespace fileapi | 274 } // namespace fileapi |
| 275 | 275 |
| 276 #endif // WEBKIT_BROWSER_FILEAPI_FILE_SYSTEM_OPERATION_H_ | 276 #endif // WEBKIT_BROWSER_FILEAPI_FILE_SYSTEM_OPERATION_H_ |
| OLD | NEW |