Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(598)

Side by Side Diff: chrome/browser/chromeos/file_system_provider/provided_file_system_interface.h

Issue 679573002: [fsp] Separate recursive and non-recursive watchers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed. Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INTERF ACE_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INTERF ACE_H_
6 #define CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INTERF ACE_H_ 6 #define CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INTERF ACE_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 DISALLOW_COPY_AND_ASSIGN(EntryMetadata); 50 DISALLOW_COPY_AND_ASSIGN(EntryMetadata);
51 }; 51 };
52 52
53 // Interface for a provided file system. Acts as a proxy between providers 53 // Interface for a provided file system. Acts as a proxy between providers
54 // and clients. All of the request methods return an abort callback in order to 54 // and clients. All of the request methods return an abort callback in order to
55 // terminate it while running. They must be called on the same thread as the 55 // terminate it while running. They must be called on the same thread as the
56 // request methods. The cancellation callback may be null if the operation 56 // request methods. The cancellation callback may be null if the operation
57 // fails synchronously. 57 // fails synchronously.
58 class ProvidedFileSystemInterface { 58 class ProvidedFileSystemInterface {
59 public: 59 public:
60 struct ChildChange; 60 struct Change;
61 61
62 // Mode of opening a file. Used by OpenFile(). 62 // Mode of opening a file. Used by OpenFile().
63 enum OpenFileMode { OPEN_FILE_MODE_READ, OPEN_FILE_MODE_WRITE }; 63 enum OpenFileMode { OPEN_FILE_MODE_READ, OPEN_FILE_MODE_WRITE };
64 64
65 // Extra fields to be fetched with metadata. 65 // Extra fields to be fetched with metadata.
66 enum MetadataField { 66 enum MetadataField {
67 METADATA_FIELD_DEFAULT = 0, 67 METADATA_FIELD_DEFAULT = 0,
68 METADATA_FIELD_THUMBNAIL = 1 << 0 68 METADATA_FIELD_THUMBNAIL = 1 << 0
69 }; 69 };
70 70
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 // Requests observing a directory. 178 // Requests observing a directory.
179 virtual AbortCallback ObserveDirectory( 179 virtual AbortCallback ObserveDirectory(
180 const base::FilePath& directory_path, 180 const base::FilePath& directory_path,
181 bool recursive, 181 bool recursive,
182 const storage::AsyncFileUtil::StatusCallback& callback) = 0; 182 const storage::AsyncFileUtil::StatusCallback& callback) = 0;
183 183
184 // Requests unobserving an entry, which is immediately removed from the 184 // Requests unobserving an entry, which is immediately removed from the
185 // internal list, hence the operation is not abortable. 185 // internal list, hence the operation is not abortable.
186 virtual void UnobserveEntry( 186 virtual void UnobserveEntry(
187 const base::FilePath& entry_path, 187 const base::FilePath& entry_path,
188 bool recursive,
188 const storage::AsyncFileUtil::StatusCallback& callback) = 0; 189 const storage::AsyncFileUtil::StatusCallback& callback) = 0;
189 190
190 // Notifies about changes to the observed entries within the file system. 191 // Notifies about changes to the observed entries within the file system.
191 // Invoked by the file system implementation. Returns false if the 192 // Invoked by the file system implementation. Returns false if the
192 // notification arguments are malformed or the entry is not observed anymore. 193 // notification arguments are malformed or the entry is not observed anymore.
193 virtual bool Notify( 194 virtual bool Notify(const base::FilePath& observed_path,
194 const base::FilePath& observed_path, 195 bool recursive,
195 ProvidedFileSystemObserver::ChangeType change_type, 196 ProvidedFileSystemObserver::ChangeType change_type,
196 scoped_ptr<ProvidedFileSystemObserver::ChildChanges> child_changes, 197 scoped_ptr<ProvidedFileSystemObserver::Changes> changes,
197 const std::string& tag) = 0; 198 const std::string& tag) = 0;
198 199
199 // Returns a provided file system info for this file system. 200 // Returns a provided file system info for this file system.
200 virtual const ProvidedFileSystemInfo& GetFileSystemInfo() const = 0; 201 virtual const ProvidedFileSystemInfo& GetFileSystemInfo() const = 0;
201 202
202 // Returns a mutable list of observed entries. 203 // Returns a mutable list of observed entries.
203 virtual ObservedEntries* GetObservedEntries() = 0; 204 virtual ObservedEntries* GetObservedEntries() = 0;
204 205
205 // Returns a request manager for the file system. 206 // Returns a request manager for the file system.
206 virtual RequestManager* GetRequestManager() = 0; 207 virtual RequestManager* GetRequestManager() = 0;
207 208
208 // Adds an observer on the file system. 209 // Adds an observer on the file system.
209 virtual void AddObserver(ProvidedFileSystemObserver* observer) = 0; 210 virtual void AddObserver(ProvidedFileSystemObserver* observer) = 0;
210 211
211 // Removes an observer. 212 // Removes an observer.
212 virtual void RemoveObserver(ProvidedFileSystemObserver* observer) = 0; 213 virtual void RemoveObserver(ProvidedFileSystemObserver* observer) = 0;
213 214
214 // Returns a weak pointer to this object. 215 // Returns a weak pointer to this object.
215 virtual base::WeakPtr<ProvidedFileSystemInterface> GetWeakPtr() = 0; 216 virtual base::WeakPtr<ProvidedFileSystemInterface> GetWeakPtr() = 0;
216 }; 217 };
217 218
218 } // namespace file_system_provider 219 } // namespace file_system_provider
219 } // namespace chromeos 220 } // namespace chromeos
220 221
221 #endif // CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INT ERFACE_H_ 222 #endif // CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INT ERFACE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698