OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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_ASYNC_FILE_UTIL_H_ | 5 #ifndef WEBKIT_BROWSER_FILEAPI_ASYNC_FILE_UTIL_H_ |
6 #define WEBKIT_BROWSER_FILEAPI_ASYNC_FILE_UTIL_H_ | 6 #define WEBKIT_BROWSER_FILEAPI_ASYNC_FILE_UTIL_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/callback_forward.h" | 9 #include "base/callback_forward.h" |
10 #include "base/files/file_util_proxy.h" | 10 #include "base/files/file_util_proxy.h" |
11 #include "base/memory/scoped_ptr.h" | 11 #include "base/memory/scoped_ptr.h" |
12 #include "base/platform_file.h" | 12 #include "base/platform_file.h" |
| 13 #include "webkit/browser/webkit_storage_browser_export.h" |
13 #include "webkit/common/fileapi/directory_entry.h" | 14 #include "webkit/common/fileapi/directory_entry.h" |
14 #include "webkit/storage/webkit_storage_export.h" | |
15 | 15 |
16 namespace base { | 16 namespace base { |
17 class Time; | 17 class Time; |
18 } | 18 } |
19 | 19 |
20 namespace webkit_blob { | 20 namespace webkit_blob { |
21 class ShareableFileReference; | 21 class ShareableFileReference; |
22 } | 22 } |
23 | 23 |
24 namespace fileapi { | 24 namespace fileapi { |
25 | 25 |
26 class FileSystemOperationContext; | 26 class FileSystemOperationContext; |
27 class FileSystemURL; | 27 class FileSystemURL; |
28 | 28 |
29 // An interface which provides filesystem-specific file operations for | 29 // An interface which provides filesystem-specific file operations for |
30 // LocalFileSystemOperation. | 30 // LocalFileSystemOperation. |
31 // | 31 // |
32 // Each filesystem which needs to be dispatched from LocalFileSystemOperation | 32 // Each filesystem which needs to be dispatched from LocalFileSystemOperation |
33 // must implement this interface or a synchronous version of interface: | 33 // must implement this interface or a synchronous version of interface: |
34 // FileSystemFileUtil. | 34 // FileSystemFileUtil. |
35 // | 35 // |
36 // As far as an instance of this class is owned by a MountPointProvider | 36 // As far as an instance of this class is owned by a MountPointProvider |
37 // (which is owned by FileSystemContext), it's guaranteed that this instance's | 37 // (which is owned by FileSystemContext), it's guaranteed that this instance's |
38 // alive while FileSystemOperationContext given to each operation is kept | 38 // alive while FileSystemOperationContext given to each operation is kept |
39 // alive. (Note that this instance might be freed on different thread | 39 // alive. (Note that this instance might be freed on different thread |
40 // from the thread it is created.) | 40 // from the thread it is created.) |
41 class WEBKIT_STORAGE_EXPORT AsyncFileUtil { | 41 class WEBKIT_STORAGE_BROWSER_EXPORT AsyncFileUtil { |
42 public: | 42 public: |
43 typedef base::Callback< | 43 typedef base::Callback< |
44 void(base::PlatformFileError result)> StatusCallback; | 44 void(base::PlatformFileError result)> StatusCallback; |
45 | 45 |
46 typedef base::FileUtilProxy::CreateOrOpenCallback CreateOrOpenCallback; | 46 typedef base::FileUtilProxy::CreateOrOpenCallback CreateOrOpenCallback; |
47 | 47 |
48 typedef base::Callback< | 48 typedef base::Callback< |
49 void(base::PlatformFileError result, | 49 void(base::PlatformFileError result, |
50 bool created)> EnsureFileExistsCallback; | 50 bool created)> EnsureFileExistsCallback; |
51 | 51 |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
335 const FileSystemURL& url, | 335 const FileSystemURL& url, |
336 const CreateSnapshotFileCallback& callback) = 0; | 336 const CreateSnapshotFileCallback& callback) = 0; |
337 | 337 |
338 private: | 338 private: |
339 DISALLOW_COPY_AND_ASSIGN(AsyncFileUtil); | 339 DISALLOW_COPY_AND_ASSIGN(AsyncFileUtil); |
340 }; | 340 }; |
341 | 341 |
342 } // namespace fileapi | 342 } // namespace fileapi |
343 | 343 |
344 #endif // WEBKIT_BROWSER_FILEAPI_ASYNC_FILE_UTIL_H_ | 344 #endif // WEBKIT_BROWSER_FILEAPI_ASYNC_FILE_UTIL_H_ |
OLD | NEW |