org.eclipse.emf.ecore.change.impl
Class ChangeDescriptionImpl

java.lang.Object
  extended by org.eclipse.emf.common.notify.impl.BasicNotifierImpl
      extended by org.eclipse.emf.ecore.impl.BasicEObjectImpl
          extended by org.eclipse.emf.ecore.impl.EObjectImpl
              extended by org.eclipse.emf.ecore.change.impl.ChangeDescriptionImpl
All Implemented Interfaces:
Notifier, ChangeDescription, EObject, InternalEObject

public class ChangeDescriptionImpl
extends EObjectImpl
implements ChangeDescription

An implementation of the model object 'Description'.

The following features are implemented:


Nested Class Summary
protected static class ChangeDescriptionImpl.OldContainmentInformation
           
 
Nested classes/interfaces inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl
BasicEObjectImpl.EPropertiesHolder, BasicEObjectImpl.EPropertiesHolderBaseImpl, BasicEObjectImpl.EPropertiesHolderImpl
 
Nested classes/interfaces inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
BasicNotifierImpl.EAdapterList<E extends java.lang.Object & Adapter>, BasicNotifierImpl.EObservableAdapterList
 
Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.InternalEObject
InternalEObject.EStore
 
Field Summary
protected  EMap<EObject,EList<FeatureChange>> objectChanges
          The cached value of the 'Object Changes' map
protected  EList<EObject> objectsToAttach
          The cached value of the 'Objects To Attach' containment reference list
protected  EList<EObject> objectsToDetach
          The cached value of the 'Objects To Detach' reference list
protected  java.util.Map<EObject,ChangeDescriptionImpl.OldContainmentInformation> oldContainmentInformation
           
protected  EList<ResourceChange> resourceChanges
          The cached value of the 'Resource Changes' containment reference list
 
Fields inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
eAdapters, eContainer, eContainerFeatureID, EDELIVER, EDYNAMIC_CLASS, eFlags, ELAST_EOBJECT_FLAG, ELAST_NOTIFIER_FLAG, eProperties, EPROXY
 
Fields inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl
EVIRTUAL_GET, EVIRTUAL_IS_SET, EVIRTUAL_NO_VALUE, EVIRTUAL_SET, EVIRTUAL_UNSET
 
Fields inherited from interface org.eclipse.emf.ecore.InternalEObject
EOPPOSITE_FEATURE_BASE
 
Constructor Summary
protected ChangeDescriptionImpl()
           
 
Method Summary
 void apply()
           
 void applyAndReverse()
           
 java.lang.Object eGet(int featureID, boolean resolve, boolean coreType)
           
 NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
           
 boolean eIsSet(int featureID)
           
 void eSet(int featureID, java.lang.Object newValue)
           
protected  EClass eStaticClass()
           
 void eUnset(int featureID)
           
protected static java.util.List<EObject> getContainedEObjects(java.util.List<FeatureMap.Entry> featureMapEntries)
           
 EMap<EObject,EList<FeatureChange>> getObjectChanges()
           
 EList<EObject> getObjectsToAttach()
           
 EList<EObject> getObjectsToDetach()
          Returns the value of the 'Objects To Detach' reference list.
 EList<EObject> getObjectsToDetachGen()
           
 EObject getOldContainer(EObject eObject)
           
 EReference getOldContainmentFeature(EObject eObject)
           
protected  java.util.Map<EObject,ChangeDescriptionImpl.OldContainmentInformation> getOldContainmentInformation()
           
 EList<ResourceChange> getResourceChanges()
           
protected  void preApply(boolean reverse)
           
 
Methods inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
eAdapters, eBasicAdapters, eBasicProperties, eBasicSetContainer, eClass, eContainerFeatureID, eDeliver, eInternalContainer, eInvoke, eIsProxy, eProperties, eSetClass, eSetDeliver, eSetProxyURI
 
Methods inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl
eAddVirtualValue, eAllContents, eBaseStructuralFeatureID, eBasicRemoveFromContainer, eBasicRemoveFromContainerFeature, eBasicSetContainer, eComputeVirtualValuesCapacity, eContainer, eContainerAdapterArray, eContainingFeature, eContainmentFeature, eContainmentFeature, eContains, eContents, eCrossReferences, eDerivedOperationID, eDerivedOperationID, eDerivedStructuralFeatureID, eDerivedStructuralFeatureID, eDirectResource, eDynamicBasicRemoveFromContainer, eDynamicClass, eDynamicFeature, eDynamicFeatureID, eDynamicGet, eDynamicGet, eDynamicGet, eDynamicInverseAdd, eDynamicInverseAdd, eDynamicInverseRemove, eDynamicInverseRemove, eDynamicInvoke, eDynamicInvoke, eDynamicIsSet, eDynamicIsSet, eDynamicIsSet, eDynamicSet, eDynamicSet, eDynamicSet, eDynamicUnset, eDynamicUnset, eDynamicUnset, eGet, eGet, eGet, eHasSettings, eInternalResource, eInverseAdd, eInverseAdd, eInverseRemove, eInvocationDelegate, eInvoke, eIsSet, eObjectForURIFragmentSegment, eOpenGet, eOpenIsSet, eOpenSet, eOpenUnset, eProxyURI, eRemoveVirtualValue, eResolveProxy, eResource, eSet, eSetDirectResource, eSetResource, eSetStore, eSetting, eSettingDelegate, eSettings, eSetVirtualIndexBits, eSetVirtualValue, eSetVirtualValues, eStaticFeatureCount, eStaticOperationCount, eStore, eUnset, eURIFragmentSegment, eVirtualBitCount, eVirtualGet, eVirtualGet, eVirtualIndex, eVirtualIndexBits, eVirtualIsSet, eVirtualSet, eVirtualUnset, eVirtualValue, eVirtualValues, toString
 
Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
eBasicAdapterArray, eBasicHasAdapters, eNotificationRequired, eNotify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.emf.ecore.InternalEObject
eNotificationRequired
 

Field Detail

objectChanges

protected EMap<EObject,EList<FeatureChange>> objectChanges
The cached value of the 'Object Changes' map.

See Also:
getObjectChanges()

objectsToDetach

protected EList<EObject> objectsToDetach
The cached value of the 'Objects To Detach' reference list. The Objects to Detach list is first calculated when the getObjectsToDetach() method is invoked and reset when new changes are described.

See Also:
getObjectsToDetach()

objectsToAttach

protected EList<EObject> objectsToAttach
The cached value of the 'Objects To Attach' containment reference list.

See Also:
getObjectsToAttach()

resourceChanges

protected EList<ResourceChange> resourceChanges
The cached value of the 'Resource Changes' containment reference list.

See Also:
getResourceChanges()

oldContainmentInformation

protected java.util.Map<EObject,ChangeDescriptionImpl.OldContainmentInformation> oldContainmentInformation
Constructor Detail

ChangeDescriptionImpl

protected ChangeDescriptionImpl()

Method Detail

eStaticClass

protected EClass eStaticClass()

Overrides:
eStaticClass in class EObjectImpl

getObjectChanges

public EMap<EObject,EList<FeatureChange>> getObjectChanges()

Specified by:
getObjectChanges in interface ChangeDescription
Returns:
the value of the 'Object Changes' map.
See Also:
ChangePackage.getChangeDescription_ObjectChanges()

getObjectsToDetachGen

public EList<EObject> getObjectsToDetachGen()


getContainedEObjects

protected static java.util.List<EObject> getContainedEObjects(java.util.List<FeatureMap.Entry> featureMapEntries)

getObjectsToDetach

public EList<EObject> getObjectsToDetach()
Description copied from interface: ChangeDescription
Returns the value of the 'Objects To Detach' reference list. The list contents are of type EObject.

Returns the list of objects that will be detached when this Change Description is applied. The list is calculated every time this method is called.

Specified by:
getObjectsToDetach in interface ChangeDescription
Returns:
the value of the 'Objects To Detach' reference list.
See Also:
ChangePackage.getChangeDescription_ObjectsToDetach()

getObjectsToAttach

public EList<EObject> getObjectsToAttach()

Specified by:
getObjectsToAttach in interface ChangeDescription
Returns:
the value of the 'Objects To Attach' containment reference list.
See Also:
ChangePackage.getChangeDescription_ObjectsToAttach()

getResourceChanges

public EList<ResourceChange> getResourceChanges()

Specified by:
getResourceChanges in interface ChangeDescription
Returns:
the value of the 'Resource Changes' containment reference list.
See Also:
ChangePackage.getChangeDescription_ResourceChanges()

apply

public void apply()

Specified by:
apply in interface ChangeDescription

applyAndReverse

public void applyAndReverse()

Specified by:
applyAndReverse in interface ChangeDescription

eInverseRemove

public NotificationChain eInverseRemove(InternalEObject otherEnd,
                                        int featureID,
                                        NotificationChain msgs)

Overrides:
eInverseRemove in class BasicEObjectImpl

preApply

protected void preApply(boolean reverse)

getOldContainmentInformation

protected java.util.Map<EObject,ChangeDescriptionImpl.OldContainmentInformation> getOldContainmentInformation()

getOldContainer

public EObject getOldContainer(EObject eObject)

getOldContainmentFeature

public EReference getOldContainmentFeature(EObject eObject)

eGet

public java.lang.Object eGet(int featureID,
                             boolean resolve,
                             boolean coreType)

Specified by:
eGet in interface InternalEObject
Overrides:
eGet in class BasicEObjectImpl
See Also:
InternalEObject.eGet(EStructuralFeature, boolean, boolean)

eSet

public void eSet(int featureID,
                 java.lang.Object newValue)

Specified by:
eSet in interface InternalEObject
Overrides:
eSet in class BasicEObjectImpl
See Also:
EObject.eSet(EStructuralFeature, Object)

eUnset

public void eUnset(int featureID)

Specified by:
eUnset in interface InternalEObject
Overrides:
eUnset in class BasicEObjectImpl
See Also:
EObject.eUnset(EStructuralFeature)

eIsSet

public boolean eIsSet(int featureID)

Specified by:
eIsSet in interface InternalEObject
Overrides:
eIsSet in class BasicEObjectImpl
See Also:
EObject.eIsSet(EStructuralFeature)

Copyright 2001-2006 IBM Corporation and others.
All Rights Reserved.