package SAG.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 SAG.Actor; import SAG.Goal; import SAG.SAGPackage; import SAG.SAGmodel; import SAG.diagram.edit.parts.ActorEditPart; import SAG.diagram.edit.parts.ActorMy_goalEditPart; import SAG.diagram.edit.parts.GoalDependeeEditPart; import SAG.diagram.edit.parts.GoalEditPart; import SAG.diagram.edit.parts.SAGmodelEditPart; import SAG.diagram.providers.SAGElementTypes; /** * @generated */ public class SAGDiagramUpdater { /** * @generated */ public static List<SAGNodeDescriptor> getSemanticChildren(View view) { switch (SAGVisualIDRegistry.getVisualID(view)) { case SAGmodelEditPart.VISUAL_ID: return getSAGmodel_1000SemanticChildren(view); } return Collections.emptyList(); } /** * @generated */ public static List<SAGNodeDescriptor> getSAGmodel_1000SemanticChildren( View view) { if (!view.isSetElement()) { return Collections.emptyList(); } SAGmodel modelElement = (SAGmodel) view.getElement(); LinkedList<SAGNodeDescriptor> result = new LinkedList<SAGNodeDescriptor>(); for (Iterator<?> it = modelElement.getActors().iterator(); it.hasNext();) { Actor childElement = (Actor) it.next(); int visualID = SAGVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == ActorEditPart.VISUAL_ID) { result.add(new SAGNodeDescriptor(childElement, visualID)); continue; } } for (Iterator<?> it = modelElement.getGoals().iterator(); it.hasNext();) { Goal childElement = (Goal) it.next(); int visualID = SAGVisualIDRegistry.getNodeVisualID(view, childElement); if (visualID == GoalEditPart.VISUAL_ID) { result.add(new SAGNodeDescriptor(childElement, visualID)); continue; } } return result; } /** * @generated */ public static List<SAGLinkDescriptor> getContainedLinks(View view) { switch (SAGVisualIDRegistry.getVisualID(view)) { case SAGmodelEditPart.VISUAL_ID: return getSAGmodel_1000ContainedLinks(view); case ActorEditPart.VISUAL_ID: return getActor_2007ContainedLinks(view); case GoalEditPart.VISUAL_ID: return getGoal_2008ContainedLinks(view); } return Collections.emptyList(); } /** * @generated */ public static List<SAGLinkDescriptor> getIncomingLinks(View view) { switch (SAGVisualIDRegistry.getVisualID(view)) { case ActorEditPart.VISUAL_ID: return getActor_2007IncomingLinks(view); case GoalEditPart.VISUAL_ID: return getGoal_2008IncomingLinks(view); } return Collections.emptyList(); } /** * @generated */ public static List<SAGLinkDescriptor> getOutgoingLinks(View view) { switch (SAGVisualIDRegistry.getVisualID(view)) { case ActorEditPart.VISUAL_ID: return getActor_2007OutgoingLinks(view); case GoalEditPart.VISUAL_ID: return getGoal_2008OutgoingLinks(view); } return Collections.emptyList(); } /** * @generated */ public static List<SAGLinkDescriptor> getSAGmodel_1000ContainedLinks( View view) { return Collections.emptyList(); } /** * @generated */ public static List<SAGLinkDescriptor> getActor_2007ContainedLinks(View view) { Actor modelElement = (Actor) view.getElement(); LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); result.addAll(getOutgoingFeatureModelFacetLinks_Actor_My_goal_4011(modelElement)); return result; } /** * @generated */ public static List<SAGLinkDescriptor> getGoal_2008ContainedLinks(View view) { Goal modelElement = (Goal) view.getElement(); LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); result.addAll(getOutgoingFeatureModelFacetLinks_Goal_Dependee_4013(modelElement)); return result; } /** * @generated */ public static List<SAGLinkDescriptor> getActor_2007IncomingLinks(View view) { Actor modelElement = (Actor) view.getElement(); Map<EObject, Collection<EStructuralFeature.Setting>> crossReferences = EcoreUtil.CrossReferencer .find(view.eResource().getResourceSet().getResources()); LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); result.addAll(getIncomingFeatureModelFacetLinks_Goal_Dependee_4013( modelElement, crossReferences)); return result; } /** * @generated */ public static List<SAGLinkDescriptor> getGoal_2008IncomingLinks(View view) { Goal modelElement = (Goal) view.getElement(); Map<EObject, Collection<EStructuralFeature.Setting>> crossReferences = EcoreUtil.CrossReferencer .find(view.eResource().getResourceSet().getResources()); LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); result.addAll(getIncomingFeatureModelFacetLinks_Actor_My_goal_4011( modelElement, crossReferences)); return result; } /** * @generated */ public static List<SAGLinkDescriptor> getActor_2007OutgoingLinks(View view) { Actor modelElement = (Actor) view.getElement(); LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); result.addAll(getOutgoingFeatureModelFacetLinks_Actor_My_goal_4011(modelElement)); return result; } /** * @generated */ public static List<SAGLinkDescriptor> getGoal_2008OutgoingLinks(View view) { Goal modelElement = (Goal) view.getElement(); LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); result.addAll(getOutgoingFeatureModelFacetLinks_Goal_Dependee_4013(modelElement)); return result; } /** * @generated */ private static Collection<SAGLinkDescriptor> getIncomingFeatureModelFacetLinks_Actor_My_goal_4011( Goal target, Map<EObject, Collection<EStructuralFeature.Setting>> crossReferences) { LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); Collection<EStructuralFeature.Setting> settings = crossReferences .get(target); for (EStructuralFeature.Setting setting : settings) { if (setting.getEStructuralFeature() == SAGPackage.eINSTANCE .getActor_My_goal()) { result.add(new SAGLinkDescriptor(setting.getEObject(), target, SAGElementTypes.ActorMy_goal_4011, ActorMy_goalEditPart.VISUAL_ID)); } } return result; } /** * @generated */ private static Collection<SAGLinkDescriptor> getIncomingFeatureModelFacetLinks_Goal_Dependee_4013( Actor target, Map<EObject, Collection<EStructuralFeature.Setting>> crossReferences) { LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); Collection<EStructuralFeature.Setting> settings = crossReferences .get(target); for (EStructuralFeature.Setting setting : settings) { if (setting.getEStructuralFeature() == SAGPackage.eINSTANCE .getGoal_Dependee()) { result.add(new SAGLinkDescriptor(setting.getEObject(), target, SAGElementTypes.GoalDependee_4013, GoalDependeeEditPart.VISUAL_ID)); } } return result; } /** * @generated */ private static Collection<SAGLinkDescriptor> getOutgoingFeatureModelFacetLinks_Actor_My_goal_4011( Actor source) { LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); for (Iterator<?> destinations = source.getMy_goal().iterator(); destinations .hasNext();) { Goal destination = (Goal) destinations.next(); result.add(new SAGLinkDescriptor(source, destination, SAGElementTypes.ActorMy_goal_4011, ActorMy_goalEditPart.VISUAL_ID)); } return result; } /** * @generated */ private static Collection<SAGLinkDescriptor> getOutgoingFeatureModelFacetLinks_Goal_Dependee_4013( Goal source) { LinkedList<SAGLinkDescriptor> result = new LinkedList<SAGLinkDescriptor>(); for (Iterator<?> destinations = source.getDependee().iterator(); destinations .hasNext();) { Actor destination = (Actor) destinations.next(); result.add(new SAGLinkDescriptor(source, destination, SAGElementTypes.GoalDependee_4013, GoalDependeeEditPart.VISUAL_ID)); } return result; } }