/**
*/
package org.opendaylight.nemo.tool.eclipse.plugin.editor.util;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.util.Switch;
import org.opendaylight.nemo.tool.eclipse.plugin.editor.*;
/**
*
* The Switch for the model's inheritance hierarchy.
* It supports the call {@link #doSwitch(EObject) doSwitch(object)}
* to invoke the caseXXX
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.
*
* @see org.opendaylight.nemo.tool.eclipse.plugin.editor.EditorPackage
* @generated
*/
public class EditorSwitch extends Switch
{
/**
* The cached model package
*
*
* @generated
*/
protected static EditorPackage modelPackage;
/**
* Creates an instance of the switch.
*
*
* @generated
*/
public EditorSwitch()
{
if (modelPackage == null)
{
modelPackage = EditorPackage.eINSTANCE;
}
}
/**
* Checks whether this is a switch for the given package.
*
*
* @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 caseXXX
for each class of the model until one returns a non null result; it yields that result.
*
*
* @return the first non-null result returned by a caseXXX
call.
* @generated
*/
@Override
protected T doSwitch(int classifierID, EObject theEObject)
{
switch (classifierID)
{
case EditorPackage.MODEL:
{
Model model = (Model)theEObject;
T result = caseModel(model);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.SENTENCE:
{
Sentence sentence = (Sentence)theEObject;
T result = caseSentence(sentence);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.NODE:
{
Node node = (Node)theEObject;
T result = caseNode(node);
if (result == null) result = caseSentence(node);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.NODE_MODEL:
{
NodeModel nodeModel = (NodeModel)theEObject;
T result = caseNodeModel(nodeModel);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.NODE_OPERATING:
{
NodeOperating nodeOperating = (NodeOperating)theEObject;
T result = caseNodeOperating(nodeOperating);
if (result == null) result = caseSentence(nodeOperating);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.CONNECTION:
{
Connection connection = (Connection)theEObject;
T result = caseConnection(connection);
if (result == null) result = caseSentence(connection);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.CONNECTION_UPDATE:
{
ConnectionUpdate connectionUpdate = (ConnectionUpdate)theEObject;
T result = caseConnectionUpdate(connectionUpdate);
if (result == null) result = caseSentence(connectionUpdate);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.FLOW:
{
Flow flow = (Flow)theEObject;
T result = caseFlow(flow);
if (result == null) result = caseSentence(flow);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.FLOW_UPDATE:
{
FlowUpdate flowUpdate = (FlowUpdate)theEObject;
T result = caseFlowUpdate(flowUpdate);
if (result == null) result = caseSentence(flowUpdate);
if (result == null) result = defaultCase(theEObject);
return result;
}
case EditorPackage.OPERATION:
{
Operation operation = (Operation)theEObject;
T result = caseOperation(operation);
if (result == null) result = caseSentence(operation);
if (result == null) result = defaultCase(theEObject);
return result;
}
default: return defaultCase(theEObject);
}
}
/**
* Returns the result of interpreting the object as an instance of 'Model'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Model'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseModel(Model object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'Sentence'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Sentence'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseSentence(Sentence object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'Node'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Node'.
* @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 'Node Model'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Node Model'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseNodeModel(NodeModel object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'Node Operating'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Node Operating'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseNodeOperating(NodeOperating object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'Connection'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Connection'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseConnection(Connection object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'Connection Update'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Connection Update'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseConnectionUpdate(ConnectionUpdate object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'Flow'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Flow'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseFlow(Flow object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'Flow Update'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Flow Update'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseFlowUpdate(FlowUpdate object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'Operation'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'Operation'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseOperation(Operation object)
{
return null;
}
/**
* Returns the result of interpreting the object as an instance of 'EObject'.
*
* This implementation returns null;
* returning a non-null result will terminate the switch, but this is the last case anyway.
*
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of 'EObject'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject)
* @generated
*/
@Override
public T defaultCase(EObject object)
{
return null;
}
} //EditorSwitch