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
    Modifier and Type | Method and Description
    --- | ---
    `CDOChangeSetData` | `copy()` Returns a deep copy of this change set data.
    `List<CDORevisionKey>` | `getChangedObjects()` Returns a collection of revision keys denoting which (original) revisions have been changed in the context of a commit operation.
    `Map<CDOID,CDOChangeKind>` | `getChangeKinds()`
    `List<CDOIDAndVersion>` | `getDetachedObjects()` Returns a collection of keys denoting which revisions have been revised (corresponds to detached objects) in the context of a commit operation.
    `List<CDOIDAndVersion>` | `getNewObjects()` Returns a collection 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

          List<CDOIDAndVersion> getNewObjects()

      Returns a collection 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

          List<CDORevisionKey> getChangedObjects()

      Returns a collection 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

          List<CDOIDAndVersion> getDetachedObjects()

      Returns a collection 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`.

    - #### getChangeKinds

          Map<CDOID,CDOChangeKind> getChangeKinds()

      Since:
        4.1

Copyright (c) 2014 Eike Stepper (Berlin, 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