package org.eclipse.gmf.tooling.examples.compartments.diagram.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.gmf.tooling.examples.compartments.Canvas; import org.eclipse.gmf.tooling.examples.compartments.ChildOfA_C; import org.eclipse.gmf.tooling.examples.compartments.ChildOfA_D; import org.eclipse.gmf.tooling.examples.compartments.ChildOfAffixed; import org.eclipse.gmf.tooling.examples.compartments.ChildOfB_E; import org.eclipse.gmf.tooling.examples.compartments.ChildOfB_F; import org.eclipse.gmf.tooling.examples.compartments.ChildOfB_G; import org.eclipse.gmf.tooling.examples.compartments.CompartmentsPackage; import org.eclipse.gmf.tooling.examples.compartments.TopNode; import org.eclipse.gmf.tooling.examples.compartments.TopNodeA; import org.eclipse.gmf.tooling.examples.compartments.TopNodeB; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.CanvasEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfA_CEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfA_DEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfAffixedEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfB_ECNodeRelationEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfB_EEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfB_FDNodeRelationEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfB_FEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfB_GAffixedChildrenCompartmentEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.ChildOfB_GEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.TopNodeAEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.TopNodeANodeCCompartmentEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.TopNodeANodeDCompartmentEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.TopNodeBEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.TopNodeBNodeECompartmentEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.edit.parts.TopNodeBNodeFCompartmentEditPart; import org.eclipse.gmf.tooling.examples.compartments.diagram.providers.CompartmentsElementTypes; import org.eclipse.gmf.tooling.runtime.update.DiagramUpdater; /** * @generated */ public class CompartmentsDiagramUpdater { /** * @generated */ public static List<CompartmentsNodeDescriptor> getSemanticChildren(View view) { switch (CompartmentsVisualIDRegistry.getVisualID(view)) { case CanvasEditPart.VISUAL_ID: return getCanvas_1000SemanticChildren(view); case TopNodeBEditPart.VISUAL_ID: return getTopNodeB_2002SemanticChildren(view); case TopNodeANodeCCompartmentEditPart.VISUAL_ID: return getTopNodeANodeCCompartment_7001SemanticChildren(view); case TopNodeANodeDCompartmentEditPart.VISUAL_ID: return getTopNodeANodeDCompartment_7002SemanticChildren(view); case TopNodeBNodeECompartmentEditPart.VISUAL_ID: return getTopNodeBNodeECompartment_7003SemanticChildren(view); case TopNodeBNodeFCompartmentEditPart.VISUAL_ID: return getTopNodeBNodeFCompartment_7004SemanticChildren(view); case ChildOfB_GAffixedChildrenCompartmentEditPart.VISUAL_ID: return getChildOfB_GAffixedChildrenCompartment_7005SemanticChildren(view); } return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsNodeDescriptor> getCanvas_1000SemanticChildren(View view) { if (!view.isSetElement()) { return Collections.emptyList(); } Canvas modelElement = (Canvas) view.getElement(); LinkedList<CompartmentsNodeDescriptor> result = new LinkedList<CompartmentsNodeDescriptor>(); for (Iterator<?> it = modelElement.getElements().iterator(); it.hasNext();) { TopNode childElement = (TopNode) it.next(); int visualID = CompartmentsVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == TopNodeAEditPart.VISUAL_ID) { result.add(new CompartmentsNodeDescriptor(childElement, visualID)); continue; } if (visualID == TopNodeBEditPart.VISUAL_ID) { result.add(new CompartmentsNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List<CompartmentsNodeDescriptor> getTopNodeB_2002SemanticChildren(View view) { if (!view.isSetElement()) { return Collections.emptyList(); } TopNodeB modelElement = (TopNodeB) view.getElement(); LinkedList<CompartmentsNodeDescriptor> result = new LinkedList<CompartmentsNodeDescriptor>(); for (Iterator<?> it = modelElement.getChildrenG().iterator(); it.hasNext();) { ChildOfB_G childElement = (ChildOfB_G) it.next(); int visualID = CompartmentsVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == ChildOfB_GEditPart.VISUAL_ID) { result.add(new CompartmentsNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List<CompartmentsNodeDescriptor> getTopNodeANodeCCompartment_7001SemanticChildren(View view) { if (false == view.eContainer() instanceof View) { return Collections.emptyList(); } View containerView = (View) view.eContainer(); if (!containerView.isSetElement()) { return Collections.emptyList(); } TopNodeA modelElement = (TopNodeA) containerView.getElement(); LinkedList<CompartmentsNodeDescriptor> result = new LinkedList<CompartmentsNodeDescriptor>(); for (Iterator<?> it = modelElement.getChildrenC().iterator(); it.hasNext();) { ChildOfA_C childElement = (ChildOfA_C) it.next(); int visualID = CompartmentsVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == ChildOfA_CEditPart.VISUAL_ID) { result.add(new CompartmentsNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List<CompartmentsNodeDescriptor> getTopNodeANodeDCompartment_7002SemanticChildren(View view) { if (false == view.eContainer() instanceof View) { return Collections.emptyList(); } View containerView = (View) view.eContainer(); if (!containerView.isSetElement()) { return Collections.emptyList(); } TopNodeA modelElement = (TopNodeA) containerView.getElement(); LinkedList<CompartmentsNodeDescriptor> result = new LinkedList<CompartmentsNodeDescriptor>(); for (Iterator<?> it = modelElement.getChildrenD().iterator(); it.hasNext();) { ChildOfA_D childElement = (ChildOfA_D) it.next(); int visualID = CompartmentsVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == ChildOfA_DEditPart.VISUAL_ID) { result.add(new CompartmentsNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List<CompartmentsNodeDescriptor> getTopNodeBNodeECompartment_7003SemanticChildren(View view) { if (false == view.eContainer() instanceof View) { return Collections.emptyList(); } View containerView = (View) view.eContainer(); if (!containerView.isSetElement()) { return Collections.emptyList(); } TopNodeB modelElement = (TopNodeB) containerView.getElement(); LinkedList<CompartmentsNodeDescriptor> result = new LinkedList<CompartmentsNodeDescriptor>(); for (Iterator<?> it = modelElement.getChildrenE().iterator(); it.hasNext();) { ChildOfB_E childElement = (ChildOfB_E) it.next(); int visualID = CompartmentsVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == ChildOfB_EEditPart.VISUAL_ID) { result.add(new CompartmentsNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List<CompartmentsNodeDescriptor> getTopNodeBNodeFCompartment_7004SemanticChildren(View view) { if (false == view.eContainer() instanceof View) { return Collections.emptyList(); } View containerView = (View) view.eContainer(); if (!containerView.isSetElement()) { return Collections.emptyList(); } TopNodeB modelElement = (TopNodeB) containerView.getElement(); LinkedList<CompartmentsNodeDescriptor> result = new LinkedList<CompartmentsNodeDescriptor>(); for (Iterator<?> it = modelElement.getChildrenF().iterator(); it.hasNext();) { ChildOfB_F childElement = (ChildOfB_F) it.next(); int visualID = CompartmentsVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == ChildOfB_FEditPart.VISUAL_ID) { result.add(new CompartmentsNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List<CompartmentsNodeDescriptor> getChildOfB_GAffixedChildrenCompartment_7005SemanticChildren(View view) { if (false == view.eContainer() instanceof View) { return Collections.emptyList(); } View containerView = (View) view.eContainer(); if (!containerView.isSetElement()) { return Collections.emptyList(); } ChildOfB_G modelElement = (ChildOfB_G) containerView.getElement(); LinkedList<CompartmentsNodeDescriptor> result = new LinkedList<CompartmentsNodeDescriptor>(); for (Iterator<?> it = modelElement.getChildrenOfAffixed().iterator(); it.hasNext();) { ChildOfAffixed childElement = (ChildOfAffixed) it.next(); int visualID = CompartmentsVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == ChildOfAffixedEditPart.VISUAL_ID) { result.add(new CompartmentsNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List<CompartmentsLinkDescriptor> getContainedLinks(View view) { switch (CompartmentsVisualIDRegistry.getVisualID(view)) { case CanvasEditPart.VISUAL_ID: return getCanvas_1000ContainedLinks(view); case TopNodeAEditPart.VISUAL_ID: return getTopNodeA_2001ContainedLinks(view); case TopNodeBEditPart.VISUAL_ID: return getTopNodeB_2002ContainedLinks(view); case ChildOfA_CEditPart.VISUAL_ID: return getChildOfA_C_3001ContainedLinks(view); case ChildOfA_DEditPart.VISUAL_ID: return getChildOfA_D_3002ContainedLinks(view); case ChildOfB_EEditPart.VISUAL_ID: return getChildOfB_E_3003ContainedLinks(view); case ChildOfB_GEditPart.VISUAL_ID: return getChildOfB_G_3004ContainedLinks(view); case ChildOfAffixedEditPart.VISUAL_ID: return getChildOfAffixed_3005ContainedLinks(view); case ChildOfB_FEditPart.VISUAL_ID: return getChildOfB_F_3006ContainedLinks(view); } return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getIncomingLinks(View view) { switch (CompartmentsVisualIDRegistry.getVisualID(view)) { case TopNodeAEditPart.VISUAL_ID: return getTopNodeA_2001IncomingLinks(view); case TopNodeBEditPart.VISUAL_ID: return getTopNodeB_2002IncomingLinks(view); case ChildOfA_CEditPart.VISUAL_ID: return getChildOfA_C_3001IncomingLinks(view); case ChildOfA_DEditPart.VISUAL_ID: return getChildOfA_D_3002IncomingLinks(view); case ChildOfB_EEditPart.VISUAL_ID: return getChildOfB_E_3003IncomingLinks(view); case ChildOfB_GEditPart.VISUAL_ID: return getChildOfB_G_3004IncomingLinks(view); case ChildOfAffixedEditPart.VISUAL_ID: return getChildOfAffixed_3005IncomingLinks(view); case ChildOfB_FEditPart.VISUAL_ID: return getChildOfB_F_3006IncomingLinks(view); } return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getOutgoingLinks(View view) { switch (CompartmentsVisualIDRegistry.getVisualID(view)) { case TopNodeAEditPart.VISUAL_ID: return getTopNodeA_2001OutgoingLinks(view); case TopNodeBEditPart.VISUAL_ID: return getTopNodeB_2002OutgoingLinks(view); case ChildOfA_CEditPart.VISUAL_ID: return getChildOfA_C_3001OutgoingLinks(view); case ChildOfA_DEditPart.VISUAL_ID: return getChildOfA_D_3002OutgoingLinks(view); case ChildOfB_EEditPart.VISUAL_ID: return getChildOfB_E_3003OutgoingLinks(view); case ChildOfB_GEditPart.VISUAL_ID: return getChildOfB_G_3004OutgoingLinks(view); case ChildOfAffixedEditPart.VISUAL_ID: return getChildOfAffixed_3005OutgoingLinks(view); case ChildOfB_FEditPart.VISUAL_ID: return getChildOfB_F_3006OutgoingLinks(view); } return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getCanvas_1000ContainedLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getTopNodeA_2001ContainedLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getTopNodeB_2002ContainedLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfA_C_3001ContainedLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfA_D_3002ContainedLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_E_3003ContainedLinks(View view) { ChildOfB_E modelElement = (ChildOfB_E) view.getElement(); LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); result.addAll(getOutgoingFeatureModelFacetLinks_ChildOfB_E_CNodeRelation_4001(modelElement)); return result; } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_G_3004ContainedLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfAffixed_3005ContainedLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_F_3006ContainedLinks(View view) { ChildOfB_F modelElement = (ChildOfB_F) view.getElement(); LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); result.addAll(getOutgoingFeatureModelFacetLinks_ChildOfB_F_DNodeRelation_4002(modelElement)); return result; } /** * @generated */ public static List<CompartmentsLinkDescriptor> getTopNodeA_2001IncomingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getTopNodeB_2002IncomingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfA_C_3001IncomingLinks(View view) { ChildOfA_C modelElement = (ChildOfA_C) view.getElement(); Map<EObject, Collection<EStructuralFeature.Setting>> crossReferences = EcoreUtil.CrossReferencer.find(view.eResource().getResourceSet().getResources()); LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); result.addAll(getIncomingFeatureModelFacetLinks_ChildOfB_E_CNodeRelation_4001(modelElement, crossReferences)); return result; } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfA_D_3002IncomingLinks(View view) { ChildOfA_D modelElement = (ChildOfA_D) view.getElement(); Map<EObject, Collection<EStructuralFeature.Setting>> crossReferences = EcoreUtil.CrossReferencer.find(view.eResource().getResourceSet().getResources()); LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); result.addAll(getIncomingFeatureModelFacetLinks_ChildOfB_F_DNodeRelation_4002(modelElement, crossReferences)); return result; } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_E_3003IncomingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_G_3004IncomingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfAffixed_3005IncomingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_F_3006IncomingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getTopNodeA_2001OutgoingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getTopNodeB_2002OutgoingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfA_C_3001OutgoingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfA_D_3002OutgoingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_E_3003OutgoingLinks(View view) { ChildOfB_E modelElement = (ChildOfB_E) view.getElement(); LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); result.addAll(getOutgoingFeatureModelFacetLinks_ChildOfB_E_CNodeRelation_4001(modelElement)); return result; } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_G_3004OutgoingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfAffixed_3005OutgoingLinks(View view) { return Collections.emptyList(); } /** * @generated */ public static List<CompartmentsLinkDescriptor> getChildOfB_F_3006OutgoingLinks(View view) { ChildOfB_F modelElement = (ChildOfB_F) view.getElement(); LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); result.addAll(getOutgoingFeatureModelFacetLinks_ChildOfB_F_DNodeRelation_4002(modelElement)); return result; } /** * @generated */ private static Collection<CompartmentsLinkDescriptor> getIncomingFeatureModelFacetLinks_ChildOfB_E_CNodeRelation_4001(ChildOfA_C target, Map<EObject, Collection<EStructuralFeature.Setting>> crossReferences) { LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); Collection<EStructuralFeature.Setting> settings = crossReferences.get(target); for (EStructuralFeature.Setting setting : settings) { if (setting.getEStructuralFeature() == CompartmentsPackage.eINSTANCE.getChildOfB_E_CNodeRelation()) { result.add(new CompartmentsLinkDescriptor(setting.getEObject(), target, CompartmentsElementTypes.ChildOfB_ECNodeRelation_4001, ChildOfB_ECNodeRelationEditPart.VISUAL_ID)); } } return result; } /** * @generated */ private static Collection<CompartmentsLinkDescriptor> getIncomingFeatureModelFacetLinks_ChildOfB_F_DNodeRelation_4002(ChildOfA_D target, Map<EObject, Collection<EStructuralFeature.Setting>> crossReferences) { LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); Collection<EStructuralFeature.Setting> settings = crossReferences.get(target); for (EStructuralFeature.Setting setting : settings) { if (setting.getEStructuralFeature() == CompartmentsPackage.eINSTANCE.getChildOfB_F_DNodeRelation()) { result.add(new CompartmentsLinkDescriptor(setting.getEObject(), target, CompartmentsElementTypes.ChildOfB_FDNodeRelation_4002, ChildOfB_FDNodeRelationEditPart.VISUAL_ID)); } } return result; } /** * @generated */ private static Collection<CompartmentsLinkDescriptor> getOutgoingFeatureModelFacetLinks_ChildOfB_E_CNodeRelation_4001(ChildOfB_E source) { LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); ChildOfA_C destination = source.getCNodeRelation(); if (destination == null) { return result; } result.add(new CompartmentsLinkDescriptor(source, destination, CompartmentsElementTypes.ChildOfB_ECNodeRelation_4001, ChildOfB_ECNodeRelationEditPart.VISUAL_ID)); return result; } /** * @generated */ private static Collection<CompartmentsLinkDescriptor> getOutgoingFeatureModelFacetLinks_ChildOfB_F_DNodeRelation_4002(ChildOfB_F source) { LinkedList<CompartmentsLinkDescriptor> result = new LinkedList<CompartmentsLinkDescriptor>(); ChildOfA_D destination = source.getDNodeRelation(); if (destination == null) { return result; } result.add(new CompartmentsLinkDescriptor(source, destination, CompartmentsElementTypes.ChildOfB_FDNodeRelation_4002, ChildOfB_FDNodeRelationEditPart.VISUAL_ID)); return result; } /** * @generated */ public static final DiagramUpdater TYPED_INSTANCE = new DiagramUpdater() { /** * @generated */ @Override public List<CompartmentsNodeDescriptor> getSemanticChildren(View view) { return CompartmentsDiagramUpdater.getSemanticChildren(view); } /** * @generated */ @Override public List<CompartmentsLinkDescriptor> getContainedLinks(View view) { return CompartmentsDiagramUpdater.getContainedLinks(view); } /** * @generated */ @Override public List<CompartmentsLinkDescriptor> getIncomingLinks(View view) { return CompartmentsDiagramUpdater.getIncomingLinks(view); } /** * @generated */ @Override public List<CompartmentsLinkDescriptor> getOutgoingLinks(View view) { return CompartmentsDiagramUpdater.getOutgoingLinks(view); } }; }