diff options
author | haitaol@chromium.org <haitaol@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-10 05:20:11 +0000 |
---|---|---|
committer | haitaol@chromium.org <haitaol@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-10 05:20:11 +0000 |
commit | fc290d614c7fab02dcdaf88b992a0204be23aa90 (patch) | |
tree | 10400ca878d8c999249c694758006aa1d380333a /sync/test | |
parent | db06cc16af9cb0eaa766603f2e56f490041665db (diff) | |
download | chromium_src-fc290d614c7fab02dcdaf88b992a0204be23aa90.zip chromium_src-fc290d614c7fab02dcdaf88b992a0204be23aa90.tar.gz chromium_src-fc290d614c7fab02dcdaf88b992a0204be23aa90.tar.bz2 |
Populate versions on individual nodes in sync model and native bookmark model.
Update transaction versions of changed sync models and entries in
syncable::WriteTransaction after change delegate calculates changes and returns
handles of changed entries. For syncer changes, updated version is passed to
change processor and set on native model and nodes. For sync API changes, model
processor queries for new version and set on native model and nodes after write
transaction closes.
BUG=154858
Review URL: https://chromiumcodereview.appspot.com/11341048
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167061 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/test')
-rw-r--r-- | sync/test/null_directory_change_delegate.cc | 25 | ||||
-rw-r--r-- | sync/test/null_directory_change_delegate.h | 6 | ||||
-rw-r--r-- | sync/test/test_directory_backing_store.h | 1 |
3 files changed, 24 insertions, 8 deletions
diff --git a/sync/test/null_directory_change_delegate.cc b/sync/test/null_directory_change_delegate.cc index e28fc6a..5e2a93d 100644 --- a/sync/test/null_directory_change_delegate.cc +++ b/sync/test/null_directory_change_delegate.cc @@ -11,16 +11,29 @@ NullDirectoryChangeDelegate::~NullDirectoryChangeDelegate() {} void NullDirectoryChangeDelegate::HandleCalculateChangesChangeEventFromSyncApi( const ImmutableWriteTransactionInfo& write_transaction_info, - BaseTransaction* trans) {} + BaseTransaction* trans, + std::vector<int64>* entries_changed) { + for (EntryKernelMutationMap::const_iterator it = + write_transaction_info.Get().mutations.Get().begin(); + it != write_transaction_info.Get().mutations.Get().end(); ++it) { + entries_changed->push_back(it->first); + } +} void NullDirectoryChangeDelegate::HandleCalculateChangesChangeEventFromSyncer( const ImmutableWriteTransactionInfo& write_transaction_info, - BaseTransaction* trans) {} + BaseTransaction* trans, + std::vector<int64>* entries_changed) { + for (EntryKernelMutationMap::const_iterator it = + write_transaction_info.Get().mutations.Get().begin(); + it != write_transaction_info.Get().mutations.Get().end(); ++it) { + entries_changed->push_back(it->first); + } +} -ModelTypeSet - NullDirectoryChangeDelegate::HandleTransactionEndingChangeEvent( - const ImmutableWriteTransactionInfo& write_transaction_info, - BaseTransaction* trans) { +ModelTypeSet NullDirectoryChangeDelegate::HandleTransactionEndingChangeEvent( + const ImmutableWriteTransactionInfo& write_transaction_info, + BaseTransaction* trans) { return ModelTypeSet(); } diff --git a/sync/test/null_directory_change_delegate.h b/sync/test/null_directory_change_delegate.h index 4fdba374..25ddd1b 100644 --- a/sync/test/null_directory_change_delegate.h +++ b/sync/test/null_directory_change_delegate.h @@ -18,10 +18,12 @@ class NullDirectoryChangeDelegate : public DirectoryChangeDelegate { virtual void HandleCalculateChangesChangeEventFromSyncApi( const ImmutableWriteTransactionInfo& write_transaction_info, - BaseTransaction* trans) OVERRIDE; + BaseTransaction* trans, + std::vector<int64>* entries_changed) OVERRIDE; virtual void HandleCalculateChangesChangeEventFromSyncer( const ImmutableWriteTransactionInfo& write_transaction_info, - BaseTransaction* trans) OVERRIDE; + BaseTransaction* trans, + std::vector<int64>* entries_changed) OVERRIDE; virtual ModelTypeSet HandleTransactionEndingChangeEvent( const ImmutableWriteTransactionInfo& write_transaction_info, BaseTransaction* trans) OVERRIDE; diff --git a/sync/test/test_directory_backing_store.h b/sync/test/test_directory_backing_store.h index bb90c65..6d2acb4 100644 --- a/sync/test/test_directory_backing_store.h +++ b/sync/test/test_directory_backing_store.h @@ -44,6 +44,7 @@ class TestDirectoryBackingStore : public DirectoryBackingStore { FRIEND_TEST_ALL_PREFIXES(DirectoryBackingStoreTest, MigrateVersion79To80); FRIEND_TEST_ALL_PREFIXES(DirectoryBackingStoreTest, MigrateVersion80To81); FRIEND_TEST_ALL_PREFIXES(DirectoryBackingStoreTest, MigrateVersion81To82); + FRIEND_TEST_ALL_PREFIXES(DirectoryBackingStoreTest, MigrateVersion82To83); FRIEND_TEST_ALL_PREFIXES(DirectoryBackingStoreTest, DetectInvalidOrdinal); FRIEND_TEST_ALL_PREFIXES(DirectoryBackingStoreTest, ModelTypeIds); FRIEND_TEST_ALL_PREFIXES(DirectoryBackingStoreTest, Corruption); |