| Index: sync/internal_api/sync_manager_impl.h
|
| diff --git a/sync/internal_api/sync_manager_impl.h b/sync/internal_api/sync_manager_impl.h
|
| index 6037e8c05b679d6d61d52a017fe9f1766675ce9b..6accdab6b42679e907e378214c702da779c3dce3 100644
|
| --- a/sync/internal_api/sync_manager_impl.h
|
| +++ b/sync/internal_api/sync_manager_impl.h
|
| @@ -165,10 +165,12 @@ class SyncManagerImpl :
|
| syncable::BaseTransaction* trans) OVERRIDE;
|
| virtual void HandleCalculateChangesChangeEventFromSyncApi(
|
| const syncable::ImmutableWriteTransactionInfo& write_transaction_info,
|
| - syncable::BaseTransaction* trans) OVERRIDE;
|
| + syncable::BaseTransaction* trans,
|
| + std::vector<int64>* entries_changed) OVERRIDE;
|
| virtual void HandleCalculateChangesChangeEventFromSyncer(
|
| const syncable::ImmutableWriteTransactionInfo& write_transaction_info,
|
| - syncable::BaseTransaction* trans) OVERRIDE;
|
| + syncable::BaseTransaction* trans,
|
| + std::vector<int64>* entries_changed) OVERRIDE;
|
|
|
| // InvalidationHandler implementation.
|
| virtual void OnInvalidatorStateChange(InvalidatorState state) OVERRIDE;
|
| @@ -227,8 +229,6 @@ class SyncManagerImpl :
|
| const syncable::EntryKernelMutation& mutation,
|
| Cryptographer* cryptographer) const;
|
|
|
| - bool ChangeBuffersAreEmpty();
|
| -
|
| // Open the directory named with username_for_share
|
| bool OpenDirectory();
|
|
|
| @@ -335,13 +335,14 @@ class SyncManagerImpl :
|
| // sync components.
|
| AllStatus allstatus_;
|
|
|
| - // Each element of this array is a store of change records produced by
|
| - // HandleChangeEvent during the CALCULATE_CHANGES step. The changes are
|
| - // segregated by model type, and are stored here to be processed and
|
| - // forwarded to the observer slightly later, at the TRANSACTION_ENDING
|
| - // step by HandleTransactionEndingChangeEvent. The list is cleared in the
|
| - // TRANSACTION_COMPLETE step by HandleTransactionCompleteChangeEvent.
|
| - ChangeReorderBuffer change_buffers_[MODEL_TYPE_COUNT];
|
| + // Each element of this map is a store of change records produced by
|
| + // HandleChangeEventFromSyncer during the CALCULATE_CHANGES step. The changes
|
| + // are grouped by model type, and are stored here in tree order to be
|
| + // forwarded to the observer slightly later, at the TRANSACTION_ENDING step
|
| + // by HandleTransactionEndingChangeEvent. The list is cleared after observer
|
| + // finishes processing.
|
| + typedef std::map<int, ImmutableChangeRecordList> ChangeRecordMap;
|
| + ChangeRecordMap change_records_;
|
|
|
| SyncManager::ChangeDelegate* change_delegate_;
|
|
|
|
|