/***************************************************************************** * Copyright (c) 2010 Atos Origin. * * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Atos Origin - Initial API and implementation * *****************************************************************************/ package org.eclipse.papyrus.uml.diagram.activity.edit.policies; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Map; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.gef.EditPart; import org.eclipse.gef.commands.Command; import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil; import org.eclipse.gmf.runtime.diagram.ui.commands.DeferredLayoutCommand; import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; import org.eclipse.gmf.runtime.diagram.ui.commands.SetViewMutabilityCommand; import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.CanonicalEditPolicy; import org.eclipse.gmf.runtime.diagram.ui.requests.CreateConnectionViewRequest; import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest; import org.eclipse.gmf.runtime.diagram.ui.requests.RequestConstants; import org.eclipse.gmf.runtime.emf.core.util.EObjectAdapter; import org.eclipse.gmf.runtime.notation.Diagram; import org.eclipse.gmf.runtime.notation.Edge; import org.eclipse.gmf.runtime.notation.Node; import org.eclipse.gmf.runtime.notation.View; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.AcceptEventActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInCallBeActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInCallOpActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInCallOpActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInOpaqueActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInSendObjActAsReqEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInSendObjActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInSendSigActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInSendSigActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityDiagramEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityEditPartCN; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityFinalNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityParameterNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityPartitionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.AddStructuralFeatureValueActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.AddVariableValueActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.BroadcastSignalActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallOperationActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CentralBufferNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CommentEditPartCN; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConditionalNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintAsLocalPostcondEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintAsLocalPrecondEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintEditPartCN; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ControlFlowEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CreateObjectActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DataStoreNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DecisionNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DestroyObjectActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DurationConstraintAsLocalPostcondEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DurationConstraintAsLocalPrecondEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExceptionHandlerEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionNodeAsInEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionNodeAsOutEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionRegionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.FlowFinalNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ForkNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InitialNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInAddStructuralFeatureValueActionAsObjectEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInAddStructuralFeatureValueActionAsValueEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInAddVariableValueActionAsInsertAtEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInAddVariableValueActionAsValueEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInBroadcastSignalActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInCallBeActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInCallOpActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInCallOpActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInDestroyObjectActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInLoopNodeAsVariableEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInOpaqueActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInReadStructuralFeatureAsObjectEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInSendObjActAsReqEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInSendObjActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInSendSigActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInSendSigActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InterruptibleActivityRegionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.IntervalConstraintAsLocalPostcondEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.IntervalConstraintAsLocalPrecondEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.JoinNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.LoopNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.MergeNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ObjectFlowEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OpaqueActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInAcceptEventActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInAddStructuralFeatureValueActionAsResultEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInCallBeActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInCallOpActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInCreateObjectActionAsResultEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsBodyOutputEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsLoopVariableEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsResultEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInOpaqueActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInReadStructuralFeatureAsResultEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInReadVariableActionAsResultEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInValSpecActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadSelfActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadSelfActionOutputPinEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadStructuralFeatureActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadVariableActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.SendObjectActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.SendSignalActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.SequenceNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ShapeNamedElementEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.StructuredActivityNodeEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.TimeConstraintAsLocalPostcondEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.TimeConstraintAsLocalPrecondEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInCallBeActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInCallOpActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInCallOpActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInOpaqueActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInSendObjActAsReqEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInSendObjActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInSendSigActAsTargetEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInSendSigActEditPart; import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValueSpecificationActionEditPart; import org.eclipse.papyrus.uml.diagram.activity.part.UMLDiagramUpdater; import org.eclipse.papyrus.uml.diagram.activity.part.UMLLinkDescriptor; import org.eclipse.papyrus.uml.diagram.activity.part.UMLNodeDescriptor; import org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry; import org.eclipse.uml2.uml.UMLPackage; /** * @generated */ public class ActivityDiagramCanonicalEditPolicy extends CanonicalEditPolicy { /** * @generated */ protected void refreshOnActivate() { // Need to activate editpart children before invoking the canonical refresh for EditParts to add event listeners List<?> c = getHost().getChildren(); for(int i = 0; i < c.size(); i++) { ((EditPart)c.get(i)).activate(); } super.refreshOnActivate(); } /** * @generated */ protected EStructuralFeature getFeatureToSynchronize() { return UMLPackage.eINSTANCE.getPackage_PackagedElement(); } /** * @generated */ @SuppressWarnings("rawtypes") protected List getSemanticChildrenList() { View viewObject = (View)getHost().getModel(); LinkedList<EObject> result = new LinkedList<EObject>(); List<UMLNodeDescriptor> childDescriptors = UMLDiagramUpdater.getPackage_1000SemanticChildren(viewObject); for(UMLNodeDescriptor d : childDescriptors) { result.add(d.getModelElement()); } return result; } /** * @generated */ protected boolean isOrphaned(Collection<EObject> semanticChildren, final View view) { return isMyDiagramElement(view) && !semanticChildren.contains(view.getElement()); } /** * @generated */ private boolean isMyDiagramElement(View view) { return ActivityEditPart.VISUAL_ID == UMLVisualIDRegistry.getVisualID(view); } /** * @generated */ protected void refreshSemantic() { if(resolveSemanticElement() == null) { return; } LinkedList<IAdaptable> createdViews = new LinkedList<IAdaptable>(); List<UMLNodeDescriptor> childDescriptors = UMLDiagramUpdater.getPackage_1000SemanticChildren((View)getHost().getModel()); LinkedList<View> orphaned = new LinkedList<View>(); // we care to check only views we recognize as ours LinkedList<View> knownViewChildren = new LinkedList<View>(); for(View v : getViewChildren()) { if(isMyDiagramElement(v)) { knownViewChildren.add(v); } } // alternative to #cleanCanonicalSemanticChildren(getViewChildren(), semanticChildren) // // iteration happens over list of desired semantic elements, trying to find best matching View, while original CEP // iterates views, potentially losing view (size/bounds) information - i.e. if there are few views to reference same EObject, only last one // to answer isOrphaned == true will be used for the domain element representation, see #cleanCanonicalSemanticChildren() for(Iterator<UMLNodeDescriptor> descriptorsIterator = childDescriptors.iterator(); descriptorsIterator.hasNext();) { UMLNodeDescriptor next = descriptorsIterator.next(); String hint = UMLVisualIDRegistry.getType(next.getVisualID()); LinkedList<View> perfectMatch = new LinkedList<View>(); // both semanticElement and hint match that of NodeDescriptor for(View childView : getViewChildren()) { EObject semanticElement = childView.getElement(); if(next.getModelElement().equals(semanticElement)) { if(hint.equals(childView.getType())) { perfectMatch.add(childView); // actually, can stop iteration over view children here, but // may want to use not the first view but last one as a 'real' match (the way original CEP does // with its trick with viewToSemanticMap inside #cleanCanonicalSemanticChildren } } } if(perfectMatch.size() > 0) { descriptorsIterator.remove(); // precise match found no need to create anything for the NodeDescriptor // use only one view (first or last?), keep rest as orphaned for further consideration knownViewChildren.remove(perfectMatch.getFirst()); } } // those left in knownViewChildren are subject to removal - they are our diagram elements we didn't find match to, // or those we have potential matches to, and thus need to be recreated, preserving size/location information. orphaned.addAll(knownViewChildren); // ArrayList<CreateViewRequest.ViewDescriptor> viewDescriptors = new ArrayList<CreateViewRequest.ViewDescriptor>(childDescriptors.size()); for(UMLNodeDescriptor next : childDescriptors) { String hint = UMLVisualIDRegistry.getType(next.getVisualID()); IAdaptable elementAdapter = new CanonicalElementAdapter(next.getModelElement(), hint); CreateViewRequest.ViewDescriptor descriptor = new CreateViewRequest.ViewDescriptor(elementAdapter, Node.class, hint, ViewUtil.APPEND, false, host().getDiagramPreferencesHint()); viewDescriptors.add(descriptor); } boolean changed = deleteViews(orphaned.iterator()); // CreateViewRequest request = getCreateViewRequest(viewDescriptors); Command cmd = getCreateViewCommand(request); if(cmd != null && cmd.canExecute()) { SetViewMutabilityCommand.makeMutable(new EObjectAdapter(host().getNotationView())).execute(); executeCommand(cmd); @SuppressWarnings("unchecked") List<IAdaptable> nl = (List<IAdaptable>)request.getNewObject(); createdViews.addAll(nl); } if(changed || createdViews.size() > 0) { postProcessRefreshSemantic(createdViews); } Collection<IAdaptable> createdConnectionViews = refreshConnections(); if(createdViews.size() > 1) { // perform a layout of the container DeferredLayoutCommand layoutCmd = new DeferredLayoutCommand(host().getEditingDomain(), createdViews, host()); executeCommand(new ICommandProxy(layoutCmd)); } createdViews.addAll(createdConnectionViews); makeViewsImmutable(createdViews); } /** * @generated */ private Diagram getDiagram() { return ((View)getHost().getModel()).getDiagram(); } /** * @generated */ private Collection<IAdaptable> refreshConnections() { Map<EObject, View> domain2NotationMap = new HashMap<EObject, View>(); Collection<UMLLinkDescriptor> linkDescriptors = collectAllLinks(getDiagram(), domain2NotationMap); Collection existingLinks = new LinkedList(getDiagram().getEdges()); for(Iterator linksIterator = existingLinks.iterator(); linksIterator.hasNext();) { Edge nextDiagramLink = (Edge)linksIterator.next(); int diagramLinkVisualID = UMLVisualIDRegistry.getVisualID(nextDiagramLink); if(diagramLinkVisualID == -1) { if(nextDiagramLink.getSource() != null && nextDiagramLink.getTarget() != null) { linksIterator.remove(); } continue; } EObject diagramLinkObject = nextDiagramLink.getElement(); EObject diagramLinkSrc = nextDiagramLink.getSource().getElement(); EObject diagramLinkDst = nextDiagramLink.getTarget().getElement(); for(Iterator<UMLLinkDescriptor> linkDescriptorsIterator = linkDescriptors.iterator(); linkDescriptorsIterator.hasNext();) { UMLLinkDescriptor nextLinkDescriptor = linkDescriptorsIterator.next(); if(diagramLinkObject == nextLinkDescriptor.getModelElement() && diagramLinkSrc == nextLinkDescriptor.getSource() && diagramLinkDst == nextLinkDescriptor.getDestination() && diagramLinkVisualID == nextLinkDescriptor.getVisualID()) { linksIterator.remove(); linkDescriptorsIterator.remove(); break; } } } deleteViews(existingLinks.iterator()); return createConnections(linkDescriptors, domain2NotationMap); } /** * @generated */ private Collection<UMLLinkDescriptor> collectAllLinks(View view, Map<EObject, View> domain2NotationMap) { if(!ActivityDiagramEditPart.MODEL_ID.equals(UMLVisualIDRegistry.getModelID(view))) { return Collections.emptyList(); } LinkedList<UMLLinkDescriptor> result = new LinkedList<UMLLinkDescriptor>(); switch(UMLVisualIDRegistry.getVisualID(view)) { case ActivityDiagramEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getPackage_1000ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActivityEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActivity_2001ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InitialNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInitialNode_3004ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActivityFinalNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActivityFinalNode_3005ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case FlowFinalNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getFlowFinalNode_3006ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OpaqueActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOpaqueAction_3007ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValuePinInOpaqueActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValuePin_3015ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActionInputPinInOpaqueActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActionInputPin_3016ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInOpaqueActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3013ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInOpaqueActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3014ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case CallBehaviorActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getCallBehaviorAction_3008ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValuePinInCallBeActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValuePin_3017ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActionInputPinInCallBeActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActionInputPin_3018ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInCallBeActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3019ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInCallBeActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3020ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case CallOperationActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getCallOperationAction_3010ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActionInputPinInCallOpActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActionInputPin_3021ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValuePinInCallOpActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValuePin_3022ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInCallOpActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3023ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInCallOpActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3024ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValuePinInCallOpActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValuePin_3025ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActionInputPinInCallOpActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActionInputPin_3026ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInCallOpActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3027ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case DurationConstraintAsLocalPrecondEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getDurationConstraint_3034ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case DurationConstraintAsLocalPostcondEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getDurationConstraint_3035ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case TimeConstraintAsLocalPrecondEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getTimeConstraint_3036ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case TimeConstraintAsLocalPostcondEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getTimeConstraint_3037ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case IntervalConstraintAsLocalPrecondEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getIntervalConstraint_3032ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case IntervalConstraintAsLocalPostcondEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getIntervalConstraint_3033ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ConstraintAsLocalPrecondEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getConstraint_3011ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ConstraintAsLocalPostcondEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getConstraint_3012ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case DecisionNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getDecisionNode_3038ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case MergeNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getMergeNode_3039ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ForkNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getForkNode_3040ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case JoinNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getJoinNode_3041ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case DataStoreNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getDataStoreNode_3078ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case SendObjectActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getSendObjectAction_3042ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValuePinInSendObjActAsReqEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValuePin_3046ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActionInputPinInSendObjActAsReqEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActionInputPin_3047ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInSendObjActAsReqEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3048ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValuePinInSendObjActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValuePin_3049ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActionInputPinInSendObjActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActionInputPin_3050ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInSendObjActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3051ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case SendSignalActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getSendSignalAction_3052ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActionInputPinInSendSigActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActionInputPin_3053ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValuePinInSendSigActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValuePin_3054ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInSendSigActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3055ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValuePinInSendSigActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValuePin_3060ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActionInputPinInSendSigActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActionInputPin_3061ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInSendSigActAsTargetEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3062ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActivityParameterNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActivityParameterNode_3059ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case AcceptEventActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getAcceptEventAction_3063ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInAcceptEventActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3064ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ValueSpecificationActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getValueSpecificationAction_3076ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInValSpecActEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3077ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ConditionalNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getConditionalNode_3069ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ExpansionRegionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getExpansionRegion_3070ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ExpansionNodeAsInEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getExpansionNode_3074ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ExpansionNodeAsOutEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getExpansionNode_3075ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case LoopNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getLoopNode_3071ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInLoopNodeAsBodyOutputEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3109ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInLoopNodeAsLoopVariableEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3110ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInLoopNodeAsResultEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3111ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case SequenceNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getSequenceNode_3073ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case StructuredActivityNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getStructuredActivityNode_3065ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInLoopNodeAsVariableEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3105ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActivityPartitionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActivityPartition_3067ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InterruptibleActivityRegionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInterruptibleActivityRegion_3068ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case CommentEditPartCN.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getComment_3080ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ReadSelfActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getReadSelfAction_3081ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ReadSelfActionOutputPinEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3084ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ActivityEditPartCN.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getActivity_3083ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case CreateObjectActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getCreateObjectAction_3086ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInCreateObjectActionAsResultEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3087ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ShapeNamedElementEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getNamedElement_3085ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ReadStructuralFeatureActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getReadStructuralFeatureAction_3088ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInReadStructuralFeatureAsObjectEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3089ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInReadStructuralFeatureAsResultEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3090ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case AddStructuralFeatureValueActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getAddStructuralFeatureValueAction_3091ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInAddStructuralFeatureValueActionAsObjectEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3092ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInAddStructuralFeatureValueActionAsValueEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3093ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInAddStructuralFeatureValueActionAsResultEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3094ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case DestroyObjectActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getDestroyObjectAction_3095ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInDestroyObjectActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3096ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ReadVariableActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getReadVariableAction_3097ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case OutputPinInReadVariableActionAsResultEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getOutputPin_3098ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case AddVariableValueActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getAddVariableValueAction_3099ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInAddVariableValueActionAsInsertAtEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3100ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInAddVariableValueActionAsValueEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3101ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case BroadcastSignalActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getBroadcastSignalAction_3102ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case InputPinInBroadcastSignalActionEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getInputPin_3103ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case CentralBufferNodeEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getCentralBufferNode_3104ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ConstraintEditPartCN.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getConstraint_3112ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ObjectFlowEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getObjectFlow_4003ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ControlFlowEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getControlFlow_4004ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } case ExceptionHandlerEditPart.VISUAL_ID: { if(!domain2NotationMap.containsKey(view.getElement())) { result.addAll(UMLDiagramUpdater.getExceptionHandler_4005ContainedLinks(view)); } if(!domain2NotationMap.containsKey(view.getElement()) || view.getEAnnotation("Shortcut") == null) { //$NON-NLS-1$ domain2NotationMap.put(view.getElement(), view); } break; } } for(Iterator children = view.getChildren().iterator(); children.hasNext();) { result.addAll(collectAllLinks((View)children.next(), domain2NotationMap)); } for(Iterator edges = view.getSourceEdges().iterator(); edges.hasNext();) { result.addAll(collectAllLinks((View)edges.next(), domain2NotationMap)); } return result; } /** * @generated */ private Collection<IAdaptable> createConnections(Collection<UMLLinkDescriptor> linkDescriptors, Map<EObject, View> domain2NotationMap) { LinkedList<IAdaptable> adapters = new LinkedList<IAdaptable>(); for(UMLLinkDescriptor nextLinkDescriptor : linkDescriptors) { EditPart sourceEditPart = getEditPart(nextLinkDescriptor.getSource(), domain2NotationMap); EditPart targetEditPart = getEditPart(nextLinkDescriptor.getDestination(), domain2NotationMap); if(sourceEditPart == null || targetEditPart == null) { continue; } CreateConnectionViewRequest.ConnectionViewDescriptor descriptor = new CreateConnectionViewRequest.ConnectionViewDescriptor(nextLinkDescriptor.getSemanticAdapter(), UMLVisualIDRegistry.getType(nextLinkDescriptor.getVisualID()), ViewUtil.APPEND, false, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint()); CreateConnectionViewRequest ccr = new CreateConnectionViewRequest(descriptor); ccr.setType(RequestConstants.REQ_CONNECTION_START); ccr.setSourceEditPart(sourceEditPart); sourceEditPart.getCommand(ccr); ccr.setTargetEditPart(targetEditPart); ccr.setType(RequestConstants.REQ_CONNECTION_END); Command cmd = targetEditPart.getCommand(ccr); if(cmd != null && cmd.canExecute()) { executeCommand(cmd); IAdaptable viewAdapter = (IAdaptable)ccr.getNewObject(); if(viewAdapter != null) { adapters.add(viewAdapter); } } } return adapters; } /** * @generated */ private EditPart getEditPart(EObject domainModelElement, Map<EObject, View> domain2NotationMap) { View view = (View)domain2NotationMap.get(domainModelElement); if(view != null) { return (EditPart)getHost().getViewer().getEditPartRegistry().get(view); } return null; } }