197 lines
5.9 KiB
Java
197 lines
5.9 KiB
Java
/**
|
|
*/
|
|
package petrinet.util;
|
|
|
|
import org.eclipse.emf.ecore.EObject;
|
|
import org.eclipse.emf.ecore.EPackage;
|
|
|
|
import org.eclipse.emf.ecore.util.Switch;
|
|
|
|
import petrinet.*;
|
|
|
|
/**
|
|
* <!-- 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 petrinet.PetrinetPackage
|
|
* @generated
|
|
*/
|
|
public class PetrinetSwitch<T> extends Switch<T> {
|
|
/**
|
|
* The cached model package
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
protected static PetrinetPackage modelPackage;
|
|
|
|
/**
|
|
* Creates an instance of the switch.
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
public PetrinetSwitch() {
|
|
if (modelPackage == null) {
|
|
modelPackage = PetrinetPackage.eINSTANCE;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Checks whether this is a switch for the given package.
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @param 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 PetrinetPackage.NETWORK: {
|
|
Network network = (Network)theEObject;
|
|
T result = caseNetwork(network);
|
|
if (result == null) result = defaultCase(theEObject);
|
|
return result;
|
|
}
|
|
case PetrinetPackage.NODE: {
|
|
Node node = (Node)theEObject;
|
|
T result = caseNode(node);
|
|
if (result == null) result = defaultCase(theEObject);
|
|
return result;
|
|
}
|
|
case PetrinetPackage.PLACE: {
|
|
Place place = (Place)theEObject;
|
|
T result = casePlace(place);
|
|
if (result == null) result = caseNode(place);
|
|
if (result == null) result = defaultCase(theEObject);
|
|
return result;
|
|
}
|
|
case PetrinetPackage.ARC: {
|
|
Arc arc = (Arc)theEObject;
|
|
T result = caseArc(arc);
|
|
if (result == null) result = defaultCase(theEObject);
|
|
return result;
|
|
}
|
|
case PetrinetPackage.TRANSITION: {
|
|
Transition transition = (Transition)theEObject;
|
|
T result = caseTransition(transition);
|
|
if (result == null) result = caseNode(transition);
|
|
if (result == null) result = defaultCase(theEObject);
|
|
return result;
|
|
}
|
|
default: return defaultCase(theEObject);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Returns the result of interpreting the object as an instance of '<em>Network</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>Network</em>'.
|
|
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
|
|
* @generated
|
|
*/
|
|
public T caseNetwork(Network object) {
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* Returns the result of interpreting the object as an instance of '<em>Node</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>Node</em>'.
|
|
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
|
|
* @generated
|
|
*/
|
|
public T caseNode(Node object) {
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* Returns the result of interpreting the object as an instance of '<em>Place</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>Place</em>'.
|
|
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
|
|
* @generated
|
|
*/
|
|
public T casePlace(Place object) {
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* Returns the result of interpreting the object as an instance of '<em>Arc</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>Arc</em>'.
|
|
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
|
|
* @generated
|
|
*/
|
|
public T caseArc(Arc object) {
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* Returns the result of interpreting the object as an instance of '<em>Transition</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>Transition</em>'.
|
|
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
|
|
* @generated
|
|
*/
|
|
public T caseTransition(Transition 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;
|
|
}
|
|
|
|
} //PetrinetSwitch
|