org.eclipse.emf.compare.domain

## Interface ICompareEditingDomain

All Known Implementing Classes:
  EMFCompareEditingDomain

    public interface ICompareEditingDomain

Something like EMF's `EditingDomain` but dedicated to the handling of comparison merging and undoing / redoing those merge.

### Method Summary

All Methods Instance Methods Abstract Methods Deprecated Methods
`Command` `createCopyCommand(List<? extends Diff> differences, boolean leftToRight, IMerger.Registry mergerRegistry)` Deprecated.
`ICompareCopyCommand` `createCopyCommand(List<? extends Diff> differences, boolean leftToRight, IMerger.Registry mergerRegistry, IMergeRunnable runnable)` Creates a new command that will execute the given `IMergeRunnable` that is expected to merge the given differences in from right to left or left to right by using the mergers defined in the given merger registry.
`ChangeRecorder` `getChangeRecorder()` Deprecated.
`ICompareCommandStack` `getCommandStack()` Returns the associated `ICompareCommandStack`.

### Method Detail

#### getCommandStack

    ICompareCommandStack getCommandStack()

Returns the associated `ICompareCommandStack`.

Returns:
  the associated `ICompareCommandStack`.

#### getChangeRecorder

    @Deprecated
    ChangeRecorder getChangeRecorder()

Deprecated.
Returns the associated `ChangeRecorder`.

Returns:
  the associated `ChangeRecorder`.
Since:
  3.0

#### createCopyCommand

    @Deprecated
    Command createCopyCommand(List<? extends Diff> differences,
                                          boolean leftToRight,
                                          IMerger.Registry mergerRegistry)

Deprecated.
Creates a new command that will merge the given differences in from right to left or left to right by using the mergers defined in the given merger registry.

Parameters:
  `differences` - the differences to merge.
  `leftToRight` - whether the merge has to be merge from left to right or right to left.
  `mergerRegistry` - the merger registry to query to get the appropriate mergers for each difference to be merged.
Returns:
  the created command.
Since:
  3.0

#### createCopyCommand

    ICompareCopyCommand createCopyCommand(List<? extends Diff> differences,
                                          boolean leftToRight,
                                          IMerger.Registry mergerRegistry,
                                          IMergeRunnable runnable)

Creates a new command that will execute the given `IMergeRunnable` that is expected to merge the given differences in from right to left or left to right by using the mergers defined in the given merger registry.

Parameters:
  `differences` - the differences to merge.
  `leftToRight` - whether the merge has to be merge from left to right or right to left.
  `mergerRegistry` - the merger registry to query to get the appropriate mergers for each difference to be merged.
  `runnable` - the runnable that will implement the merge
Returns:
  the created command.
Since:
  4.0