package org.eclipse.uml2.diagram.timing.part; import java.util.Collection; import java.util.Collections; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Map; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.gmf.runtime.notation.View; import org.eclipse.uml2.diagram.common.genapi.IDiagramUpdater; import org.eclipse.uml2.diagram.common.genapi.IUpdaterLinkDescriptor; import org.eclipse.uml2.diagram.common.genapi.IUpdaterNodeDescriptor; import org.eclipse.uml2.diagram.timing.edit.parts.DBlockEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DFrameContainerEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DFrameEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DIntervalEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DMessageEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DSegmentEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DSegmentEndEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DSegmentMiddlePointEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DSegmentStartEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DStateSwitchEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DTickEditPart; import org.eclipse.uml2.diagram.timing.edit.parts.DValueLineEditPart; import org.eclipse.uml2.diagram.timing.model.timingd.DBlock; import org.eclipse.uml2.diagram.timing.model.timingd.DFrame; import org.eclipse.uml2.diagram.timing.model.timingd.DFrameContainer; import org.eclipse.uml2.diagram.timing.model.timingd.DInterval; import org.eclipse.uml2.diagram.timing.model.timingd.DMessage; import org.eclipse.uml2.diagram.timing.model.timingd.DSegment; import org.eclipse.uml2.diagram.timing.model.timingd.DSegmentElement; import org.eclipse.uml2.diagram.timing.model.timingd.DSegmentEnd; import org.eclipse.uml2.diagram.timing.model.timingd.DSegmentMiddlePoint; import org.eclipse.uml2.diagram.timing.model.timingd.DSegmentStart; import org.eclipse.uml2.diagram.timing.model.timingd.DStateSwitch; import org.eclipse.uml2.diagram.timing.model.timingd.DTick; import org.eclipse.uml2.diagram.timing.model.timingd.DValueLine; import org.eclipse.uml2.diagram.timing.model.timingd.TimingDPackage; import org.eclipse.uml2.diagram.timing.providers.TimingDElementTypes; /** * @generated */ @SuppressWarnings("unchecked") public class TimingDDiagramUpdater { /** * @generated */ public static List getSemanticChildren(View view) { switch (TimingDVisualIDRegistry.getVisualID(view)) { case DFrameEditPart.VISUAL_ID: return getDFrame_2001SemanticChildren(view); case DBlockEditPart.VISUAL_ID: return getDBlock_3001SemanticChildren(view); case DValueLineEditPart.VISUAL_ID: return getDValueLine_3002SemanticChildren(view); case DSegmentEditPart.VISUAL_ID: return getDSegment_3003SemanticChildren(view); case DFrameContainerEditPart.VISUAL_ID: return getDFrameContainer_1000SemanticChildren(view); } return Collections.EMPTY_LIST; } /** * @generated */ public static List getDFrame_2001SemanticChildren(View view) { if (!view.isSetElement()) { return Collections.EMPTY_LIST; } DFrame modelElement = (DFrame) view.getElement(); List result = new LinkedList(); for (Iterator it = modelElement.getBlocks().iterator(); it.hasNext();) { DBlock childElement = (DBlock) it.next(); int visualID = TimingDVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == DBlockEditPart.VISUAL_ID) { result.add(new TimingDNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List getDBlock_3001SemanticChildren(View view) { if (!view.isSetElement()) { return Collections.EMPTY_LIST; } DBlock modelElement = (DBlock) view.getElement(); List result = new LinkedList(); for (Iterator it = modelElement.getStates().iterator(); it.hasNext();) { DValueLine childElement = (DValueLine) it.next(); int visualID = TimingDVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == DValueLineEditPart.VISUAL_ID) { result.add(new TimingDNodeDescriptor(childElement, visualID)); continue; } } for (Iterator it = modelElement.getTicks().iterator(); it.hasNext();) { DTick childElement = (DTick) it.next(); int visualID = TimingDVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == DTickEditPart.VISUAL_ID) { result.add(new TimingDNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List getDValueLine_3002SemanticChildren(View view) { if (!view.isSetElement()) { return Collections.EMPTY_LIST; } DValueLine modelElement = (DValueLine) view.getElement(); List result = new LinkedList(); for (Iterator it = modelElement.getSegments().iterator(); it.hasNext();) { DSegment childElement = (DSegment) it.next(); int visualID = TimingDVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == DSegmentEditPart.VISUAL_ID) { result.add(new TimingDNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List getDSegment_3003SemanticChildren(View view) { if (!view.isSetElement()) { return Collections.EMPTY_LIST; } DSegment modelElement = (DSegment) view.getElement(); List result = new LinkedList(); for (Iterator it = modelElement.getMiddlePoints().iterator(); it.hasNext();) { DSegmentMiddlePoint childElement = (DSegmentMiddlePoint) it.next(); int visualID = TimingDVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == DSegmentMiddlePointEditPart.VISUAL_ID) { result.add(new TimingDNodeDescriptor(childElement, visualID)); continue; } } { DSegmentStart childElement = modelElement.getStart(); int visualID = TimingDVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == DSegmentStartEditPart.VISUAL_ID) { result.add(new TimingDNodeDescriptor(childElement, visualID)); } } { DSegmentEnd childElement = modelElement.getEnd(); int visualID = TimingDVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == DSegmentEndEditPart.VISUAL_ID) { result.add(new TimingDNodeDescriptor(childElement, visualID)); } } return result; } /** * @generated */ public static List getDFrameContainer_1000SemanticChildren(View view) { if (!view.isSetElement()) { return Collections.EMPTY_LIST; } DFrameContainer modelElement = (DFrameContainer) view.getElement(); List result = new LinkedList(); for (Iterator it = modelElement.getFrames().iterator(); it.hasNext();) { DFrame childElement = (DFrame) it.next(); int visualID = TimingDVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == DFrameEditPart.VISUAL_ID) { result.add(new TimingDNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List getContainedLinks(View view) { switch (TimingDVisualIDRegistry.getVisualID(view)) { case DFrameContainerEditPart.VISUAL_ID: return getDFrameContainer_1000ContainedLinks(view); case DFrameEditPart.VISUAL_ID: return getDFrame_2001ContainedLinks(view); case DBlockEditPart.VISUAL_ID: return getDBlock_3001ContainedLinks(view); case DValueLineEditPart.VISUAL_ID: return getDValueLine_3002ContainedLinks(view); case DSegmentEditPart.VISUAL_ID: return getDSegment_3003ContainedLinks(view); case DSegmentMiddlePointEditPart.VISUAL_ID: return getDSegmentMiddlePoint_3004ContainedLinks(view); case DSegmentStartEditPart.VISUAL_ID: return getDSegmentStart_3005ContainedLinks(view); case DSegmentEndEditPart.VISUAL_ID: return getDSegmentEnd_3006ContainedLinks(view); case DTickEditPart.VISUAL_ID: return getDTick_3007ContainedLinks(view); case DStateSwitchEditPart.VISUAL_ID: return getDStateSwitch_4001ContainedLinks(view); case DMessageEditPart.VISUAL_ID: return getDMessage_4002ContainedLinks(view); case DIntervalEditPart.VISUAL_ID: return getDInterval_4003ContainedLinks(view); } return Collections.EMPTY_LIST; } /** * @generated */ public static List getIncomingLinks(View view) { switch (TimingDVisualIDRegistry.getVisualID(view)) { case DFrameEditPart.VISUAL_ID: return getDFrame_2001IncomingLinks(view); case DBlockEditPart.VISUAL_ID: return getDBlock_3001IncomingLinks(view); case DValueLineEditPart.VISUAL_ID: return getDValueLine_3002IncomingLinks(view); case DSegmentEditPart.VISUAL_ID: return getDSegment_3003IncomingLinks(view); case DSegmentMiddlePointEditPart.VISUAL_ID: return getDSegmentMiddlePoint_3004IncomingLinks(view); case DSegmentStartEditPart.VISUAL_ID: return getDSegmentStart_3005IncomingLinks(view); case DSegmentEndEditPart.VISUAL_ID: return getDSegmentEnd_3006IncomingLinks(view); case DTickEditPart.VISUAL_ID: return getDTick_3007IncomingLinks(view); case DStateSwitchEditPart.VISUAL_ID: return getDStateSwitch_4001IncomingLinks(view); case DMessageEditPart.VISUAL_ID: return getDMessage_4002IncomingLinks(view); case DIntervalEditPart.VISUAL_ID: return getDInterval_4003IncomingLinks(view); } return Collections.EMPTY_LIST; } /** * @generated */ public static List getOutgoingLinks(View view) { switch (TimingDVisualIDRegistry.getVisualID(view)) { case DFrameEditPart.VISUAL_ID: return getDFrame_2001OutgoingLinks(view); case DBlockEditPart.VISUAL_ID: return getDBlock_3001OutgoingLinks(view); case DValueLineEditPart.VISUAL_ID: return getDValueLine_3002OutgoingLinks(view); case DSegmentEditPart.VISUAL_ID: return getDSegment_3003OutgoingLinks(view); case DSegmentMiddlePointEditPart.VISUAL_ID: return getDSegmentMiddlePoint_3004OutgoingLinks(view); case DSegmentStartEditPart.VISUAL_ID: return getDSegmentStart_3005OutgoingLinks(view); case DSegmentEndEditPart.VISUAL_ID: return getDSegmentEnd_3006OutgoingLinks(view); case DTickEditPart.VISUAL_ID: return getDTick_3007OutgoingLinks(view); case DStateSwitchEditPart.VISUAL_ID: return getDStateSwitch_4001OutgoingLinks(view); case DMessageEditPart.VISUAL_ID: return getDMessage_4002OutgoingLinks(view); case DIntervalEditPart.VISUAL_ID: return getDInterval_4003OutgoingLinks(view); } return Collections.EMPTY_LIST; } /** * @generated */ public static List getDFrameContainer_1000ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDFrame_2001ContainedLinks(View view) { DFrame modelElement = (DFrame) view.getElement(); List result = new LinkedList(); result.addAll(getContainedTypeModelFacetLinks_DMessage_4002(modelElement)); result.addAll(getContainedTypeModelFacetLinks_DInterval_4003(modelElement)); return result; } /** * @generated */ public static List getDBlock_3001ContainedLinks(View view) { DBlock modelElement = (DBlock) view.getElement(); List result = new LinkedList(); result.addAll(getContainedTypeModelFacetLinks_DStateSwitch_4001(modelElement)); return result; } /** * @generated */ public static List getDValueLine_3002ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDSegment_3003ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDSegmentMiddlePoint_3004ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDSegmentStart_3005ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDSegmentEnd_3006ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDTick_3007ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDStateSwitch_4001ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDMessage_4002ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDInterval_4003ContainedLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDFrame_2001IncomingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDBlock_3001IncomingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDValueLine_3002IncomingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDSegment_3003IncomingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDSegmentMiddlePoint_3004IncomingLinks(View view) { DSegmentMiddlePoint modelElement = (DSegmentMiddlePoint) view.getElement(); Map crossReferences = EcoreUtil.CrossReferencer.find(view.eResource().getResourceSet().getResources()); List result = new LinkedList(); result.addAll(getIncomingTypeModelFacetLinks_DMessage_4002(modelElement, crossReferences)); return result; } /** * @generated */ public static List getDSegmentStart_3005IncomingLinks(View view) { DSegmentStart modelElement = (DSegmentStart) view.getElement(); Map crossReferences = EcoreUtil.CrossReferencer.find(view.eResource().getResourceSet().getResources()); List result = new LinkedList(); result.addAll(getIncomingTypeModelFacetLinks_DStateSwitch_4001(modelElement, crossReferences)); result.addAll(getIncomingTypeModelFacetLinks_DMessage_4002(modelElement, crossReferences)); return result; } /** * @generated */ public static List getDSegmentEnd_3006IncomingLinks(View view) { DSegmentEnd modelElement = (DSegmentEnd) view.getElement(); Map crossReferences = EcoreUtil.CrossReferencer.find(view.eResource().getResourceSet().getResources()); List result = new LinkedList(); result.addAll(getIncomingTypeModelFacetLinks_DMessage_4002(modelElement, crossReferences)); return result; } /** * @generated */ public static List getDTick_3007IncomingLinks(View view) { DTick modelElement = (DTick) view.getElement(); Map crossReferences = EcoreUtil.CrossReferencer.find(view.eResource().getResourceSet().getResources()); List result = new LinkedList(); result.addAll(getIncomingTypeModelFacetLinks_DInterval_4003(modelElement, crossReferences)); return result; } /** * @generated */ public static List getDStateSwitch_4001IncomingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDMessage_4002IncomingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDInterval_4003IncomingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDFrame_2001OutgoingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDBlock_3001OutgoingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDValueLine_3002OutgoingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDSegment_3003OutgoingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDSegmentMiddlePoint_3004OutgoingLinks(View view) { DSegmentMiddlePoint modelElement = (DSegmentMiddlePoint) view.getElement(); List result = new LinkedList(); result.addAll(getOutgoingTypeModelFacetLinks_DMessage_4002(modelElement)); return result; } /** * @generated */ public static List getDSegmentStart_3005OutgoingLinks(View view) { DSegmentStart modelElement = (DSegmentStart) view.getElement(); List result = new LinkedList(); result.addAll(getOutgoingTypeModelFacetLinks_DMessage_4002(modelElement)); return result; } /** * @generated */ public static List getDSegmentEnd_3006OutgoingLinks(View view) { DSegmentEnd modelElement = (DSegmentEnd) view.getElement(); List result = new LinkedList(); result.addAll(getOutgoingTypeModelFacetLinks_DStateSwitch_4001(modelElement)); result.addAll(getOutgoingTypeModelFacetLinks_DMessage_4002(modelElement)); return result; } /** * @generated */ public static List getDTick_3007OutgoingLinks(View view) { DTick modelElement = (DTick) view.getElement(); List result = new LinkedList(); result.addAll(getOutgoingTypeModelFacetLinks_DInterval_4003(modelElement)); return result; } /** * @generated */ public static List getDStateSwitch_4001OutgoingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDMessage_4002OutgoingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ public static List getDInterval_4003OutgoingLinks(View view) { return Collections.EMPTY_LIST; } /** * @generated */ private static Collection getContainedTypeModelFacetLinks_DStateSwitch_4001(DBlock container) { Collection result = new LinkedList(); for (Iterator links = container.getSwitches().iterator(); links.hasNext();) { EObject linkObject = (EObject) links.next(); if (false == linkObject instanceof DStateSwitch) { continue; } DStateSwitch link = (DStateSwitch) linkObject; if (DStateSwitchEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DSegmentStart dst = link.getToSegmentStart(); DSegmentEnd src = link.getFromSegmentEnd(); result.add(new TimingDLinkDescriptor(src, dst, link, TimingDElementTypes.DStateSwitch_4001, DStateSwitchEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection getContainedTypeModelFacetLinks_DMessage_4002(DFrame container) { Collection result = new LinkedList(); for (Iterator links = container.getMessages().iterator(); links.hasNext();) { EObject linkObject = (EObject) links.next(); if (false == linkObject instanceof DMessage) { continue; } DMessage link = (DMessage) linkObject; if (DMessageEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DSegmentElement dst = link.getMessageTarget(); DSegmentElement src = link.getMessageSource(); result.add(new TimingDLinkDescriptor(src, dst, link, TimingDElementTypes.DMessage_4002, DMessageEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection getContainedTypeModelFacetLinks_DInterval_4003(DFrame container) { Collection result = new LinkedList(); for (Iterator links = container.getIntervals().iterator(); links.hasNext();) { EObject linkObject = (EObject) links.next(); if (false == linkObject instanceof DInterval) { continue; } DInterval link = (DInterval) linkObject; if (DIntervalEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DTick dst = link.getToTick(); DTick src = link.getFromTick(); result.add(new TimingDLinkDescriptor(src, dst, link, TimingDElementTypes.DInterval_4003, DIntervalEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection getIncomingTypeModelFacetLinks_DStateSwitch_4001(DSegmentStart target, Map crossReferences) { Collection result = new LinkedList(); Collection settings = (Collection) crossReferences.get(target); for (Iterator it = settings.iterator(); it.hasNext();) { EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it.next(); if (setting.getEStructuralFeature() != TimingDPackage.eINSTANCE.getDStateSwitch_ToSegmentStart() || false == setting.getEObject() instanceof DStateSwitch) { continue; } DStateSwitch link = (DStateSwitch) setting.getEObject(); if (DStateSwitchEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DSegmentEnd src = link.getFromSegmentEnd(); result.add(new TimingDLinkDescriptor(src, target, link, TimingDElementTypes.DStateSwitch_4001, DStateSwitchEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection getIncomingTypeModelFacetLinks_DMessage_4002(DSegmentElement target, Map crossReferences) { Collection result = new LinkedList(); Collection settings = (Collection) crossReferences.get(target); for (Iterator it = settings.iterator(); it.hasNext();) { EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it.next(); if (setting.getEStructuralFeature() != TimingDPackage.eINSTANCE.getDMessage_MessageTarget() || false == setting.getEObject() instanceof DMessage) { continue; } DMessage link = (DMessage) setting.getEObject(); if (DMessageEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DSegmentElement src = link.getMessageSource(); result.add(new TimingDLinkDescriptor(src, target, link, TimingDElementTypes.DMessage_4002, DMessageEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection getIncomingTypeModelFacetLinks_DInterval_4003(DTick target, Map crossReferences) { Collection result = new LinkedList(); Collection settings = (Collection) crossReferences.get(target); for (Iterator it = settings.iterator(); it.hasNext();) { EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it.next(); if (setting.getEStructuralFeature() != TimingDPackage.eINSTANCE.getDInterval_ToTick() || false == setting.getEObject() instanceof DInterval) { continue; } DInterval link = (DInterval) setting.getEObject(); if (DIntervalEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DTick src = link.getFromTick(); result.add(new TimingDLinkDescriptor(src, target, link, TimingDElementTypes.DInterval_4003, DIntervalEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection getOutgoingTypeModelFacetLinks_DStateSwitch_4001(DSegmentEnd source) { DBlock container = null; // Find container element for the link. // Climb up by containment hierarchy starting from the source // and return the first element that is instance of the container class. for (EObject element = source; element != null && container == null; element = element.eContainer()) { if (element instanceof DBlock) { container = (DBlock) element; } } if (container == null) { return Collections.EMPTY_LIST; } Collection result = new LinkedList(); for (Iterator links = container.getSwitches().iterator(); links.hasNext();) { EObject linkObject = (EObject) links.next(); if (false == linkObject instanceof DStateSwitch) { continue; } DStateSwitch link = (DStateSwitch) linkObject; if (DStateSwitchEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DSegmentStart dst = link.getToSegmentStart(); DSegmentEnd src = link.getFromSegmentEnd(); if (src != source) { continue; } result.add(new TimingDLinkDescriptor(src, dst, link, TimingDElementTypes.DStateSwitch_4001, DStateSwitchEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection getOutgoingTypeModelFacetLinks_DMessage_4002(DSegmentElement source) { DFrame container = null; // Find container element for the link. // Climb up by containment hierarchy starting from the source // and return the first element that is instance of the container class. for (EObject element = source; element != null && container == null; element = element.eContainer()) { if (element instanceof DFrame) { container = (DFrame) element; } } if (container == null) { return Collections.EMPTY_LIST; } Collection result = new LinkedList(); for (Iterator links = container.getMessages().iterator(); links.hasNext();) { EObject linkObject = (EObject) links.next(); if (false == linkObject instanceof DMessage) { continue; } DMessage link = (DMessage) linkObject; if (DMessageEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DSegmentElement dst = link.getMessageTarget(); DSegmentElement src = link.getMessageSource(); if (src != source) { continue; } result.add(new TimingDLinkDescriptor(src, dst, link, TimingDElementTypes.DMessage_4002, DMessageEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection getOutgoingTypeModelFacetLinks_DInterval_4003(DTick source) { DFrame container = null; // Find container element for the link. // Climb up by containment hierarchy starting from the source // and return the first element that is instance of the container class. for (EObject element = source; element != null && container == null; element = element.eContainer()) { if (element instanceof DFrame) { container = (DFrame) element; } } if (container == null) { return Collections.EMPTY_LIST; } Collection result = new LinkedList(); for (Iterator links = container.getIntervals().iterator(); links.hasNext();) { EObject linkObject = (EObject) links.next(); if (false == linkObject instanceof DInterval) { continue; } DInterval link = (DInterval) linkObject; if (DIntervalEditPart.VISUAL_ID != TimingDVisualIDRegistry.getLinkWithClassVisualID(link)) { continue; } DTick dst = link.getToTick(); DTick src = link.getFromTick(); if (src != source) { continue; } result.add(new TimingDLinkDescriptor(src, dst, link, TimingDElementTypes.DInterval_4003, DIntervalEditPart.VISUAL_ID)); } return result; } /** * @generated */ public static final IDiagramUpdater TYPED_ADAPTER = new IDiagramUpdater() { /** * @generated */ public List<IUpdaterNodeDescriptor> getSemanticChildren(View view) { return org.eclipse.uml2.diagram.timing.part.TimingDDiagramUpdater.getSemanticChildren(view); } /** * @generated */ public List<IUpdaterLinkDescriptor> getContainedLinks(View view) { return org.eclipse.uml2.diagram.timing.part.TimingDDiagramUpdater.getContainedLinks(view); } /** * @generated */ public List<IUpdaterLinkDescriptor> getIncomingLinks(View view) { return org.eclipse.uml2.diagram.timing.part.TimingDDiagramUpdater.getIncomingLinks(view); } /** * @generated */ public List<IUpdaterLinkDescriptor> getOutgoingLinks(View view) { return org.eclipse.uml2.diagram.timing.part.TimingDDiagramUpdater.getOutgoingLinks(view); } }; }