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

Common concepts for dealing with revisions and revision lists.

- Interface Summary
  Interface | Description
  --- | ---
  CDOAllRevisionsProvider | Provides consumers with all `revisions` available in an instance of this interface.
  CDOElementProxy | A moveable placeholder for the element of a `list` at a specified `index`.
  CDOIDAndBranch | An `ID` / `branch` pair.
  CDOIDAndVersion | An `ID` / version number pair.
  CDOList | A `moveable` `EList`.
  CDOListFactory | Creates `list` instances.
  CDOListResolver | A strategy that specifies which list elememts must be present (loaded) in a `CDOID` list of a `revision` when a certain list index is accessed.
  CDORevisable | An entity that has a defined lifetime (creation plus revision) and a version in a `branch`.
  CDORevision | Encapsulates the immutable system information of a single CDO `object` between two `commits` in a `branch` and provides access to its modeled `data`.
  CDORevisionCache | Caches `revisions` and possibly `evicts` those that are no longer strongly referenced when free memory runs low.
  CDORevisionCache.AdditionEvent | An `event` fired from a `revision cache` when a `revision` is added to it.
  CDORevisionCache.EvictionEvent | An `event` fired from a `revision cache` for `revisions` that are evicted because they are no longer strongly referenced when free memory runs low.
  CDORevisionCacheAdder | An entity that `revisions` can be added to.
  CDORevisionData | Encapsulates the modeled information and the EMF system values of a `revision`.
  CDORevisionFactory | Creates `revision` instances.
  CDORevisionHandler | A call-back interface that indicates the ability to handle `revisions` that are passed from other entities.
  CDORevisionInterner |
  CDORevisionKey | Uniquely identifies a `revision` by version in a `branch`.
  CDORevisionManager | Provides access to `revisions` in a CDO `repository` by demand loading and caching them.
  CDORevisionProvider | Provides consumers with the `revisions` of `identifiable` CDO objects by selecting a particular one from several possible `branch points`.
  CDORevisionsLoadedEvent | An `event` fired from a `revision manager` when a new `revision` has been loaded.
  CDORevisionValueVisitor | Visits `values` of a `revision`.

- Class Summary
  Class | Description
  --- | ---
  CDORevisionHandler.Filtered | A delegating `revision handler` with a `filter()` method used to suppress specific revisions.
  CDORevisionHandler.Filtered.Undetached | A delegating `revision handler` that filters detached revisions.
  CDORevisionUtil | Various static helper methods for dealing with `revisions`.
  CDORevisionUtil.AllRevisionsDumper | Dumps `revisions`, sorted and grouped by `branch`, to various output formats and targets.
  CDORevisionUtil.AllRevisionsDumper.Stream | A `revision dumper` that directs all output to a stream.
  CDORevisionUtil.AllRevisionsDumper.Stream.Html | A `revision dumper` that directs all output as HTML text to a stream.
  CDORevisionUtil.AllRevisionsDumper.Stream.Plain | A `revision dumper` that directs all output as plain text to a stream.
  CDORevisionUtil.CDORevisionComparator | Compares `revision keys` by `ID` and `version`.