Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2013-09-02 07:58:30 +0000
committerEike Stepper2013-09-02 07:58:30 +0000
commit90cdd8cd6f4785c4180d0a8e59cb8cfc781f84ff (patch)
treeab4eef6013214be32965ff697d853e2baa09ecaf
parentc7ca0e7c3c89c489f0f33c575b6171dfe23d7f7b (diff)
downloadcdo-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.java13
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())
{

Back to the top