summaryrefslogtreecommitdiffstats
path: root/sync/api/sync_change.cc
diff options
context:
space:
mode:
authorzea@chromium.org <zea@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-10 23:46:45 +0000
committerzea@chromium.org <zea@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-10 23:46:45 +0000
commit786009d47328ac4672c86e5a3964d56fc36b3d74 (patch)
treee4994d54c0fac1f093200f08edeea4d1f4fc4170 /sync/api/sync_change.cc
parent99800f2ad6f7518143b15092f711670253fbcfc8 (diff)
downloadchromium_src-786009d47328ac4672c86e5a3964d56fc36b3d74.zip
chromium_src-786009d47328ac4672c86e5a3964d56fc36b3d74.tar.gz
chromium_src-786009d47328ac4672c86e5a3964d56fc36b3d74.tar.bz2
[Sync] Add location parameter to SyncChange in Sync API.
SyncChanges now require the location they were created as a parameter. This is then used in the case that the change violates and invariant. We display the location and type of erroneous change in about:sync, in addition to disabling the offending datatype. TBR=kalman@chromium.org, mnissler@chromium.org, isherman@chromium.org BUG=135108 TEST=unit_tests Review URL: https://chromiumcodereview.appspot.com/10766016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145993 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/api/sync_change.cc')
-rw-r--r--sync/api/sync_change.cc13
1 files changed, 9 insertions, 4 deletions
diff --git a/sync/api/sync_change.cc b/sync/api/sync_change.cc
index 64da5b7..ee1cdea 100644
--- a/sync/api/sync_change.cc
+++ b/sync/api/sync_change.cc
@@ -11,8 +11,12 @@ namespace syncer {
SyncChange::SyncChange() : change_type_(ACTION_INVALID) {
}
-SyncChange::SyncChange(SyncChangeType change_type, const SyncData& sync_data)
- : change_type_(change_type),
+SyncChange::SyncChange(
+ const tracked_objects::Location& from_here,
+ SyncChangeType change_type,
+ const SyncData& sync_data)
+ : location_(from_here),
+ change_type_(change_type),
sync_data_(sync_data) {
DCHECK(IsValid());
}
@@ -66,8 +70,9 @@ std::string SyncChange::ChangeTypeToString(SyncChangeType change_type) {
}
std::string SyncChange::ToString() const {
- return "{ changeType: " + ChangeTypeToString(change_type_) +
- ", syncData: " + sync_data_.ToString() + "}";
+ return "{ " + location_.ToString() + ", changeType: " +
+ ChangeTypeToString(change_type_) + ", syncData: " +
+ sync_data_.ToString() + "}";
}
void PrintTo(const SyncChange& sync_change, std::ostream* os) {