org.eclipse.emf.cdo.spi.common.revision

## Interface InternalCDORevision

- All Superinterfaces:
    CDOBranchAdjustable, CDOBranchPoint, CDOBranchProvider, CDOBranchVersion, CDOIDAndVersion, CDOIdentifiable, CDOReferenceAdjustable, CDORevisable, CDORevision, CDORevisionData, CDORevisionKey, CDOTimeProvider, CDOVersionProvider
  All Known Implementing Classes:
    AbstractCDORevision, BaseCDORevision, DelegatingCDORevision, DetachedCDORevision, PointerCDORevision, StubCDORevision, SyntheticCDORevision

      public interface InternalCDORevision
      extends CDORevision, CDORevisionData, CDOReferenceAdjustable, CDOBranchAdjustable

  If the meaning of this type isn't clear, there really should be more of a description here...
  Since:
    2.0
  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 and Description
    --- | ---
    `static int` | `DO_NOT_CREATE_LIST`

    - ### Fields inherited from interface org.eclipse.emf.cdo.common.revision.CDORevision

      `DEPTH_INFINITE, DEPTH_NONE, FIRST_VERSION, MAIN_BRANCH_ID, PERMISSION_PROVIDER, UNCHUNKED`

    - ### Fields inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchPoint

      `INVALID_DATE, UNSPECIFIED_DATE`

    - ### Fields inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchVersion

      `UNSPECIFIED_VERSION`

    - ### Fields inherited from interface org.eclipse.emf.cdo.common.revision.CDORevisionData

      `NIL`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(EStructuralFeature feature, int index, java.lang.Object value)`
    `void` | `adjustForCommit(CDOBranch branch, long timeStamp)`
    `boolean` | `bypassPermissionChecks(boolean on)` Enables or disables permission checking for this revision.
    `void` | `clear(EStructuralFeature feature)`
    `EStructuralFeature[]` | `clearValues()`
    `InternalCDORevisionDelta` | `compare(CDORevision origin)`
    `void` | `convertEObjects(CDOIDProvider oidProvider)`
    `InternalCDORevision` | `copy()`
    `void` | `freeze()`
    `InternalCDOBranch` | `getBranch()` Returns the branch of this branch version.
    `InternalCDOClassInfo` | `getClassInfo()`
    `CDOList` | `getList(EStructuralFeature feature)` Deprecated. As of 4.7 use either `getListOrNull(EStructuralFeature)` or `getOrCreateList(EStructuralFeature)`.
    `CDOList` | `getList(EStructuralFeature feature, int initialCapacity)` Deprecated. As of 4.7 use either `getListOrNull(EStructuralFeature)` or `getOrCreateList(EStructuralFeature, int)`.
    `CDOList` | `getListOrNull(EStructuralFeature feature)`
    `CDOList` | `getOrCreateList(EStructuralFeature feature)` Same as `getOrCreateList(feature, 0)`.
    `CDOList` | `getOrCreateList(EStructuralFeature feature, int initialCapacity)` Returns the list that represents the passed feature, possibly creates it if needed.
    `InternalCDORevision` | `getProperRevision()`
    `java.lang.String` | `getResourceNodeName()`
    `InternalCDORevision` | `getRevisionForID(CDOID id)`
    `java.lang.Object` | `getValue(EStructuralFeature feature)` Should never return `CDORevisionData.NIL`
    `boolean` | `isFrozen()`
    `boolean` | `isListPreserving()`
    `boolean` | `isUnchunked()`
    `java.lang.Object` | `move(EStructuralFeature feature, int targetIndex, int sourceIndex)`
    `void` | `read(CDODataInput in)`
    `boolean` | `readValues(CDODataInput in)`
    `java.lang.Object` | `remove(EStructuralFeature feature, int index)`
    `java.lang.Object` | `set(EStructuralFeature feature, int index, java.lang.Object value)`
    `void` | `setBranchPoint(CDOBranchPoint branchPoint)`
    `void` | `setContainerID(java.lang.Object containerID)`
    `void` | `setContainingFeatureID(int containingFeatureID)`
    `void` | `setID(CDOID id)`
    `void` | `setList(EStructuralFeature feature, InternalCDOList list)`
    `void` | `setListPreserving()` The default behavior of a revision for calls to the `clear(EStructuralFeature)` and `unset(EStructuralFeature)` methods is to set the feature's value to null (discarding the value itself, a List).
    `void` | `setPermission(CDOPermission permission)`
    `void` | `setResourceID(CDOID resourceID)`
    `void` | `setRevised(long revised)`
    `void` | `setUnchunked()`
    `java.lang.Object` | `setValue(EStructuralFeature feature, java.lang.Object value)`
    `void` | `setVersion(int version)`
    `void` | `unset(EStructuralFeature feature)`
    `void` | `write(CDODataOutput out, int referenceChunk)`
    `void` | `write(CDODataOutput out, int referenceChunk, CDOBranchPoint securityContext)`
    `void` | `writeValues(CDODataOutput out, int referenceChunk)`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.revision.CDORevision

      `data, getEClass, getPermission, isHistorical, isReadable, isResource, isResourceFolder, isResourceNode, isValid, isValid, isWritable, merge`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.revision.CDOIDAndVersion

      `getVersion`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.id.CDOIdentifiable

      `getID`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.revision.CDORevisable

      `getRevised`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchPoint

      `getTimeStamp`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchVersion

      `getVersion`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.revision.CDORevisionData

      `accept, accept, accept, contains, get, getContainerID, getContainingFeatureID, getResourceID, hashCode, indexOf, isEmpty, lastIndexOf, revision, size, toArray, toArray`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.revision.CDOReferenceAdjustable

      `adjustReferences`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.branch.CDOBranchAdjustable

      `adjustBranches`

- - ### Field Detail

    - #### DO_NOT_CREATE_LIST

          static final int DO_NOT_CREATE_LIST

      Since:
        4.7
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getClassInfo

          InternalCDOClassInfo getClassInfo()

      Specified by:
        `getClassInfo` in interface `CDORevision`
      Since:
        4.2

    - #### getBranch

          InternalCDOBranch getBranch()

      Description copied from interface: `CDOBranchVersion`
      Returns the branch of this branch version.
      Specified by:
        `getBranch` in interface `CDOBranchPoint`
      Specified by:
        `getBranch` in interface `CDOBranchProvider`
      Specified by:
        `getBranch` in interface `CDOBranchVersion`
      Since:
        4.2

    - #### getRevisionForID

          InternalCDORevision getRevisionForID(CDOID id)

      Since:
        4.2

    - #### getProperRevision

          InternalCDORevision getProperRevision()

      Since:
        4.2

    - #### setID

          void setID(CDOID id)

    - #### setVersion

          void setVersion(int version)

    - #### setBranchPoint

          void setBranchPoint(CDOBranchPoint branchPoint)

      Since:
        3.0

    - #### setRevised

          void setRevised(long revised)

    - #### setResourceID

          void setResourceID(CDOID resourceID)

    - #### setContainerID

          void setContainerID(java.lang.Object containerID)

    - #### setContainingFeatureID

          void setContainingFeatureID(int containingFeatureID)

    - #### adjustForCommit

          void adjustForCommit(CDOBranch branch,
                               long timeStamp)

      Since:
        3.0

    - #### add

          void add(EStructuralFeature feature,
                   int index,
                   java.lang.Object value)

    - #### clear

          void clear(EStructuralFeature feature)

    - #### move

          java.lang.Object move(EStructuralFeature feature,
                                int targetIndex,
                                int sourceIndex)

    - #### remove

          java.lang.Object remove(EStructuralFeature feature,
                                  int index)

    - #### set

          java.lang.Object set(EStructuralFeature feature,
                               int index,
                               java.lang.Object value)

    - #### unset

          void unset(EStructuralFeature feature)

    - #### getValue

          java.lang.Object getValue(EStructuralFeature feature)

      Should never return `CDORevisionData.NIL`

    - #### setValue

          java.lang.Object setValue(EStructuralFeature feature,
                                    java.lang.Object value)

    - #### setList

          void setList(EStructuralFeature feature,
                       InternalCDOList list)

    - #### getList

          @Deprecated
          CDOList getList(EStructuralFeature feature)

      Deprecated. As of 4.7 use either `getListOrNull(EStructuralFeature)` or `getOrCreateList(EStructuralFeature)`.

    - #### getList

          @Deprecated
          CDOList getList(EStructuralFeature feature,
                                       int initialCapacity)

      Deprecated. As of 4.7 use either `getListOrNull(EStructuralFeature)` or `getOrCreateList(EStructuralFeature, int)`.

    - #### getListOrNull

          CDOList getListOrNull(EStructuralFeature feature)

      Since:
        4.7

    - #### getOrCreateList

          CDOList getOrCreateList(EStructuralFeature feature)

      Same as `getOrCreateList(feature, 0)`.

      Warning: Must be used with caution because list creation for an `unsettable` feature implies a transition from UNSET to SET!

      Since:
        4.7

    - #### getOrCreateList

          CDOList getOrCreateList(EStructuralFeature feature,
                                  int initialCapacity)

      Returns the list that represents the passed feature, possibly creates it if needed.

      Warning: Must be used with caution because list creation for an `unsettable` feature implies a transition from UNSET to SET!

      Parameters:
        `initialCapacity` - the initialCapacity of a new list to be created if this revision has no list so far (its size will always be 0), or -1 to skip list creation and return `null` in this case.
      Since:
        4.7
      See Also:
        `DO_NOT_CREATE_LIST`

    - #### read

          void read(CDODataInput in)
             throws java.io.IOException

      Throws:
        `java.io.IOException`
      Since:
        3.0

    - #### readValues

          boolean readValues(CDODataInput in)
                      throws java.io.IOException

      Throws:
        `java.io.IOException`
      Since:
        4.3

    - #### write

          void write(CDODataOutput out,
                     int referenceChunk)
              throws java.io.IOException

      Throws:
        `java.io.IOException`
      Since:
        3.0

    - #### write

          void write(CDODataOutput out,
                     int referenceChunk,
                     CDOBranchPoint securityContext)
              throws java.io.IOException

      Throws:
        `java.io.IOException`
      Since:
        4.1

    - #### writeValues

          void writeValues(CDODataOutput out,
                           int referenceChunk)
                    throws java.io.IOException

      Throws:
        `java.io.IOException`
      Since:
        4.3

    - #### convertEObjects

          void convertEObjects(CDOIDProvider oidProvider)

      Since:
        3.0

    - #### compare

          InternalCDORevisionDelta compare(CDORevision origin)

      Specified by:
        `compare` in interface `CDORevision`
      Since:
        3.0

    - #### copy

          InternalCDORevision copy()

      Specified by:
        `copy` in interface `CDORevision`
      Since:
        3.0

    - #### clearValues

          EStructuralFeature[] clearValues()

      Since:
        4.2

    - #### getResourceNodeName

          java.lang.String getResourceNodeName()

      Since:
        4.3

    - #### setPermission

          void setPermission(CDOPermission permission)

      Since:
        4.1

    - #### bypassPermissionChecks

          boolean bypassPermissionChecks(boolean on)

      Enables or disables permission checking for this revision.

      This method is used on the client side if the framework changes the revision on another user's behalf, e.g., during invalidation or general revision copying. It's safe to offer this method on the client side because the server is always the permission checking authority (during load or commit).

      Since:
        4.3

    - #### isListPreserving

          boolean isListPreserving()

      Since:
        4.3

    - #### setListPreserving

          void setListPreserving()

      The default behavior of a revision for calls to the `clear(EStructuralFeature)` and `unset(EStructuralFeature)` methods is to set the feature's value to null (discarding the value itself, a List). By calling this `setListPreserving()` method the default behavior is changed; instead of setting the feature's value to null, the `List.clear()` method is called on the feature's list instance.
      Since:
        4.3

    - #### freeze

          void freeze()

      Since:
        4.0

    - #### isFrozen

          boolean isFrozen()

      Since:
        4.2

    - #### isUnchunked

          boolean isUnchunked()

      Since:
        4.1

    - #### setUnchunked

          void setUnchunked()

      Since:
        4.1

Copyright (c) 2004-2019 Eike Stepper (Loehne, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html