diff --git a/org.fortiss.af3.exploration.alg/trunk/src/org/fortiss/af3/exploration/alg/service/internal/ExplorationTransformationService.java b/org.fortiss.af3.exploration.alg/trunk/src/org/fortiss/af3/exploration/alg/service/internal/ExplorationTransformationService.java index b466ad1303cfdc2224fd410d338acf0f26c3189b..590e717534af3e4340437e010fe0a725e405a6a3 100644 --- a/org.fortiss.af3.exploration.alg/trunk/src/org/fortiss/af3/exploration/alg/service/internal/ExplorationTransformationService.java +++ b/org.fortiss.af3.exploration.alg/trunk/src/org/fortiss/af3/exploration/alg/service/internal/ExplorationTransformationService.java @@ -18,6 +18,8 @@ $Id: ExplorationTransformationService.java 3730 2016-10-19 15:43:43Z diewald $ package org.fortiss.af3.exploration.alg.service.internal; import static org.fortiss.af3.exploration.alg.util.ExplorationAlgUtils.pickSubTypesOf; +import static org.fortiss.tooling.base.ui.annotation.view.AnnotationViewPartBase.isUpdateEnabled; +import static org.fortiss.tooling.base.ui.annotation.view.AnnotationViewPartBase.setUpdateEnabled; import java.util.ArrayList; import java.util.Collection; @@ -90,6 +92,9 @@ public class ExplorationTransformationService<T extends ITransformationModule<?> /** The {@link ITransformationModule} class attribute name. */ private static final String HANDLER_CLASS_ATTRIBUTE_NAME = "module"; + /** Cache the Annotation View's update status. */ + private boolean annotationUpdateEnabled; + /** Constructor. */ private ExplorationTransformationService() { // Prevent direct instantiation. @@ -264,6 +269,13 @@ public class ExplorationTransformationService<T extends ITransformationModule<?> ((ITransformationStrategy<?>)moduleInstance).setModelContext(modelContext); ((ITransformationStrategy<?>)moduleInstance).setModelName(transformedModelName); } + + // Disable any Annotation view update + if(isUpdateEnabled()) { + annotationUpdateEnabled = true; + setUpdateEnabled(false); + } + SubClassToInstanceMap<U> transformedModels = MutableSubClassToInstanceMap.create(); moduleInstance.transform(TransformationState.INITIALIZING, context, baseModels, solutionEncodings, transformedModels, null); @@ -284,6 +296,11 @@ public class ExplorationTransformationService<T extends ITransformationModule<?> ((ITransformationStrategy<?>)moduleInstance).addModelToProject(fp, modelContext); } + // Disable any Annotation view update + if(annotationUpdateEnabled) { + setUpdateEnabled(true); + } + ClassToInstanceMap<U> retModels = MutableClassToInstanceMap.create(); for(Class<? extends EObject> retType : transformedModelTypes) { assert (transformedModels.get(retType) != null);