## org.eclipse.emf.ecore.impl
Class EReferenceImpl

    java.lang.Object
      org.eclipse.emf.common.notify.impl.BasicNotifierImpl
          org.eclipse.emf.ecore.impl.BasicEObjectImpl
              org.eclipse.emf.ecore.impl.EObjectImpl
                  org.eclipse.emf.ecore.impl.FlatEObjectImpl
                      org.eclipse.emf.ecore.impl.EModelElementImpl
                          org.eclipse.emf.ecore.impl.ENamedElementImpl
                              org.eclipse.emf.ecore.impl.ETypedElementImpl
                                  org.eclipse.emf.ecore.impl.EStructuralFeatureImpl
                                      org.eclipse.emf.ecore.impl.EReferenceImpl

All Implemented Interfaces:
  Notifier, EModelElement, ENamedElement, EObject, EReference, EStructuralFeature, EStructuralFeature.Internal, ETypedElement, InternalEObject, BasicExtendedMetaData.EStructuralFeatureExtendedMetaData.Holder

    public class EReferenceImpl

extends EStructuralFeatureImpl
implements EReference

An implementation of the model object 'EReference'.

The following features are implemented:

- `Containment`
- `Container`
- `Resolve Proxies`
- `EOpposite`
- `EReference Type`
- `EKeys`

Nested Class Summary

Nested classes/interfaces inherited from class org.eclipse.emf.ecore.impl.EStructuralFeatureImpl

`EStructuralFeatureImpl.BasicFeatureMapEntry, EStructuralFeatureImpl.ContainmentUpdatingFeatureMapEntry, EStructuralFeatureImpl.InternalSettingDelegateFeatureMapDelegator, EStructuralFeatureImpl.InternalSettingDelegateMany, EStructuralFeatureImpl.InternalSettingDelegateSingle, EStructuralFeatureImpl.InternalSettingDelegateSingleContainer, EStructuralFeatureImpl.InternalSettingDelegateSingleContainerResolving, EStructuralFeatureImpl.InternalSettingDelegateSingleData, EStructuralFeatureImpl.InternalSettingDelegateSingleDataDynamic, EStructuralFeatureImpl.InternalSettingDelegateSingleDataStatic, EStructuralFeatureImpl.InternalSettingDelegateSingleDataUnsettable, EStructuralFeatureImpl.InternalSettingDelegateSingleDataUnsettableDynamic, EStructuralFeatureImpl.InternalSettingDelegateSingleDataUnsettableStatic, EStructuralFeatureImpl.InternalSettingDelegateSingleEObject, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectContainment, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectContainmentResolving, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectContainmentUnsettable, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectContainmentUnsettableResolving, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectContainmentWithInverse, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectContainmentWithInverseResolving, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectResolving, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectResolvingUnsettable, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectResolvingWithInverse, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectUnsettable, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectWithInverse, EStructuralFeatureImpl.InternalSettingDelegateSingleEObjectWithInverseUnsettable, EStructuralFeatureImpl.InverseUpdatingFeatureMapEntry, EStructuralFeatureImpl.SettingMany, EStructuralFeatureImpl.SimpleContentFeatureMapEntry, EStructuralFeatureImpl.SimpleFeatureMapEntry`

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>`

Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.EStructuralFeature
`EStructuralFeature.Internal, EStructuralFeature.Setting`

Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.EStructuralFeature.Internal
`EStructuralFeature.Internal.DynamicValueHolder, EStructuralFeature.Internal.SettingDelegate`

Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.InternalEObject
`InternalEObject.EStore`

Field Summary
`protected static boolean` `CONTAINER_EDEFAULT` The default value of the '`Container`' attribute
`protected static boolean` `CONTAINMENT_EDEFAULT` The default value of the '`Containment`' attribute
`protected static int` `CONTAINMENT_EFLAG` The flag representing the value of the '`Containment`' attribute
`protected EList<EAttribute>` `eKeys` The cached value of the '`EKeys`' reference list
`protected EReference` `eOpposite` The cached value of the '`EOpposite`' reference
`protected EClass` `eReferenceType`
`protected static boolean` `RESOLVE_PROXIES_EDEFAULT` The default value of the '`Resolve Proxies`' attribute
`protected static int` `RESOLVE_PROXIES_EFLAG` The flag representing the value of the '`Resolve Proxies`' attribute

Fields inherited from class org.eclipse.emf.ecore.impl.EStructuralFeatureImpl

`cachedEType, cachedIsFeatureMap, CHANGEABLE_EDEFAULT, CHANGEABLE_EFLAG, containerClass, DEFAULT_VALUE_EDEFAULT, DEFAULT_VALUE_LITERAL_EDEFAULT, defaultValue, defaultValueFactory, defaultValueLiteral, DERIVED_EDEFAULT, DERIVED_EFLAG, eStructuralFeatureExtendedMetaData, featureID, prototypeFeatureMapEntry, settingDelegate, TRANSIENT_EDEFAULT, TRANSIENT_EFLAG, UNSETTABLE_EDEFAULT, UNSETTABLE_EFLAG, VOLATILE_EDEFAULT, VOLATILE_EFLAG`

Fields inherited from class org.eclipse.emf.ecore.impl.ETypedElementImpl
`eGenericType, eType, LOWER_BOUND_EDEFAULT, lowerBound, MANY_EDEFAULT, ORDERED_EDEFAULT, ORDERED_EFLAG, REQUIRED_EDEFAULT, UNIQUE_EDEFAULT, UNIQUE_EFLAG, UPPER_BOUND_EDEFAULT, upperBound`

Fields inherited from class org.eclipse.emf.ecore.impl.ENamedElementImpl
`name, NAME_EDEFAULT`

Fields inherited from class org.eclipse.emf.ecore.impl.EModelElementImpl
`eAnnotations, EFROZEN, ELAST_EMODEL_ELEMENT_FLAG`

Fields inherited from class org.eclipse.emf.ecore.impl.FlatEObjectImpl
`eContents, eCrossReferences, eProxyURI`

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.ETypedElement
`UNBOUNDED_MULTIPLICITY, UNSPECIFIED_MULTIPLICITY`

Fields inherited from interface org.eclipse.emf.ecore.InternalEObject
`EOPPOSITE_FEATURE_BASE`

Constructor Summary
`protected` `EReferenceImpl()`

Method Summary
`EReference` `basicGetEOpposite()`
`EClass` `basicGetEReferenceType()`
`java.lang.Object` `eGet(int featureID, boolean resolve, boolean coreType)`
`boolean` `eIsSet(int featureID)`
`void` `eSet(int featureID, java.lang.Object newValue)`
`protected EClass` `eStaticClass()`
`void` `eUnset(int featureID)`
`protected void` `freeze()`
`EList<EAttribute>` `getEKeys()`
`EReference` `getEOpposite()`
`EClass` `getEReferenceType()`
`boolean` `isBidirectional()`
`boolean` `isContainer()`
`boolean` `isContainment()`
`boolean` `isResolveProxies()`
`void` `setContainment(boolean newContainment)`
`void` `setEOpposite(EReference newEOpposite)`
`NotificationChain` `setEType(EClassifier newEType, NotificationChain msgs)`
`void` `setResolveProxies(boolean newResolveProxies)`
`java.lang.String` `toString()`

Methods inherited from class org.eclipse.emf.ecore.impl.EStructuralFeatureImpl

`createFeatureMapSettingDelegate, eBasicRemoveFromContainerFeature, eInverseAdd, eInverseRemove, getContainerClass, getDefaultValue, getDefaultValueLiteral, getEContainingClass, getExtendedMetaData, getFeatureID, getFeatureMapEntryPrototype, getSettingDelegate, isChangeable, isDerived, isFeatureMap, isID, isTransient, isUnsettable, isVolatile, setChangeable, setContainerClass, setDefaultValue, setDefaultValueLiteral, setDefaultValueLiteralGen, setDerived, setExtendedMetaData, setFeatureID, setFeatureMapEntryPrototype, setName, setSettingDelegate, setTransient, setUnsettable, setVolatile`

Methods inherited from class org.eclipse.emf.ecore.impl.ETypedElementImpl
`basicGetEType, basicSetEGenericType, basicUnsetEGenericType, getEGenericType, getEType, getLowerBound, getUpperBound, isMany, isOrdered, isRequired, isSetEGenericType, isSetEType, isUnique, setEGenericType, setEGenericType, setEType, setLowerBound, setOrdered, setUnique, setUpperBound, unsetEGenericType, unsetEType`

Methods inherited from class org.eclipse.emf.ecore.impl.ENamedElementImpl
`eContents, eCrossReferences, getName, getNameGen`

Methods inherited from class org.eclipse.emf.ecore.impl.EModelElementImpl
`eObjectForURIFragmentSegment, eURIFragmentSegment, freeze, getEAnnotation, getEAnnotations, isFrozen, setFrozen`

Methods inherited from class org.eclipse.emf.ecore.impl.FlatEObjectImpl
`eIsProxy, eProperties, eProxyURI, eSetProxyURI`

Methods inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
`eAdapters, eBasicAdapters, eBasicProperties, eBasicSetContainer, eClass, eContainerFeatureID, eDeliver, eInternalContainer, eSetClass, eSetDeliver`

Methods inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl

`eAddVirtualValue, eAllContents, eBaseStructuralFeatureID, eBasicRemoveFromContainer, eBasicSetContainer, eComputeVirtualValuesCapacity, eContainer, eContainingFeature, eContainmentFeature, eContainmentFeature, eContains, eDerivedStructuralFeatureID, eDerivedStructuralFeatureID, eDirectResource, eDynamicBasicRemoveFromContainer, eDynamicClass, eDynamicFeature, eDynamicFeatureID, eDynamicGet, eDynamicGet, eDynamicGet, eDynamicInverseAdd, eDynamicInverseAdd, eDynamicInverseRemove, eDynamicInverseRemove, eDynamicIsSet, eDynamicIsSet, eDynamicIsSet, eDynamicSet, eDynamicSet, eDynamicSet, eDynamicUnset, eDynamicUnset, eDynamicUnset, eGet, eGet, eGet, eHasSettings, eInternalResource, eInverseAdd, eInverseRemove, eIsSet, eOpenGet, eOpenIsSet, eOpenSet, eOpenUnset, eRemoveVirtualValue, eResolveProxy, eResource, eSet, eSetDirectResource, eSetResource, eSetStore, eSetting, eSettingDelegate, eSettings, eSetVirtualIndexBits, eSetVirtualValue, eSetVirtualValues, eStaticFeatureCount, eStore, eUnset, eVirtualBitCount, eVirtualGet, eVirtualGet, eVirtualIndex, eVirtualIndexBits, eVirtualIsSet, eVirtualSet, eVirtualUnset, eVirtualValue, eVirtualValues`

Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
`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.EStructuralFeature
`getContainerClass, getDefaultValue, getDefaultValueLiteral, getEContainingClass, getFeatureID, isChangeable, isDerived, isTransient, isUnsettable, isVolatile, setChangeable, setDefaultValue, setDefaultValueLiteral, setDerived, setTransient, setUnsettable, setVolatile`

Methods inherited from interface org.eclipse.emf.ecore.ETypedElement
`getEGenericType, getEType, getLowerBound, getUpperBound, isMany, isOrdered, isRequired, isUnique, setEGenericType, setEType, setLowerBound, setOrdered, setUnique, setUpperBound`

Methods inherited from interface org.eclipse.emf.ecore.ENamedElement
`getName, setName`

Methods inherited from interface org.eclipse.emf.ecore.EModelElement
`getEAnnotation, getEAnnotations`

Methods inherited from interface org.eclipse.emf.ecore.EObject
`eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, 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
`eBaseStructuralFeatureID, eBasicRemoveFromContainer, eBasicSetContainer, eContainerFeatureID, eDerivedStructuralFeatureID, eDirectResource, eGet, eInternalContainer, eInternalResource, eInverseAdd, eInverseRemove, eNotificationRequired, eObjectForURIFragmentSegment, eProxyURI, eResolveProxy, eSetClass, eSetProxyURI, eSetResource, eSetStore, eSetting, eStore, eURIFragmentSegment`

Field Detail

### CONTAINMENT_EDEFAULT

    protected static final boolean CONTAINMENT_EDEFAULT

  The default value of the '`Containment`' attribute.

  See Also:
    `isContainment()`, Constant Field Values

### CONTAINMENT_EFLAG

    protected static final int CONTAINMENT_EFLAG

  The flag representing the value of the '`Containment`' attribute.

  See Also:
    `isContainment()`, Constant Field Values

### CONTAINER_EDEFAULT

    protected static final boolean CONTAINER_EDEFAULT

  The default value of the '`Container`' attribute.

  See Also:
    `isContainer()`, Constant Field Values

### RESOLVE_PROXIES_EDEFAULT

    protected static final boolean RESOLVE_PROXIES_EDEFAULT

  The default value of the '`Resolve Proxies`' attribute.

  See Also:
    `isResolveProxies()`, Constant Field Values

### RESOLVE_PROXIES_EFLAG

    protected static final int RESOLVE_PROXIES_EFLAG

  The flag representing the value of the '`Resolve Proxies`' attribute.

  See Also:
    `isResolveProxies()`, Constant Field Values

### eOpposite

    protected EReference eOpposite

  The cached value of the '`EOpposite`' reference.

  See Also:
    `getEOpposite()`

### eKeys

    protected EList<EAttribute> eKeys

  The cached value of the '`EKeys`' reference list.

  See Also:
    `getEKeys()`

### eReferenceType

    protected EClass eReferenceType

Constructor Detail

### EReferenceImpl

    protected EReferenceImpl()

Method Detail

### eStaticClass

    protected EClass eStaticClass()

  Overrides:
    `eStaticClass` in class `EStructuralFeatureImpl`

### isBidirectional

    public boolean isBidirectional()

### isContainment

    public boolean isContainment()

  Specified by:
    `isContainment` in interface `EReference`
  Specified by:
    `isContainment` in interface `EStructuralFeature.Internal`
  Overrides:
    `isContainment` in class `EStructuralFeatureImpl`
  Returns:
    whether this is a reference that is a containment.
  See Also:
    `EReference.setContainment(boolean)`, `EcorePackage.getEReference_Containment()`

### setContainment

    public void setContainment(boolean newContainment)

  Specified by:
    `setContainment` in interface `EReference`
  Parameters:
    `newContainment` - the new value of the 'Containment' attribute.
  See Also:
    `EReference.isContainment()`

### isContainer

    public boolean isContainer()

  Specified by:
    `isContainer` in interface `EReference`
  Specified by:
    `isContainer` in interface `EStructuralFeature.Internal`
  Overrides:
    `isContainer` in class `EStructuralFeatureImpl`
  Returns:
    whether this is a reference that is a container.
  See Also:
    `EcorePackage.getEReference_Container()`

### isResolveProxies

    public boolean isResolveProxies()

  Specified by:
    `isResolveProxies` in interface `EReference`
  Specified by:
    `isResolveProxies` in interface `EStructuralFeature.Internal`
  Overrides:
    `isResolveProxies` in class `EStructuralFeatureImpl`
  Returns:
    whether this is a reference that resolves proxies.
  See Also:
    `EReference.setResolveProxies(boolean)`, `EcorePackage.getEReference_ResolveProxies()`

### setResolveProxies

    public void setResolveProxies(boolean newResolveProxies)

  Specified by:
    `setResolveProxies` in interface `EReference`
  Parameters:
    `newResolveProxies` - the new value of the 'Resolve Proxies' attribute.
  See Also:
    `EReference.isResolveProxies()`

### getEOpposite

    public EReference getEOpposite()

  Specified by:
    `getEOpposite` in interface `EReference`
  Specified by:
    `getEOpposite` in interface `EStructuralFeature.Internal`
  Overrides:
    `getEOpposite` in class `EStructuralFeatureImpl`
  Returns:
    the opposite if this is reference that has one.
  See Also:
    `EReference.setEOpposite(EReference)`, `EcorePackage.getEReference_EOpposite()`

### basicGetEOpposite

    public EReference basicGetEOpposite()

### setEOpposite

    public void setEOpposite(EReference newEOpposite)

  Specified by:
    `setEOpposite` in interface `EReference`
  Parameters:
    `newEOpposite` - the new value of the 'EOpposite' reference.
  See Also:
    `EReference.getEOpposite()`

### setEType

    public NotificationChain setEType(EClassifier newEType,
                                      NotificationChain msgs)

  Overrides:
    `setEType` in class `ETypedElementImpl`

### getEReferenceType

    public EClass getEReferenceType()

  Specified by:
    `getEReferenceType` in interface `EReference`
  Returns:
    the value of the 'EReference Type' reference.
  See Also:
    `EcorePackage.getEReference_EReferenceType()`

### basicGetEReferenceType

    public EClass basicGetEReferenceType()

### freeze

    protected void freeze()

  Overrides:
    `freeze` in class `ETypedElementImpl`

### getEKeys

    public EList<EAttribute> getEKeys()

  Specified by:
    `getEKeys` in interface `EReference`
  Returns:
    the value of the 'EKeys' reference list.
  See Also:
    `EcorePackage.getEReference_EKeys()`

### eGet

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

  Specified by:
    `eGet` in interface `InternalEObject`
  Overrides:
    `eGet` in class `EStructuralFeatureImpl`
  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 `EStructuralFeatureImpl`
  See Also:
    `EObject.eSet(EStructuralFeature, Object)`

### eUnset

    public void eUnset(int featureID)

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

### eIsSet

    public boolean eIsSet(int featureID)

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

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `EStructuralFeatureImpl`

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