Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPierre Guilet2019-08-07 05:11:55 -0400
committerPierre Guilet2019-08-20 04:07:45 -0400
commitd8b654d3b8e32a1d60374d89c5352027debbe59e (patch)
tree83ec76bd75cd14c7620f15a3ee2bb3b70d716699
parent5a1d40a6f97c012530249001d63348d0626aca8c (diff)
downloadorg.eclipse.sirius-d8b654d3b8e32a1d60374d89c5352027debbe59e.tar.gz
org.eclipse.sirius-d8b654d3b8e32a1d60374d89c5352027debbe59e.tar.xz
org.eclipse.sirius-d8b654d3b8e32a1d60374d89c5352027debbe59e.zip
[548427] Fix change id update with transient notification
Bug: 548427 Change-Id: I06945f13be0cb21cf91218c27c2c8d25029ac437 Signed-off-by: Pierre Guilet <pierre.guilet@obeo.fr>
-rw-r--r--plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/internal/session/danalysis/DAnalysisSessionImpl.java4
1 files changed, 2 insertions, 2 deletions
diff --git a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/internal/session/danalysis/DAnalysisSessionImpl.java b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/internal/session/danalysis/DAnalysisSessionImpl.java
index c29861837f..a6ab5d2dfd 100644
--- a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/internal/session/danalysis/DAnalysisSessionImpl.java
+++ b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/internal/session/danalysis/DAnalysisSessionImpl.java
@@ -38,7 +38,6 @@ import org.eclipse.emf.common.util.TreeIterator;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.Resource.Diagnostic;
import org.eclipse.emf.ecore.resource.ResourceSet;
@@ -91,6 +90,7 @@ import org.eclipse.sirius.business.internal.session.RepresentationNameListener;
import org.eclipse.sirius.business.internal.session.SessionEventBrokerImpl;
import org.eclipse.sirius.common.tools.DslCommonPlugin;
import org.eclipse.sirius.common.tools.api.interpreter.IInterpreter;
+import org.eclipse.sirius.common.tools.api.query.NotificationQuery;
import org.eclipse.sirius.common.tools.api.resource.ResourceSetSync;
import org.eclipse.sirius.common.tools.api.resource.ResourceSetSync.ResourceStatus;
import org.eclipse.sirius.common.tools.api.resource.ResourceSyncClient;
@@ -251,7 +251,7 @@ public class DAnalysisSessionImpl extends DAnalysisSessionEObjectImpl implements
while (notifIterator.hasNext()) {
Notification notification = notifIterator.next();
Object notifier = notification.getNotifier();
- if (notifier instanceof EObject && !(notification.getFeature() instanceof EStructuralFeature && ((EStructuralFeature) notification.getFeature()).isTransient())) {
+ if (notifier instanceof EObject && !new NotificationQuery(notification).isTransientNotification()) {
final DRepresentationDescriptor representationDescriptor = getDRepresentationDescriptor((EObject) notifier);
if (representationDescriptor != null) {
RecordingCommand changeIdRecordingCommand = new RecordingCommand(transactionalEditingDomain) {

Back to the top