diff options
author | Eike Stepper | 2013-09-02 07:58:30 +0000 |
---|---|---|
committer | Eike Stepper | 2013-09-02 07:58:30 +0000 |
commit | 90cdd8cd6f4785c4180d0a8e59cb8cfc781f84ff (patch) | |
tree | ab4eef6013214be32965ff697d853e2baa09ecaf | |
parent | c7ca0e7c3c89c489f0f33c575b6171dfe23d7f7b (diff) | |
download | cdo-90cdd8cd6f4785c4180d0a8e59cb8cfc781f84ff.tar.gz cdo-90cdd8cd6f4785c4180d0a8e59cb8cfc781f84ff.tar.xz cdo-90cdd8cd6f4785c4180d0a8e59cb8cfc781f84ff.zip |
[416330] Fire CDOViewInvalidationEvent after possible conflicts have
been handled
https://bugs.eclipse.org/bugs/show_bug.cgi?id=416330
-rw-r--r-- | plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java index 02c5991ca6..2068ff09eb 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java @@ -863,23 +863,22 @@ public class CDOViewImpl extends AbstractCDOView clearResourcePathCacheIfNecessary(null); } - Map<CDOObject, Pair<CDORevision, CDORevisionDelta>> conflicts = null; List<CDORevisionDelta> deltas = new ArrayList<CDORevisionDelta>(); Map<CDOObject, CDORevisionDelta> revisionDeltas = new HashMap<CDOObject, CDORevisionDelta>(); Set<CDOObject> detachedObjects = new HashSet<CDOObject>(); + Map<CDOObject, Pair<CDORevision, CDORevisionDelta>> // conflicts = invalidate(allChangedObjects, allDetachedObjects, deltas, revisionDeltas, detachedObjects); - - sendInvalidationNotifications(revisionDeltas.keySet(), detachedObjects); - fireInvalidationEvent(lastUpdateTime, Collections.unmodifiableMap(revisionDeltas), - Collections.unmodifiableSet(detachedObjects)); - - // First handle the conflicts, if any. if (conflicts != null) { + // First handle the conflicts, if any. handleConflicts(conflicts, deltas); } + sendInvalidationNotifications(revisionDeltas.keySet(), detachedObjects); + fireInvalidationEvent(lastUpdateTime, Collections.unmodifiableMap(revisionDeltas), + Collections.unmodifiableSet(detachedObjects)); + // Then send the notifications. The deltas could have been modified by the conflict resolvers. if (!deltas.isEmpty() || !detachedObjects.isEmpty()) { |