de.uka.ipd.sdq.spa.util
Class SpaSwitch<T>

java.lang.Object
  extended by de.uka.ipd.sdq.spa.util.SpaSwitch<T>

public class SpaSwitch<T>
extends Object

The Switch for the model's inheritance hierarchy. It supports the call 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 Also:
SpaPackage

Field Summary
protected static SpaPackage modelPackage
          The cached model package
 
Constructor Summary
SpaSwitch()
          Creates an instance of the switch.
 
Method Summary
 T caseProcessBehaviour(ProcessBehaviour object)
          Returns the result of interpretting the object as an instance of 'Process Behaviour'.
 T caseSPAModel(SPAModel object)
          Returns the result of interpretting the object as an instance of 'SPA Model'.
 T defaultCase(EObject object)
          Returns the result of interpretting the object as an instance of 'EObject'.
protected  T doSwitch(EClass theEClass, EObject theEObject)
          Calls caseXXX for each class of the model until one returns a non null result; it yields that result.
 T doSwitch(EObject theEObject)
          Calls caseXXX for each class of the model until one returns a non null result; it yields that result.
protected  T doSwitch(int classifierID, EObject theEObject)
          Calls caseXXX for each class of the model until one returns a non null result; it yields that result.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

modelPackage

protected static SpaPackage modelPackage
The cached model package

Constructor Detail

SpaSwitch

public SpaSwitch()
Creates an instance of the switch.

Method Detail

doSwitch

public T doSwitch(EObject theEObject)
Calls caseXXX for each class of the model until one returns a non null result; it yields that result.

Returns:
the first non-null result returned by a caseXXX call.

doSwitch

protected T doSwitch(EClass theEClass,
                     EObject theEObject)
Calls caseXXX for each class of the model until one returns a non null result; it yields that result.

Returns:
the first non-null result returned by a caseXXX call.

doSwitch

protected T doSwitch(int classifierID,
                     EObject theEObject)
Calls caseXXX for each class of the model until one returns a non null result; it yields that result.

Returns:
the first non-null result returned by a caseXXX call.

caseProcessBehaviour

public T caseProcessBehaviour(ProcessBehaviour object)
Returns the result of interpretting the object as an instance of 'Process Behaviour'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpretting the object as an instance of 'Process Behaviour'.
See Also:
doSwitch(EObject)

caseSPAModel

public T caseSPAModel(SPAModel object)
Returns the result of interpretting the object as an instance of 'SPA Model'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpretting the object as an instance of 'SPA Model'.
See Also:
doSwitch(EObject)

defaultCase

public T defaultCase(EObject object)
Returns the result of interpretting 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.

Parameters:
object - the target of the switch.
Returns:
the result of interpretting the object as an instance of 'EObject'.
See Also:
#doSwitch(org.eclipse.emf.ecore.EObject)