Package org.eclipse.emf.spi.cdo

## Class DefaultCDOMerger

- java.lang.Object
- - org.eclipse.emf.spi.cdo.DefaultCDOMerger

- All Implemented Interfaces:
    `CDOMerger`
  Direct Known Subclasses:
    `DefaultCDOMerger.PerFeature`

      public class DefaultCDOMerger
      extends java.lang.Object
      implements CDOMerger

  If the meaning of this type isn't clear, there really should be more of a description here...
  Since:
    3.0
  Author:
    Eike Stepper

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `DefaultCDOMerger.ChangedInSourceAndDetachedInTargetConflict` | If the meaning of this type isn't clear, there really should be more of a description here...
    `static class` | `DefaultCDOMerger.ChangedInSourceAndTargetConflict` | If the meaning of this type isn't clear, there really should be more of a description here...
    `static class` | `DefaultCDOMerger.ChangedInTargetAndDetachedInSourceConflict` | If the meaning of this type isn't clear, there really should be more of a description here...
    `static class` | `DefaultCDOMerger.Conflict` | If the meaning of this type isn't clear, there really should be more of a description here...
    `static class` | `DefaultCDOMerger.PerFeature` | If the meaning of this type isn't clear, there really should be more of a description here...
    `static class` | `DefaultCDOMerger.ResolutionPreference` | Enumerates the possible resolution preferences that can be used with a `DefaultCDOMerger`.

    - ### Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.transaction.CDOMerger

      `CDOMerger.ConflictException`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DefaultCDOMerger()` |
    `DefaultCDOMerger​(CDOCommonRepository.ListOrdering listOrdering)` |
    `DefaultCDOMerger​(DefaultCDOMerger.ResolutionPreference resolutionPreference)` |
    `DefaultCDOMerger​(DefaultCDOMerger.ResolutionPreference resolutionPreference, CDOCommonRepository.ListOrdering listOrdering)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected java.lang.Object` | `addedInSource​(CDORevision revision)` |
    `protected java.lang.Object` | `addedInSourceAndTarget​(CDORevision targetRevision, CDORevision sourceRevision)` |
    `protected java.lang.Object` | `addedInTarget​(CDORevision revision)` |
    `protected java.lang.Object` | `changedInSource​(CDORevisionDelta delta)` |
    `protected java.lang.Object` | `changedInSourceAndDetachedInTarget​(CDORevisionDelta sourceDelta)` |
    `protected java.lang.Object` | `changedInSourceAndTarget​(CDORevisionDelta targetDelta, CDORevisionDelta sourceDelta)` |
    `protected java.lang.Object` | `changedInTarget​(CDORevisionDelta delta)` |
    `protected java.lang.Object` | `changedInTargetAndDetachedInSource​(CDORevisionDelta targetDelta)` |
    `protected java.lang.Object` | `detachedInSource​(CDOID id)` |
    `protected java.lang.Object` | `detachedInSourceAndTarget​(CDOID id)` |
    `protected java.lang.Object` | `detachedInTarget​(CDOID id)` |
    `java.util.Map<CDOID,​DefaultCDOMerger.Conflict>` | `getConflicts()` |
    `CDOCommonRepository.ListOrdering` | `getListOrdering()` |
    `DefaultCDOMerger.ResolutionPreference` | `getResolutionPreference()` |
    `CDOChangeSetData` | `getResult()` |
    `protected java.util.Map<CDOID,​java.lang.Object>` | `getSourceMap()` |
    `protected java.util.Map<CDOID,​java.lang.Object>` | `getTargetMap()` |
    `protected boolean` | `merge​(java.lang.Object targetData, java.lang.Object sourceData)` |
    `CDOChangeSetData` | `merge​(CDOChangeSet target, CDOChangeSet source)` | Calculates the changes between a source `change set` and a target `change set` and returns the result relative to their common ancestor.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### DefaultCDOMerger

          public DefaultCDOMerger()

    - #### DefaultCDOMerger

          public DefaultCDOMerger​(CDOCommonRepository.ListOrdering listOrdering)

      Since:
        4.6

    - #### DefaultCDOMerger

          public DefaultCDOMerger​(DefaultCDOMerger.ResolutionPreference resolutionPreference)

      Since:
        4.2

    - #### DefaultCDOMerger

          public DefaultCDOMerger​(DefaultCDOMerger.ResolutionPreference resolutionPreference,
                                  CDOCommonRepository.ListOrdering listOrdering)

      Since:
        4.6

  - ### Method Detail

    - #### getResolutionPreference

          public final DefaultCDOMerger.ResolutionPreference getResolutionPreference()

      Since:
        4.2

    - #### getListOrdering

          public CDOCommonRepository.ListOrdering getListOrdering()

      Since:
        4.6

    - #### getResult

          public CDOChangeSetData getResult()

    - #### getConflicts

          public java.util.Map<CDOID,​DefaultCDOMerger.Conflict> getConflicts()

    - #### merge

          public CDOChangeSetData merge​(CDOChangeSet target,
                                        CDOChangeSet source)
                                 throws CDOMerger.ConflictException

      Description copied from interface: `CDOMerger`
      Calculates the changes between a source `change set` and a target `change set` and returns the result relative to their common ancestor.
      Specified by:
        `merge` in interface `CDOMerger`
      Throws:
        `CDOMerger.ConflictException`

    - #### merge

          protected boolean merge​(java.lang.Object targetData,
                                  java.lang.Object sourceData)

    - #### addedInTarget

          protected java.lang.Object addedInTarget​(CDORevision revision)

    - #### addedInSource

          protected java.lang.Object addedInSource​(CDORevision revision)

    - #### addedInSourceAndTarget

          protected java.lang.Object addedInSourceAndTarget​(CDORevision targetRevision,
                                                            CDORevision sourceRevision)

    - #### changedInTarget

          protected java.lang.Object changedInTarget​(CDORevisionDelta delta)

    - #### detachedInTarget

          protected java.lang.Object detachedInTarget​(CDOID id)

    - #### changedInSource

          protected java.lang.Object changedInSource​(CDORevisionDelta delta)

    - #### detachedInSource

          protected java.lang.Object detachedInSource​(CDOID id)

    - #### detachedInSourceAndTarget

          protected java.lang.Object detachedInSourceAndTarget​(CDOID id)

    - #### changedInSourceAndTarget

          protected java.lang.Object changedInSourceAndTarget​(CDORevisionDelta targetDelta,
                                                              CDORevisionDelta sourceDelta)

    - #### changedInSourceAndDetachedInTarget

          protected java.lang.Object changedInSourceAndDetachedInTarget​(CDORevisionDelta sourceDelta)

    - #### changedInTargetAndDetachedInSource

          protected java.lang.Object changedInTargetAndDetachedInSource​(CDORevisionDelta targetDelta)

    - #### getTargetMap

          protected java.util.Map<CDOID,​java.lang.Object> getTargetMap()

    - #### getSourceMap

          protected java.util.Map<CDOID,​java.lang.Object> getSourceMap()