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

Unified Diff: chrome/browser/sync/engine/syncer_types.h

Issue 9305001: sync: Remove the remaining conflict sets code (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Additional comments Created 8 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/sync/engine/syncer_types.h
diff --git a/chrome/browser/sync/engine/syncer_types.h b/chrome/browser/sync/engine/syncer_types.h
index e4fde71467aee67f013160080d09c025aa73b295..c9bfc83b77fa5abb5b901267069058523648d950 100644
--- a/chrome/browser/sync/engine/syncer_types.h
+++ b/chrome/browser/sync/engine/syncer_types.h
@@ -30,15 +30,29 @@ enum UpdateAttemptResponse {
// Update was applied or safely ignored.
SUCCESS,
- // Conflicts with the local data representation. This can also mean that the
- // entry doesn't currently make sense if we applied it.
- CONFLICT,
+ // The conditions described by the following enum values are not mutually
+ // exclusive. There can exist updates to unsynced items that would cause
+ // hierarchy conflicts and also can not be dectrypted right now. The list has
Nicolas Zea 2012/02/01 19:16:19 detcrypted
rlarocque 2012/02/02 00:32:56 Done.
+ // been ordered according to priority in the case of overlap, with highest
+ // priority first. The example given above would be treated as
Nicolas Zea 2012/02/01 19:16:19 Example given above?
rlarocque 2012/02/02 00:32:56 I was trying to refer to the example two sentences
+ // CONFLICT_ENCRYPTION, even though it would be not incorrect to describe it
+ // as a CONFLICT or HIERARCHY_CONFLICT.
Nicolas Zea 2012/02/01 19:16:19 Mention that CONFLICT_ENCRYPTION and CONFLICT_HIER
rlarocque 2012/02/02 00:32:56 Done.
// We were unable to decrypt/encrypt this server data. As such, we can't make
// forward progress on this node, but because the passphrase may not arrive
// until later we don't want to get the syncer stuck. See UpdateApplicator
// for how this is handled.
- CONFLICT_ENCRYPTION
+ CONFLICT_ENCRYPTION,
+
+ // These are some updates that, if applied, would violate the tree's
+ // invariants. Examples of this include the server adding children to locally
+ // deleted directories and directory moves that would create loops.
+ HIERARCHY_CONFLICT,
Nicolas Zea 2012/02/01 19:16:19 Prefer CONFLICT_HEIRARCHY
rlarocque 2012/02/02 00:32:56 Done. I assume you meant CONFLICT_HIERARCHY.
+
+ // This indicates that item contains both an unapplied update and an unsynced
Nicolas Zea 2012/02/01 19:16:19 This indicates that the item was modified both rem
+ // change. The ConflictResolver should be used to decide which of the changes
+ // will take priority.
+ CONFLICT
rlarocque 2012/02/02 00:32:56 I renamed this to CONFLICT_SIMPLE, just to be cons
};
enum ServerUpdateProcessingResult {
@@ -132,14 +146,6 @@ class SyncEngineEventListener {
virtual ~SyncEngineEventListener() {}
};
-// This struct is passed between parts of the syncer during the processing of
-// one sync loop. It lives on the stack. We don't expose the number of
-// conflicts during SyncShare as the conflicts may be solved automatically
-// by the conflict resolver.
-typedef std::vector<syncable::Id> ConflictSet;
-
-typedef std::map<syncable::Id, ConflictSet*> IdToConflictSetMap;
-
} // namespace browser_sync
#endif // CHROME_BROWSER_SYNC_ENGINE_SYNCER_TYPES_H_

Powered by Google App Engine
This is Rietveld 408576698