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 STORAGE_BROWSER_FILEAPI_LOCAL_FILE_UTIL_H_ | 5 #ifndef STORAGE_BROWSER_FILEAPI_LOCAL_FILE_UTIL_H_ |
6 #define STORAGE_BROWSER_FILEAPI_LOCAL_FILE_UTIL_H_ | 6 #define STORAGE_BROWSER_FILEAPI_LOCAL_FILE_UTIL_H_ |
7 | 7 |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "base/files/file_path.h" | 9 #include "base/files/file_path.h" |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
11 #include "storage/browser/fileapi/file_system_file_util.h" | 11 #include "storage/browser/fileapi/file_system_file_util.h" |
12 #include "storage/browser/storage_browser_export.h" | 12 #include "storage/browser/storage_browser_export.h" |
13 | 13 |
14 namespace base { | 14 namespace base { |
15 class Time; | 15 class Time; |
16 } | 16 } |
17 | 17 |
18 class GURL; | 18 class GURL; |
19 | 19 |
20 namespace storage { | 20 namespace storage { |
21 | 21 |
22 class FileSystemOperationContext; | 22 class FileSystemOperationContext; |
23 class FileSystemURL; | 23 class FileSystemURL; |
24 | 24 |
25 // An instance of this class is created and owned by *FileSystemBackend. | 25 // An instance of this class is created and owned by *FileSystemBackend. |
26 class STORAGE_EXPORT LocalFileUtil | 26 class STORAGE_EXPORT LocalFileUtil |
27 : public FileSystemFileUtil { | 27 : public FileSystemFileUtil { |
28 public: | 28 public: |
29 LocalFileUtil(); | 29 LocalFileUtil(); |
30 virtual ~LocalFileUtil(); | 30 ~LocalFileUtil() override; |
31 | 31 |
32 virtual base::File CreateOrOpen( | 32 base::File CreateOrOpen(FileSystemOperationContext* context, |
33 FileSystemOperationContext* context, | 33 const FileSystemURL& url, |
34 const FileSystemURL& url, | 34 int file_flags) override; |
35 int file_flags) override; | 35 base::File::Error EnsureFileExists(FileSystemOperationContext* context, |
36 virtual base::File::Error EnsureFileExists( | 36 const FileSystemURL& url, |
37 FileSystemOperationContext* context, | 37 bool* created) override; |
38 const FileSystemURL& url, bool* created) override; | 38 base::File::Error CreateDirectory(FileSystemOperationContext* context, |
39 virtual base::File::Error CreateDirectory( | 39 const FileSystemURL& url, |
40 FileSystemOperationContext* context, | 40 bool exclusive, |
41 const FileSystemURL& url, | 41 bool recursive) override; |
42 bool exclusive, | 42 base::File::Error GetFileInfo(FileSystemOperationContext* context, |
43 bool recursive) override; | 43 const FileSystemURL& url, |
44 virtual base::File::Error GetFileInfo( | 44 base::File::Info* file_info, |
45 FileSystemOperationContext* context, | 45 base::FilePath* platform_file) override; |
46 const FileSystemURL& url, | 46 scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator( |
47 base::File::Info* file_info, | |
48 base::FilePath* platform_file) override; | |
49 virtual scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator( | |
50 FileSystemOperationContext* context, | 47 FileSystemOperationContext* context, |
51 const FileSystemURL& root_url) override; | 48 const FileSystemURL& root_url) override; |
52 virtual base::File::Error GetLocalFilePath( | 49 base::File::Error GetLocalFilePath(FileSystemOperationContext* context, |
53 FileSystemOperationContext* context, | 50 const FileSystemURL& file_system_url, |
54 const FileSystemURL& file_system_url, | 51 base::FilePath* local_file_path) override; |
55 base::FilePath* local_file_path) override; | 52 base::File::Error Touch(FileSystemOperationContext* context, |
56 virtual base::File::Error Touch( | 53 const FileSystemURL& url, |
57 FileSystemOperationContext* context, | 54 const base::Time& last_access_time, |
58 const FileSystemURL& url, | 55 const base::Time& last_modified_time) override; |
59 const base::Time& last_access_time, | 56 base::File::Error Truncate(FileSystemOperationContext* context, |
60 const base::Time& last_modified_time) override; | 57 const FileSystemURL& url, |
61 virtual base::File::Error Truncate( | 58 int64 length) override; |
62 FileSystemOperationContext* context, | 59 base::File::Error CopyOrMoveFile(FileSystemOperationContext* context, |
63 const FileSystemURL& url, | 60 const FileSystemURL& src_url, |
64 int64 length) override; | 61 const FileSystemURL& dest_url, |
65 virtual base::File::Error CopyOrMoveFile( | 62 CopyOrMoveOption option, |
66 FileSystemOperationContext* context, | 63 bool copy) override; |
67 const FileSystemURL& src_url, | 64 base::File::Error CopyInForeignFile(FileSystemOperationContext* context, |
68 const FileSystemURL& dest_url, | 65 const base::FilePath& src_file_path, |
69 CopyOrMoveOption option, | 66 const FileSystemURL& dest_url) override; |
70 bool copy) override; | 67 base::File::Error DeleteFile(FileSystemOperationContext* context, |
71 virtual base::File::Error CopyInForeignFile( | 68 const FileSystemURL& url) override; |
72 FileSystemOperationContext* context, | 69 base::File::Error DeleteDirectory(FileSystemOperationContext* context, |
73 const base::FilePath& src_file_path, | 70 const FileSystemURL& url) override; |
74 const FileSystemURL& dest_url) override; | 71 storage::ScopedFile CreateSnapshotFile( |
75 virtual base::File::Error DeleteFile( | |
76 FileSystemOperationContext* context, | |
77 const FileSystemURL& url) override; | |
78 virtual base::File::Error DeleteDirectory( | |
79 FileSystemOperationContext* context, | |
80 const FileSystemURL& url) override; | |
81 virtual storage::ScopedFile CreateSnapshotFile( | |
82 FileSystemOperationContext* context, | 72 FileSystemOperationContext* context, |
83 const FileSystemURL& url, | 73 const FileSystemURL& url, |
84 base::File::Error* error, | 74 base::File::Error* error, |
85 base::File::Info* file_info, | 75 base::File::Info* file_info, |
86 base::FilePath* platform_path) override; | 76 base::FilePath* platform_path) override; |
87 | 77 |
88 private: | 78 private: |
89 DISALLOW_COPY_AND_ASSIGN(LocalFileUtil); | 79 DISALLOW_COPY_AND_ASSIGN(LocalFileUtil); |
90 }; | 80 }; |
91 | 81 |
92 } // namespace storage | 82 } // namespace storage |
93 | 83 |
94 #endif // STORAGE_BROWSER_FILEAPI_LOCAL_FILE_UTIL_H_ | 84 #endif // STORAGE_BROWSER_FILEAPI_LOCAL_FILE_UTIL_H_ |
OLD | NEW |