Package org.eclipse.emf.cdo.common.commit

## Interface CDOChangeSetData

- All Superinterfaces:
    `CDOChangeKindProvider`
  All Known Subinterfaces:
    `CDOChangeSet`, `CDOCommitData`, `CDOCommitHistory.TriggerLoadElement`, `CDOCommitInfo`, `CDOSessionInvalidationEvent`, `InternalCDOSessionInvalidationEvent`

      public interface CDOChangeSetData
      extends CDOChangeKindProvider

  A `change kind provider` with detailed information about `new`, `changed` and `detached` objects.
  Since:
    3.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.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `CDOChangeSetData` | `copy()` | Returns a deep copy of this change set data.
    `default void` | `forEachRevision​(java.util.function.Consumer<CDORevision> consumer)` |
    `default void` | `forEachRevisionDelta​(java.util.function.Consumer<CDORevisionDelta> consumer)` |
    `java.util.List<CDOID>` | `getAffectedIDs()` | Returns a list of ids denoting which revisions have been added, changed, or revised in the context of a commit operation.
    `java.util.List<CDORevisionKey>` | `getChangedObjects()` | Returns a list of revision keys denoting which (original) revisions have been changed in the context of a commit operation.
    `java.util.Map<CDOID,​CDOChangeKind>` | `getChangeKinds()` |
    `java.util.List<CDOIDAndVersion>` | `getDetachedObjects()` | Returns a list of keys denoting which revisions have been revised (corresponds to detached objects) in the context of a commit operation.
    `java.util.List<CDOIDAndVersion>` | `getNewObjects()` | Returns a list of keys denoting which revisions have been added in the context of a commit operation.
    `boolean` | `isEmpty()` | Returns `true`, if this change set data does not contain any changes, `false` otherwise.
    `void` | `merge​(CDOChangeSetData changeSetData)` | Changes the internal state of this change set data by adding the changes of the given change set data.

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.commit.CDOChangeKindProvider

      `getChangeKind`

- - ### Method Detail

    - #### isEmpty

          boolean isEmpty()

      Returns `true`, if this change set data does not contain any changes, `false` otherwise.

    - #### copy

          CDOChangeSetData copy()

      Returns a deep copy of this change set data.
      Since:
        4.0

    - #### merge

          void merge​(CDOChangeSetData changeSetData)

      Changes the internal state of this change set data by adding the changes of the given change set data.
      Since:
        4.0

    - #### getNewObjects

          java.util.List<CDOIDAndVersion> getNewObjects()

      Returns a list of keys denoting which revisions have been added in the context of a commit operation. Depending on various conditions like change subscriptions particular elements can also be full `revisions`.

    - #### getChangedObjects

          java.util.List<CDORevisionKey> getChangedObjects()

      Returns a list of revision keys denoting which (original) revisions have been changed in the context of a commit operation. Depending on various conditions like change subscriptions particular elements can also be full `revision deltas`.

    - #### getDetachedObjects

          java.util.List<CDOIDAndVersion> getDetachedObjects()

      Returns a list of keys denoting which revisions have been revised (corresponds to detached objects) in the context of a commit operation. Depending on various conditions the version part of particular elements can be `unspecified`.

    - #### getAffectedIDs

          java.util.List<CDOID> getAffectedIDs()

      Returns a list of ids denoting which revisions have been added, changed, or revised in the context of a commit operation.
      Since:
        4.15

    - #### getChangeKinds

          java.util.Map<CDOID,​CDOChangeKind> getChangeKinds()

      Since:
        4.1

    - #### forEachRevision

          default void forEachRevision​(java.util.function.Consumer<CDORevision> consumer)

      Since:
        4.12

    - #### forEachRevisionDelta

          default void forEachRevisionDelta​(java.util.function.Consumer<CDORevisionDelta> consumer)

      Since:
        4.12