Package org.eclipse.emf.cdo.common.revision

## Interface CDORevisionData

- All Known Subinterfaces:
    `InternalCDORevision`
  All Known Implementing Classes:
    `AbstractCDORevision`, `BaseCDORevision`, `DelegatingCDORevision`, `DetachedCDORevision`, `PointerCDORevision`, `StubCDORevision`, `SyntheticCDORevision`

      public interface CDORevisionData

  Encapsulates the modeled information and the EMF system values of a `revision`.
  Author:
    Eike Stepper
  No Implement
    This interface is not intended to be implemented by clients.
  No Extend
    This interface is not intended to be extended by clients.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.Object` | `NIL` | An object used to represent being set to `null` as opposed to having no value and hence being in the default state.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `accept​(CDORevisionValueVisitor visitor)` |
    `void` | `accept​(CDORevisionValueVisitor visitor, java.util.function.Predicate<EStructuralFeature> filter)` |
    `void` | `accept​(CDORevisionValueVisitor visitor, org.eclipse.net4j.util.Predicate<EStructuralFeature> filter)` | Deprecated. As of 4.9 use `accept(CDORevisionValueVisitor, java.util.function.Predicate)`.
    `boolean` | `contains​(EStructuralFeature feature, java.lang.Object value)` |
    `java.lang.Object` | `get​(EStructuralFeature feature, int index)` |
    `java.lang.Object` | `getContainerID()` |
    `int` | `getContainingFeatureID()` | Provides the input to the calculation of the feature in the container revision that actually holds this revision.
    `CDOID` | `getResourceID()` |
    `int` | `hashCode​(EStructuralFeature feature)` |
    `int` | `indexOf​(EStructuralFeature feature, java.lang.Object value)` |
    `boolean` | `isEmpty​(EStructuralFeature feature)` |
    `int` | `lastIndexOf​(EStructuralFeature feature, java.lang.Object value)` |
    `CDORevision` | `revision()` |
    `int` | `size​(EStructuralFeature feature)` |
    `java.lang.Object[]` | `toArray​(EStructuralFeature feature)` |
    `<T> T[]` | `toArray​(EStructuralFeature feature, T[] array)` |

- - ### Field Detail

    - #### NIL

          static final java.lang.Object NIL

      An object used to represent being set to `null` as opposed to having no value and hence being in the default state.

      The equivalent of `DynamicValueHolder.NIL` (i.e. explicit `null`).

      Since:
        3.0

  - ### Method Detail

    - #### revision

          CDORevision revision()

      Since:
        2.0

    - #### getResourceID

          CDOID getResourceID()

    - #### getContainerID

          java.lang.Object getContainerID()

      Since:
        2.0

    - #### getContainingFeatureID

          int getContainingFeatureID()

      Provides the input to the calculation of the feature in the container revision that actually holds this revision.

      Usage Example:

           CDORevision revision = ...;
           CDORevision container = Util.getRevision(revision.data().getContainerID());

           int containingFeatureID = revision.data().getContainingFeatureID();

           EStructuralFeature feature = containingFeatureID <= InternalEObject.EOPPOSITE_FEATURE_BASE ?
               container.getEClass().getEStructuralFeature(InternalEObject.EOPPOSITE_FEATURE_BASE - containingFeatureID) :
               ((EReference)revision.getEClass().getEStructuralFeature(containingFeatureID)).getEOpposite();

      See Also:
        `BasicEObjectImpl.eContainingFeature()`, `getContainerID()`

    - #### get

          java.lang.Object get​(EStructuralFeature feature,
                               int index)

      Since:
        2.0

    - #### size

          int size​(EStructuralFeature feature)

      Since:
        2.0

    - #### isEmpty

          boolean isEmpty​(EStructuralFeature feature)

      Since:
        2.0

    - #### contains

          boolean contains​(EStructuralFeature feature,
                           java.lang.Object value)

      Since:
        2.0

    - #### indexOf

          int indexOf​(EStructuralFeature feature,
                      java.lang.Object value)

      Since:
        2.0

    - #### lastIndexOf

          int lastIndexOf​(EStructuralFeature feature,
                          java.lang.Object value)

      Since:
        2.0

    - #### toArray

          <T> T[] toArray​(EStructuralFeature feature,
                          T[] array)

      Since:
        2.0

    - #### toArray

          java.lang.Object[] toArray​(EStructuralFeature feature)

      Since:
        2.0

    - #### hashCode

          int hashCode​(EStructuralFeature feature)

      Since:
        2.0

    - #### accept

          void accept​(CDORevisionValueVisitor visitor)

      Since:
        4.2

    - #### accept

          @Deprecated
          void accept​(CDORevisionValueVisitor visitor,
                      org.eclipse.net4j.util.Predicate<EStructuralFeature> filter)

      Deprecated.
      As of 4.9 use `accept(CDORevisionValueVisitor, java.util.function.Predicate)`.
      Since:
        4.2

    - #### accept

          void accept​(CDORevisionValueVisitor visitor,
                      java.util.function.Predicate<EStructuralFeature> filter)

      Since:
        4.9