org.eclipse.emf.compare.diff.metamodel.util
Class DiffSwitch<T>

java.lang.Object
  extended by org.eclipse.emf.compare.diff.metamodel.util.DiffSwitch<T>

public class DiffSwitch<T>
extends java.lang.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:
DiffPackage

Field Summary
protected static DiffPackage modelPackage
          The cached model package
 
Constructor Summary
DiffSwitch()
          Creates an instance of the switch.
 
Method Summary
 T caseAbstractDiffExtension(AbstractDiffExtension object)
          Returns the result of interpreting the object as an instance of 'Abstract Diff Extension'
 T caseAddAttribute(AddAttribute object)
          Returns the result of interpreting the object as an instance of 'Add Attribute'.
 T caseAddModelElement(AddModelElement object)
          Returns the result of interpreting the object as an instance of 'Add Model Element'.
 T caseAddReferenceValue(AddReferenceValue object)
          Returns the result of interpreting the object as an instance of 'Add Reference Value'
 T caseAttributeChange(AttributeChange object)
          Returns the result of interpreting the object as an instance of 'Attribute Change'.
 T caseAttributeChangeLeftTarget(AttributeChangeLeftTarget object)
          Returns the result of interpreting the object as an instance of 'Attribute Change Left Target'
 T caseAttributeChangeRightTarget(AttributeChangeRightTarget object)
          Returns the result of interpreting the object as an instance of 'Attribute Change Right Target'
 T caseConflictingDiffElement(ConflictingDiffElement object)
          Returns the result of interpreting the object as an instance of 'Conflicting Diff Element'
 T caseDiffElement(DiffElement object)
          Returns the result of interpreting the object as an instance of 'Element'.
 T caseDiffGroup(DiffGroup object)
          Returns the result of interpreting the object as an instance of 'Group'.
 T caseDiffModel(DiffModel object)
          Returns the result of interpreting the object as an instance of 'Model'.
 T caseGenericDiffElement(GenericDiffElement object)
          Returns the result of interpreting the object as an instance of 'Generic Diff Element'
 T caseModelElementChange(ModelElementChange object)
          Returns the result of interpreting the object as an instance of 'Model Element Change'
 T caseModelElementChangeLeftTarget(ModelElementChangeLeftTarget object)
          Returns the result of interpreting the object as an instance of 'Model Element Change Left Target'
 T caseModelElementChangeRightTarget(ModelElementChangeRightTarget object)
          Returns the result of interpreting the object as an instance of 'Model Element Change Right Target'
 T caseModelInputSnapshot(ModelInputSnapshot object)
          Returns the result of interpreting the object as an instance of 'Model Input Snapshot'
 T caseMoveModelElement(MoveModelElement object)
          Returns the result of interpreting the object as an instance of 'Move Model Element'.
 T caseReferenceChange(ReferenceChange object)
          Returns the result of interpreting the object as an instance of 'Reference Change'.
 T caseReferenceChangeLeftTarget(ReferenceChangeLeftTarget object)
          Returns the result of interpreting the object as an instance of 'Reference Change Left Target'
 T caseReferenceChangeRightTarget(ReferenceChangeRightTarget object)
          Returns the result of interpreting the object as an instance of 'Reference Change Right Target'
 T caseRemoteAddAttribute(RemoteAddAttribute object)
          Returns the result of interpreting the object as an instance of 'Remote Add Attribute'
 T caseRemoteAddModelElement(RemoteAddModelElement object)
          Returns the result of interpreting the object as an instance of 'Remote Add Model Element'
 T caseRemoteAddReferenceValue(RemoteAddReferenceValue object)
          Returns the result of interpreting the object as an instance of 'Remote Add Reference Value'
 T caseRemoteMoveModelElement(RemoteMoveModelElement object)
          Returns the result of interpreting the object as an instance of 'Remote Move Model Element'
 T caseRemoteRemoveAttribute(RemoteRemoveAttribute object)
          Returns the result of interpreting the object as an instance of 'Remote Remove Attribute'
 T caseRemoteRemoveModelElement(RemoteRemoveModelElement object)
          Returns the result of interpreting the object as an instance of 'Remote Remove Model Element'
 T caseRemoteRemoveReferenceValue(RemoteRemoveReferenceValue object)
          Returns the result of interpreting the object as an instance of 'Remote Remove Reference Value'
 T caseRemoteUpdateAttribute(RemoteUpdateAttribute object)
          Returns the result of interpreting the object as an instance of 'Remote Update Attribute'
 T caseRemoteUpdateUniqueReferenceValue(RemoteUpdateUniqueReferenceValue object)
          Returns the result of interpreting the object as an instance of 'Remote Update Unique Reference Value'
 T caseRemoveAttribute(RemoveAttribute object)
          Returns the result of interpreting the object as an instance of 'Remove Attribute'.
 T caseRemoveModelElement(RemoveModelElement object)
          Returns the result of interpreting the object as an instance of 'Remove Model Element'
 T caseRemoveReferenceValue(RemoveReferenceValue object)
          Returns the result of interpreting the object as an instance of 'Remove Reference Value'
 T caseUpdateAttribute(UpdateAttribute object)
          Returns the result of interpreting the object as an instance of 'Update Attribute'.
 T caseUpdateModelElement(UpdateModelElement object)
          Returns the result of interpreting the object as an instance of 'Update Model Element'
 T caseUpdateReference(UpdateReference object)
          Returns the result of interpreting the object as an instance of 'Update Reference'.
 T caseUpdateUniqueReferenceValue(UpdateUniqueReferenceValue object)
          Returns the result of interpreting the object as an instance of 'Update Unique Reference Value'
 T defaultCase(org.eclipse.emf.ecore.EObject object)
          Returns the result of interpreting the object as an instance of 'EObject'.
protected  T doSwitch(org.eclipse.emf.ecore.EClass theEClass, org.eclipse.emf.ecore.EObject theEObject)
          Calls caseXXX for each class of the model until one returns a non null result; it yields that result.
 T doSwitch(org.eclipse.emf.ecore.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, org.eclipse.emf.ecore.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 DiffPackage modelPackage
The cached model package

Constructor Detail

DiffSwitch

public DiffSwitch()
Creates an instance of the switch.

Method Detail

caseAbstractDiffExtension

public T caseAbstractDiffExtension(AbstractDiffExtension object)
Returns the result of interpreting the object as an instance of 'Abstract Diff Extension'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Abstract Diff Extension'.
See Also:
doSwitch(EObject)

caseAddAttribute

public T caseAddAttribute(AddAttribute object)
Returns the result of interpreting the object as an instance of 'Add Attribute'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Add Attribute'.
See Also:
doSwitch(EObject)

caseAddModelElement

public T caseAddModelElement(AddModelElement object)
Returns the result of interpreting the object as an instance of 'Add Model Element'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseAddReferenceValue

public T caseAddReferenceValue(AddReferenceValue object)
Returns the result of interpreting the object as an instance of 'Add Reference Value'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Add Reference Value'.
See Also:
doSwitch(EObject)

caseAttributeChange

public T caseAttributeChange(AttributeChange object)
Returns the result of interpreting the object as an instance of 'Attribute Change'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Attribute Change'.
See Also:
doSwitch(EObject)

caseAttributeChangeLeftTarget

public T caseAttributeChangeLeftTarget(AttributeChangeLeftTarget object)
Returns the result of interpreting the object as an instance of 'Attribute Change Left Target'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Attribute Change Left Target'.
See Also:
doSwitch(EObject)

caseAttributeChangeRightTarget

public T caseAttributeChangeRightTarget(AttributeChangeRightTarget object)
Returns the result of interpreting the object as an instance of 'Attribute Change Right Target'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Attribute Change Right Target'.
See Also:
doSwitch(EObject)

caseConflictingDiffElement

public T caseConflictingDiffElement(ConflictingDiffElement object)
Returns the result of interpreting the object as an instance of 'Conflicting Diff Element'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Conflicting Diff Element'.
See Also:
doSwitch(EObject)

caseDiffElement

public T caseDiffElement(DiffElement object)
Returns the result of interpreting the object as an instance of 'Element'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseDiffGroup

public T caseDiffGroup(DiffGroup object)
Returns the result of interpreting the object as an instance of 'Group'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseDiffModel

public T caseDiffModel(DiffModel object)
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.

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

caseGenericDiffElement

public T caseGenericDiffElement(GenericDiffElement object)
Returns the result of interpreting the object as an instance of 'Generic Diff Element'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Generic Diff Element'.
See Also:
doSwitch(EObject)

caseModelElementChange

public T caseModelElementChange(ModelElementChange object)
Returns the result of interpreting the object as an instance of 'Model Element Change'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseModelElementChangeLeftTarget

public T caseModelElementChangeLeftTarget(ModelElementChangeLeftTarget object)
Returns the result of interpreting the object as an instance of 'Model Element Change Left Target'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Model Element Change Left Target'.
See Also:
doSwitch(EObject)

caseModelElementChangeRightTarget

public T caseModelElementChangeRightTarget(ModelElementChangeRightTarget object)
Returns the result of interpreting the object as an instance of 'Model Element Change Right Target'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Model Element Change Right Target'.
See Also:
doSwitch(EObject)

caseModelInputSnapshot

public T caseModelInputSnapshot(ModelInputSnapshot object)
Returns the result of interpreting the object as an instance of 'Model Input Snapshot'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseMoveModelElement

public T caseMoveModelElement(MoveModelElement object)
Returns the result of interpreting the object as an instance of 'Move Model Element'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseReferenceChange

public T caseReferenceChange(ReferenceChange object)
Returns the result of interpreting the object as an instance of 'Reference Change'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Reference Change'.
See Also:
doSwitch(EObject)

caseReferenceChangeLeftTarget

public T caseReferenceChangeLeftTarget(ReferenceChangeLeftTarget object)
Returns the result of interpreting the object as an instance of 'Reference Change Left Target'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Reference Change Left Target'.
See Also:
doSwitch(EObject)

caseReferenceChangeRightTarget

public T caseReferenceChangeRightTarget(ReferenceChangeRightTarget object)
Returns the result of interpreting the object as an instance of 'Reference Change Right Target'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Reference Change Right Target'.
See Also:
doSwitch(EObject)

caseRemoteAddAttribute

public T caseRemoteAddAttribute(RemoteAddAttribute object)
Returns the result of interpreting the object as an instance of 'Remote Add Attribute'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Add Attribute'.
See Also:
doSwitch(EObject)

caseRemoteAddModelElement

public T caseRemoteAddModelElement(RemoteAddModelElement object)
Returns the result of interpreting the object as an instance of 'Remote Add Model Element'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Add Model Element'.
See Also:
doSwitch(EObject)

caseRemoteAddReferenceValue

public T caseRemoteAddReferenceValue(RemoteAddReferenceValue object)
Returns the result of interpreting the object as an instance of 'Remote Add Reference Value'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Add Reference Value'.
See Also:
doSwitch(EObject)

caseRemoteMoveModelElement

public T caseRemoteMoveModelElement(RemoteMoveModelElement object)
Returns the result of interpreting the object as an instance of 'Remote Move Model Element'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Move Model Element'.
See Also:
doSwitch(EObject)

caseRemoteRemoveAttribute

public T caseRemoteRemoveAttribute(RemoteRemoveAttribute object)
Returns the result of interpreting the object as an instance of 'Remote Remove Attribute'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Remove Attribute'.
See Also:
doSwitch(EObject)

caseRemoteRemoveModelElement

public T caseRemoteRemoveModelElement(RemoteRemoveModelElement object)
Returns the result of interpreting the object as an instance of 'Remote Remove Model Element'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Remove Model Element'.
See Also:
doSwitch(EObject)

caseRemoteRemoveReferenceValue

public T caseRemoteRemoveReferenceValue(RemoteRemoveReferenceValue object)
Returns the result of interpreting the object as an instance of 'Remote Remove Reference Value'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Remove Reference Value'.
See Also:
doSwitch(EObject)

caseRemoteUpdateAttribute

public T caseRemoteUpdateAttribute(RemoteUpdateAttribute object)
Returns the result of interpreting the object as an instance of 'Remote Update Attribute'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Update Attribute'.
See Also:
doSwitch(EObject)

caseRemoteUpdateUniqueReferenceValue

public T caseRemoteUpdateUniqueReferenceValue(RemoteUpdateUniqueReferenceValue object)
Returns the result of interpreting the object as an instance of 'Remote Update Unique Reference Value'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remote Update Unique Reference Value'.
See Also:
doSwitch(EObject)

caseRemoveAttribute

public T caseRemoveAttribute(RemoveAttribute object)
Returns the result of interpreting the object as an instance of 'Remove Attribute'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remove Attribute'.
See Also:
doSwitch(EObject)

caseRemoveModelElement

public T caseRemoveModelElement(RemoveModelElement object)
Returns the result of interpreting the object as an instance of 'Remove Model Element'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseRemoveReferenceValue

public T caseRemoveReferenceValue(RemoveReferenceValue object)
Returns the result of interpreting the object as an instance of 'Remove Reference Value'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Remove Reference Value'.
See Also:
doSwitch(EObject)

caseUpdateAttribute

public T caseUpdateAttribute(UpdateAttribute object)
Returns the result of interpreting the object as an instance of 'Update Attribute'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Update Attribute'.
See Also:
doSwitch(EObject)

caseUpdateModelElement

public T caseUpdateModelElement(UpdateModelElement object)
Returns the result of interpreting the object as an instance of 'Update Model Element'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseUpdateReference

public T caseUpdateReference(UpdateReference object)
Returns the result of interpreting the object as an instance of 'Update Reference'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Update Reference'.
See Also:
doSwitch(EObject)

caseUpdateUniqueReferenceValue

public T caseUpdateUniqueReferenceValue(UpdateUniqueReferenceValue object)
Returns the result of interpreting the object as an instance of 'Update Unique Reference Value'. This implementation returns null; returning a non-null result will terminate the switch.

Parameters:
object - the target of the switch.
Returns:
the result of interpreting the object as an instance of 'Update Unique Reference Value'.
See Also:
doSwitch(EObject)

defaultCase

public T defaultCase(org.eclipse.emf.ecore.EObject object)
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.

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

doSwitch

public T doSwitch(org.eclipse.emf.ecore.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(org.eclipse.emf.ecore.EClass theEClass,
                     org.eclipse.emf.ecore.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,
                     org.eclipse.emf.ecore.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.

Copyright 2006 IBM Corporation and others.
All Rights Reserved.