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

Side by Side Diff: chrome/browser/sync_file_system/local/local_file_sync_context.h

Issue 407073003: [SyncFS] Add completion callback to PromoteDemotedChanges (1/3) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 months 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 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 CHROME_BROWSER_SYNC_FILE_SYSTEM_LOCAL_LOCAL_FILE_SYNC_CONTEXT_H_ 5 #ifndef CHROME_BROWSER_SYNC_FILE_SYSTEM_LOCAL_LOCAL_FILE_SYNC_CONTEXT_H_
6 #define CHROME_BROWSER_SYNC_FILE_SYSTEM_LOCAL_LOCAL_FILE_SYNC_CONTEXT_H_ 6 #define CHROME_BROWSER_SYNC_FILE_SYSTEM_LOCAL_LOCAL_FILE_SYNC_CONTEXT_H_
7 7
8 #include <deque> 8 #include <deque>
9 #include <map> 9 #include <map>
10 #include <set> 10 #include <set>
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 const SyncFileMetadataCallback& callback); 182 const SyncFileMetadataCallback& callback);
183 183
184 // Returns true via |callback| if the given file |url| has local pending 184 // Returns true via |callback| if the given file |url| has local pending
185 // changes. 185 // changes.
186 void HasPendingLocalChanges( 186 void HasPendingLocalChanges(
187 fileapi::FileSystemContext* file_system_context, 187 fileapi::FileSystemContext* file_system_context,
188 const fileapi::FileSystemURL& url, 188 const fileapi::FileSystemURL& url,
189 const HasPendingLocalChangeCallback& callback); 189 const HasPendingLocalChangeCallback& callback);
190 190
191 void PromoteDemotedChanges(const GURL& origin, 191 void PromoteDemotedChanges(const GURL& origin,
192 fileapi::FileSystemContext* file_system_context); 192 fileapi::FileSystemContext* file_system_context,
193 void UpdateChangesForOrigin(const GURL& origin); 193 const base::Closure& callback);
194 void UpdateChangesForOrigin(const GURL& origin,
195 const base::Closure& callback);
194 196
195 // They must be called on UI thread. 197 // They must be called on UI thread.
196 void AddOriginChangeObserver(LocalOriginChangeObserver* observer); 198 void AddOriginChangeObserver(LocalOriginChangeObserver* observer);
197 void RemoveOriginChangeObserver(LocalOriginChangeObserver* observer); 199 void RemoveOriginChangeObserver(LocalOriginChangeObserver* observer);
198 200
199 // OperationRunner is accessible only on IO thread. 201 // OperationRunner is accessible only on IO thread.
200 base::WeakPtr<SyncableFileOperationRunner> operation_runner() const; 202 base::WeakPtr<SyncableFileOperationRunner> operation_runner() const;
201 203
202 // SyncContext is accessible only on IO thread. 204 // SyncContext is accessible only on IO thread.
203 LocalFileSyncStatus* sync_status() const; 205 LocalFileSyncStatus* sync_status() const;
(...skipping 16 matching lines...) Expand all
220 friend class base::RefCountedThreadSafe<LocalFileSyncContext>; 222 friend class base::RefCountedThreadSafe<LocalFileSyncContext>;
221 friend class CannedSyncableFileSystem; 223 friend class CannedSyncableFileSystem;
222 224
223 virtual ~LocalFileSyncContext(); 225 virtual ~LocalFileSyncContext();
224 226
225 void ShutdownOnIOThread(); 227 void ShutdownOnIOThread();
226 228
227 // Starts a timer to eventually call NotifyAvailableChangesOnIOThread. 229 // Starts a timer to eventually call NotifyAvailableChangesOnIOThread.
228 // The caller is expected to update origins_with_pending_changes_ before 230 // The caller is expected to update origins_with_pending_changes_ before
229 // calling this. 231 // calling this.
230 void ScheduleNotifyChangesUpdatedOnIOThread(); 232 void ScheduleNotifyChangesUpdatedOnIOThread(const base::Closure& callback);
231 233
232 // Called by the internal timer on IO thread to notify changes to UI thread. 234 // Called by the internal timer on IO thread to notify changes to UI thread.
233 void NotifyAvailableChangesOnIOThread(); 235 void NotifyAvailableChangesOnIOThread(const base::Closure& callback);
234 236
235 // Called from NotifyAvailableChangesOnIOThread. 237 // Called from NotifyAvailableChangesOnIOThread.
236 void NotifyAvailableChanges(const std::set<GURL>& origins); 238 void NotifyAvailableChanges(const std::set<GURL>& origins,
239 const base::Closure& callback);
237 240
238 // Helper routines for MaybeInitializeFileSystemContext. 241 // Helper routines for MaybeInitializeFileSystemContext.
239 void InitializeFileSystemContextOnIOThread( 242 void InitializeFileSystemContextOnIOThread(
240 const GURL& source_url, 243 const GURL& source_url,
241 fileapi::FileSystemContext* file_system_context, 244 fileapi::FileSystemContext* file_system_context,
242 const GURL& /* root */, 245 const GURL& /* root */,
243 const std::string& /* name */, 246 const std::string& /* name */,
244 base::File::Error error); 247 base::File::Error error);
245 SyncStatusCode InitializeChangeTrackerOnFileThread( 248 SyncStatusCode InitializeChangeTrackerOnFileThread(
246 scoped_ptr<LocalFileChangeTracker>* tracker_ptr, 249 scoped_ptr<LocalFileChangeTracker>* tracker_ptr,
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
372 ObserverList<LocalOriginChangeObserver> origin_change_observers_; 375 ObserverList<LocalOriginChangeObserver> origin_change_observers_;
373 376
374 int mock_notify_changes_duration_in_sec_; 377 int mock_notify_changes_duration_in_sec_;
375 378
376 DISALLOW_COPY_AND_ASSIGN(LocalFileSyncContext); 379 DISALLOW_COPY_AND_ASSIGN(LocalFileSyncContext);
377 }; 380 };
378 381
379 } // namespace sync_file_system 382 } // namespace sync_file_system
380 383
381 #endif // CHROME_BROWSER_SYNC_FILE_SYSTEM_LOCAL_LOCAL_FILE_SYNC_CONTEXT_H_ 384 #endif // CHROME_BROWSER_SYNC_FILE_SYSTEM_LOCAL_LOCAL_FILE_SYNC_CONTEXT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698