Package org.eclipse.emf.cdo.compare

# Class CDOCompare

java.lang.Object
org.eclipse.emf.cdo.compare.CDOCompare

public class CDOCompare extends Object
A class with many overridable factory methods that help to create EMF `comparisons`.

Author:
  Eike Stepper

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`CDOCompare.CDODiffEngine`
A `diff engine` that `creates` and uses CDO-specific `feature filters`.
`static class`
`CDOCompare.CDOFeatureFilter`
A CDO-specific `feature filter` that uses `EMFUtil.isPersistent()` to determine whether a `feature` is `transient`, or not.
`static class`
`CDOCompare.CDOIDFunction`
An `ID function` that considers the `CDOID`s of `objects`.
`static class`
`CDOCompare.CDOMatchEngine`
A `match engine` that treats `resources` as `EObjects`.
`static class`
`CDOCompare.CDOMatcher`
A `matcher` that treats `resources` as `EObjects`.

## Constructor Summary

Constructors
Constructor
Description
`CDOCompare()`

## Method Summary

Modifier and Type
Method
Description
`org.eclipse.emf.compare.Comparison`
`compare(org.eclipse.emf.compare.scope.IComparisonScope scope)`
`static CDOCompare`
`create()`
`protected org.eclipse.emf.compare.EMFCompare`
`createComparator(org.eclipse.emf.compare.match.eobject.IEObjectMatcher matcher, org.eclipse.emf.compare.match.IComparisonFactory comparisonFactory)`
`protected org.eclipse.emf.compare.EMFCompare.Builder`
`createComparatorBuilder()`
`protected org.eclipse.emf.compare.match.IComparisonFactory`
`createComparisonFactory(org.eclipse.emf.compare.match.IEqualityHelperFactory equalityHelperFactory)`
`protected org.eclipse.emf.compare.conflict.IConflictDetector`
`createConflictDetector()`
`protected org.eclipse.emf.compare.diff.IDiffEngine`
`createDiffEngine()`
`protected org.eclipse.emf.compare.match.IEqualityHelperFactory`
`createEqualityHelperFactory()`
`protected org.eclipse.emf.compare.equi.IEquiEngine`
`createEquivalenceEngine()`
`protected CDOCompare.CDOIDFunction`
`createIDFunction()`
`protected org.eclipse.emf.compare.match.IMatchEngine.Factory.Registry`
`createMatchEngineFactoryRegistry(org.eclipse.emf.compare.match.eobject.IEObjectMatcher matcher, org.eclipse.emf.compare.match.IComparisonFactory comparisonFactory)`
`protected org.eclipse.emf.compare.match.eobject.IdentifierEObjectMatcher`
`createMatcher(com.google.common.base.Function<EObject,String> idFunction)`
`protected org.eclipse.emf.compare.postprocessor.IPostProcessor.Descriptor.Registry<?>`
`createPostProcessorRegistry()`
`protected org.eclipse.emf.compare.req.IReqEngine`
`createRequirementEngine()`
`static org.eclipse.emf.compare.scope.IComparisonScope`
`getScope(org.eclipse.emf.compare.Comparison comparison)`
Deprecated.
As 4.7 use `CDOCompareUtil.getScope(Comparison)`.
`static void`
`setCompareSupplier(Supplier<CDOCompare> supplier)`
`boolean`
`useRCPRegistries()`

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

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

## Constructor Details

### CDOCompare

public CDOCompare()

## Method Details

### useRCPRegistries

public boolean useRCPRegistries()

Since:
  4.6

### compare

public org.eclipse.emf.compare.Comparison compare(org.eclipse.emf.compare.scope.IComparisonScope scope)

### createIDFunction

protected CDOCompare.CDOIDFunction createIDFunction()

### createMatcher

protected org.eclipse.emf.compare.match.eobject.IdentifierEObjectMatcher createMatcher(com.google.common.base.Function<EObject,String> idFunction)

### createEqualityHelperFactory

protected org.eclipse.emf.compare.match.IEqualityHelperFactory createEqualityHelperFactory()

### createComparisonFactory

protected org.eclipse.emf.compare.match.IComparisonFactory createComparisonFactory(org.eclipse.emf.compare.match.IEqualityHelperFactory equalityHelperFactory)

### createComparatorBuilder

protected org.eclipse.emf.compare.EMFCompare.Builder createComparatorBuilder()

Since:
  4.5

### createComparator

protected org.eclipse.emf.compare.EMFCompare createComparator(org.eclipse.emf.compare.match.eobject.IEObjectMatcher matcher, org.eclipse.emf.compare.match.IComparisonFactory comparisonFactory)

### createMatchEngineFactoryRegistry

protected org.eclipse.emf.compare.match.IMatchEngine.Factory.Registry createMatchEngineFactoryRegistry(org.eclipse.emf.compare.match.eobject.IEObjectMatcher matcher, org.eclipse.emf.compare.match.IComparisonFactory comparisonFactory)

### createDiffEngine

protected org.eclipse.emf.compare.diff.IDiffEngine createDiffEngine()

### createRequirementEngine

protected org.eclipse.emf.compare.req.IReqEngine createRequirementEngine()

### createEquivalenceEngine

protected org.eclipse.emf.compare.equi.IEquiEngine createEquivalenceEngine()

### createPostProcessorRegistry

protected org.eclipse.emf.compare.postprocessor.IPostProcessor.Descriptor.Registry<?> createPostProcessorRegistry()

### createConflictDetector

protected org.eclipse.emf.compare.conflict.IConflictDetector createConflictDetector()

### create

public static CDOCompare create()

Since:
  4.7

### setCompareSupplier

public static void setCompareSupplier(Supplier<CDOCompare> supplier)

Since:
  4.7

### getScope

@Deprecated public static org.eclipse.emf.compare.scope.IComparisonScope getScope(org.eclipse.emf.compare.Comparison comparison)
Deprecated.
As 4.7 use `CDOCompareUtil.getScope(Comparison)`.