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

Side by Side Diff: sync/internal_api/sync_manager_impl.h

Issue 11341048: Populate versions on individual nodes in sync model and native bookmark model. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 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 | Annotate | Revision Log
OLDNEW
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 SYNC_INTERNAL_API_SYNC_MANAGER_H_ 5 #ifndef SYNC_INTERNAL_API_SYNC_MANAGER_H_
6 #define SYNC_INTERNAL_API_SYNC_MANAGER_H_ 6 #define SYNC_INTERNAL_API_SYNC_MANAGER_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 // This listener is called upon completion of a syncable transaction, and 156 // This listener is called upon completion of a syncable transaction, and
157 // builds the list of sync-engine initiated changes that will be forwarded to 157 // builds the list of sync-engine initiated changes that will be forwarded to
158 // the SyncManager's Observers. 158 // the SyncManager's Observers.
159 virtual void HandleTransactionCompleteChangeEvent( 159 virtual void HandleTransactionCompleteChangeEvent(
160 ModelTypeSet models_with_changes) OVERRIDE; 160 ModelTypeSet models_with_changes) OVERRIDE;
161 virtual ModelTypeSet HandleTransactionEndingChangeEvent( 161 virtual ModelTypeSet HandleTransactionEndingChangeEvent(
162 const syncable::ImmutableWriteTransactionInfo& write_transaction_info, 162 const syncable::ImmutableWriteTransactionInfo& write_transaction_info,
163 syncable::BaseTransaction* trans) OVERRIDE; 163 syncable::BaseTransaction* trans) OVERRIDE;
164 virtual void HandleCalculateChangesChangeEventFromSyncApi( 164 virtual void HandleCalculateChangesChangeEventFromSyncApi(
165 const syncable::ImmutableWriteTransactionInfo& write_transaction_info, 165 const syncable::ImmutableWriteTransactionInfo& write_transaction_info,
166 syncable::BaseTransaction* trans) OVERRIDE; 166 syncable::BaseTransaction* trans,
167 std::vector<int64>* entry_changed) OVERRIDE;
tim (not reviewing) 2012/11/08 17:38:49 entries_changed is more accurate, I think?
haitaol1 2012/11/08 19:06:53 Done.
167 virtual void HandleCalculateChangesChangeEventFromSyncer( 168 virtual void HandleCalculateChangesChangeEventFromSyncer(
168 const syncable::ImmutableWriteTransactionInfo& write_transaction_info, 169 const syncable::ImmutableWriteTransactionInfo& write_transaction_info,
169 syncable::BaseTransaction* trans) OVERRIDE; 170 syncable::BaseTransaction* trans,
171 std::vector<int64>* entry_changed) OVERRIDE;
170 172
171 // InvalidationHandler implementation. 173 // InvalidationHandler implementation.
172 virtual void OnInvalidatorStateChange(InvalidatorState state) OVERRIDE; 174 virtual void OnInvalidatorStateChange(InvalidatorState state) OVERRIDE;
173 virtual void OnIncomingInvalidation( 175 virtual void OnIncomingInvalidation(
174 const ObjectIdInvalidationMap& invalidation_map, 176 const ObjectIdInvalidationMap& invalidation_map,
175 IncomingInvalidationSource source) OVERRIDE; 177 IncomingInvalidationSource source) OVERRIDE;
176 178
177 // Called only by our NetworkChangeNotifier. 179 // Called only by our NetworkChangeNotifier.
178 virtual void OnIPAddressChanged() OVERRIDE; 180 virtual void OnIPAddressChanged() OVERRIDE;
179 181
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 bool VisiblePositionsDiffer( 216 bool VisiblePositionsDiffer(
215 const syncable::EntryKernelMutation& mutation) const; 217 const syncable::EntryKernelMutation& mutation) const;
216 218
217 // Determine if any of the fields made visible to clients of the Sync API 219 // Determine if any of the fields made visible to clients of the Sync API
218 // differ between the versions of an entry stored in |a| and |b|. A return 220 // differ between the versions of an entry stored in |a| and |b|. A return
219 // value of false means that it should be OK to ignore this change. 221 // value of false means that it should be OK to ignore this change.
220 bool VisiblePropertiesDiffer( 222 bool VisiblePropertiesDiffer(
221 const syncable::EntryKernelMutation& mutation, 223 const syncable::EntryKernelMutation& mutation,
222 Cryptographer* cryptographer) const; 224 Cryptographer* cryptographer) const;
223 225
224 bool ChangeBuffersAreEmpty();
225
226 // Open the directory named with username_for_share 226 // Open the directory named with username_for_share
227 bool OpenDirectory(); 227 bool OpenDirectory();
228 228
229 // Purge those types from |previously_enabled_types| that are no longer 229 // Purge those types from |previously_enabled_types| that are no longer
230 // enabled in |currently_enabled_types|. 230 // enabled in |currently_enabled_types|.
231 bool PurgeDisabledTypes(ModelTypeSet previously_enabled_types, 231 bool PurgeDisabledTypes(ModelTypeSet previously_enabled_types,
232 ModelTypeSet currently_enabled_types); 232 ModelTypeSet currently_enabled_types);
233 233
234 void RequestNudgeForDataTypes( 234 void RequestNudgeForDataTypes(
235 const tracked_objects::Location& nudge_location, 235 const tracked_objects::Location& nudge_location,
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
322 // Start()ed. 322 // Start()ed.
323 scoped_ptr<SyncScheduler> scheduler_; 323 scoped_ptr<SyncScheduler> scheduler_;
324 324
325 // The Invalidator which notifies us when updates need to be downloaded. 325 // The Invalidator which notifies us when updates need to be downloaded.
326 scoped_ptr<Invalidator> invalidator_; 326 scoped_ptr<Invalidator> invalidator_;
327 327
328 // A multi-purpose status watch object that aggregates stats from various 328 // A multi-purpose status watch object that aggregates stats from various
329 // sync components. 329 // sync components.
330 AllStatus allstatus_; 330 AllStatus allstatus_;
331 331
332 // Each element of this array is a store of change records produced by 332 // Each element of this map is a store of change records produced by
333 // HandleChangeEvent during the CALCULATE_CHANGES step. The changes are 333 // HandleChangeEventFromSyncer during the CALCULATE_CHANGES step. The changes
334 // segregated by model type, and are stored here to be processed and 334 // are grouped by model type, and are stored here in tree order to be
335 // forwarded to the observer slightly later, at the TRANSACTION_ENDING 335 // forwarded to the observer slightly later, at the TRANSACTION_ENDING step
336 // step by HandleTransactionEndingChangeEvent. The list is cleared in the 336 // by HandleTransactionEndingChangeEvent. The list is cleared after observer
337 // TRANSACTION_COMPLETE step by HandleTransactionCompleteChangeEvent. 337 // finishes processing.
338 ChangeReorderBuffer change_buffers_[MODEL_TYPE_COUNT]; 338 typedef std::map<int, ImmutableChangeRecordList> ChangeRecordMap;
339 ChangeRecordMap change_records_;
339 340
340 SyncManager::ChangeDelegate* change_delegate_; 341 SyncManager::ChangeDelegate* change_delegate_;
341 342
342 // Set to true once Init has been called. 343 // Set to true once Init has been called.
343 bool initialized_; 344 bool initialized_;
344 345
345 bool observing_ip_address_changes_; 346 bool observing_ip_address_changes_;
346 347
347 InvalidatorState invalidator_state_; 348 InvalidatorState invalidator_state_;
348 349
(...skipping 23 matching lines...) Expand all
372 // changing passphrases, and in general handles sync-specific interactions 373 // changing passphrases, and in general handles sync-specific interactions
373 // with the cryptographer. 374 // with the cryptographer.
374 scoped_ptr<SyncEncryptionHandlerImpl> sync_encryption_handler_; 375 scoped_ptr<SyncEncryptionHandlerImpl> sync_encryption_handler_;
375 376
376 DISALLOW_COPY_AND_ASSIGN(SyncManagerImpl); 377 DISALLOW_COPY_AND_ASSIGN(SyncManagerImpl);
377 }; 378 };
378 379
379 } // namespace syncer 380 } // namespace syncer
380 381
381 #endif // SYNC_INTERNAL_API_SYNC_MANAGER_H_ 382 #endif // SYNC_INTERNAL_API_SYNC_MANAGER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698