diff options
Diffstat (limited to 'extraplugins/diagram-definition/org.eclipse.papyrus.dd/src/org/eclipse/papyrus/dd/di/util/DISwitch.java')
-rw-r--r-- | extraplugins/diagram-definition/org.eclipse.papyrus.dd/src/org/eclipse/papyrus/dd/di/util/DISwitch.java | 229 |
1 files changed, 229 insertions, 0 deletions
diff --git a/extraplugins/diagram-definition/org.eclipse.papyrus.dd/src/org/eclipse/papyrus/dd/di/util/DISwitch.java b/extraplugins/diagram-definition/org.eclipse.papyrus.dd/src/org/eclipse/papyrus/dd/di/util/DISwitch.java new file mode 100644 index 00000000000..031d2bc919b --- /dev/null +++ b/extraplugins/diagram-definition/org.eclipse.papyrus.dd/src/org/eclipse/papyrus/dd/di/util/DISwitch.java @@ -0,0 +1,229 @@ +/** + * Copyright (c) 2014 CEA LIST. + * + * 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: + * CEA LIST - Initial API and implementation + */ +package org.eclipse.papyrus.dd.di.util; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +import org.eclipse.papyrus.dd.di.*; + +/** + * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance + * hierarchy. It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object and proceeding up the + * inheritance hierarchy until a non-null result is returned, which is the + * result of the switch. <!-- end-user-doc --> + * + * @see org.eclipse.papyrus.dd.di.DIPackage + * @generated + */ +public class DISwitch<T> extends Switch<T> { + + /** + * The cached model package <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected static DIPackage modelPackage; + + /** + * Creates an instance of the switch. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + public DISwitch() { + if (modelPackage == null) { + modelPackage = DIPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @parameter ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns + * a non null result; it yields that result. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @return the first non-null result returned by a <code>caseXXX</code> + * call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case DIPackage.DIAGRAM_ELEMENT: { + DiagramElement diagramElement = (DiagramElement) theEObject; + T result = caseDiagramElement(diagramElement); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DIPackage.STYLE: { + Style style = (Style) theEObject; + T result = caseStyle(style); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DIPackage.EDGE: { + Edge edge = (Edge) theEObject; + T result = caseEdge(edge); + if (result == null) + result = caseDiagramElement(edge); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DIPackage.DIAGRAM: { + Diagram diagram = (Diagram) theEObject; + T result = caseDiagram(diagram); + if (result == null) + result = caseShape(diagram); + if (result == null) + result = caseDiagramElement(diagram); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DIPackage.SHAPE: { + Shape shape = (Shape) theEObject; + T result = caseShape(shape); + if (result == null) + result = caseDiagramElement(shape); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of ' + * <em>Diagram Element</em>'. <!-- begin-user-doc --> This implementation + * returns null; returning a non-null result will terminate the switch. <!-- + * end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of ' + * <em>Diagram Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDiagramElement(DiagramElement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of ' + * <em>Style</em>'. <!-- begin-user-doc --> This implementation returns + * null; returning a non-null result will terminate the switch. <!-- + * end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of ' + * <em>Style</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseStyle(Style object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of ' + * <em>Edge</em>'. <!-- begin-user-doc --> This implementation returns null; + * returning a non-null result will terminate the switch. <!-- end-user-doc + * --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of ' + * <em>Edge</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEdge(Edge object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of ' + * <em>Diagram</em>'. <!-- begin-user-doc --> This implementation returns + * null; returning a non-null result will terminate the switch. <!-- + * end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of ' + * <em>Diagram</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDiagram(Diagram object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of ' + * <em>Shape</em>'. <!-- begin-user-doc --> This implementation returns + * null; returning a non-null result will terminate the switch. <!-- + * end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of ' + * <em>Shape</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseShape(Shape object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of ' + * <em>EObject</em>'. <!-- begin-user-doc --> This implementation returns + * null; returning a non-null result will terminate the switch, but this is + * the last case anyway. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of ' + * <em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} // DISwitch |