org.eclipse.emf.compare.match.engine
Interface IMatchEngine

All Known Implementing Classes:
GenericMatchEngine

public interface IMatchEngine

A Match Engine is responsible for returning a match model from a set of models. The resulting match model is then used to create a diff between the two models.


Method Summary
 MatchModel contentMatch(org.eclipse.emf.ecore.EObject leftObject, org.eclipse.emf.ecore.EObject rightObject, org.eclipse.emf.ecore.EObject ancestor, java.util.Map<java.lang.String,java.lang.Object> optionMap)
          This method will compare three EObjects and their direct content, ignoring the given objects' siblings and parents for the match.
 MatchModel contentMatch(org.eclipse.emf.ecore.EObject leftObject, org.eclipse.emf.ecore.EObject rightRoot, java.util.Map<java.lang.String,java.lang.Object> optionMap)
          This method will compare two EObjects and their direct content, ignoring the given objects' siblings and parents for the match.
 MatchModel modelMatch(org.eclipse.emf.ecore.EObject leftRoot, org.eclipse.emf.ecore.EObject rightRoot, org.eclipse.emf.ecore.EObject ancestor, java.util.Map<java.lang.String,java.lang.Object> optionMap)
          This method returns a MatchModel for three models.
 MatchModel modelMatch(org.eclipse.emf.ecore.EObject leftRoot, org.eclipse.emf.ecore.EObject rightRoot, java.util.Map<java.lang.String,java.lang.Object> optionMap)
          This method returns a MatchModel for two models.
 void reset()
          This will be called with each access from the service to the singleton instance of this engine.
 MatchModel resourceMatch(org.eclipse.emf.ecore.resource.Resource leftResource, org.eclipse.emf.ecore.resource.Resource rightResource, java.util.Map<java.lang.String,java.lang.Object> optionMap)
          This method returns a MatchModel for two resources.
 MatchModel resourceMatch(org.eclipse.emf.ecore.resource.Resource leftResource, org.eclipse.emf.ecore.resource.Resource rightResource, org.eclipse.emf.ecore.resource.Resource ancestorResource, java.util.Map<java.lang.String,java.lang.Object> optionMap)
          This method returns a MatchModel for three resources.
 

Method Detail

contentMatch

MatchModel contentMatch(org.eclipse.emf.ecore.EObject leftObject,
                        org.eclipse.emf.ecore.EObject rightObject,
                        org.eclipse.emf.ecore.EObject ancestor,
                        java.util.Map<java.lang.String,java.lang.Object> optionMap)
                        throws java.lang.InterruptedException
This method will compare three EObjects and their direct content, ignoring the given objects' siblings and parents for the match.

Parameters:
leftObject - Left of the three objects to get compared.
rightObject - Right of the three objects to compare.
ancestor - Common ancestor of the two others.
optionMap - Options to tweak the matching procedure. null or Collections.EMPTY_MAP will result in the default options to be used.
Returns:
MatchModel for these three objects' comparison.
Throws:
java.lang.InterruptedException - Thrown if the options map specifies a progress monitor, and the comparison gets interrupted somehow.
Since:
1.0
See Also:
MatchOptions

contentMatch

MatchModel contentMatch(org.eclipse.emf.ecore.EObject leftObject,
                        org.eclipse.emf.ecore.EObject rightRoot,
                        java.util.Map<java.lang.String,java.lang.Object> optionMap)
                        throws java.lang.InterruptedException
This method will compare two EObjects and their direct content, ignoring the given objects' siblings and parents for the match.

Parameters:
leftObject - Left of the two objects to get compared.
rightRoot - Right of the two objects to compare.
optionMap - Options to tweak the matching procedure. null or Collections.EMPTY_MAP will result in the default options to be used.
Returns:
MatchModel for these two objects' comparison.
Throws:
java.lang.InterruptedException - Thrown if the options map specifies a progress monitor, and the comparison gets interrupted somehow.
Since:
1.0
See Also:
MatchOptions

modelMatch

MatchModel modelMatch(org.eclipse.emf.ecore.EObject leftRoot,
                      org.eclipse.emf.ecore.EObject rightRoot,
                      org.eclipse.emf.ecore.EObject ancestor,
                      java.util.Map<java.lang.String,java.lang.Object> optionMap)
                      throws java.lang.InterruptedException
This method returns a MatchModel for three models.

Parameters:
leftRoot - Left model for the comparison.
rightRoot - Right model for the comparison.
ancestor - Common ancestor of the right and left models.
optionMap - Options to tweak the matching procedure. null or Collections.EMPTY_MAP will result in the default options to be used.
Returns:
The corresponding MatchModel.
Throws:
java.lang.InterruptedException - Thrown if the options map specifies a progress monitor, and the comparison gets interrupted somehow.
Since:
1.0
See Also:
MatchOptions

modelMatch

MatchModel modelMatch(org.eclipse.emf.ecore.EObject leftRoot,
                      org.eclipse.emf.ecore.EObject rightRoot,
                      java.util.Map<java.lang.String,java.lang.Object> optionMap)
                      throws java.lang.InterruptedException
This method returns a MatchModel for two models.

Parameters:
leftRoot - Left model for the comparison.
rightRoot - Right model for the comparison.
optionMap - Options to tweak the matching procedure. null or Collections.EMPTY_MAP will result in the default options to be used.
Returns:
The corresponding MatchModel.
Throws:
java.lang.InterruptedException - Thrown if the options map specifies a progress monitor, and the comparison gets interrupted somehow.
Since:
1.0
See Also:
MatchOptions

reset

void reset()
This will be called with each access from the service to the singleton instance of this engine. Clients should dispose of all caches and recorded information within this method's implementation.


resourceMatch

MatchModel resourceMatch(org.eclipse.emf.ecore.resource.Resource leftResource,
                         org.eclipse.emf.ecore.resource.Resource rightResource,
                         java.util.Map<java.lang.String,java.lang.Object> optionMap)
                         throws java.lang.InterruptedException
This method returns a MatchModel for two resources.

Parameters:
leftResource - Left compared resource.
rightResource - Right compared resource.
optionMap - Options to tweak the matching procedure. null or Collections.EMPTY_MAP will result in the default options to be used.
Returns:
The corresponding MatchModel.
Throws:
java.lang.InterruptedException - Thrown if the options map specifies a progress monitor, and the comparison gets interrupted somehow.
Since:
1.0
See Also:
MatchOptions

resourceMatch

MatchModel resourceMatch(org.eclipse.emf.ecore.resource.Resource leftResource,
                         org.eclipse.emf.ecore.resource.Resource rightResource,
                         org.eclipse.emf.ecore.resource.Resource ancestorResource,
                         java.util.Map<java.lang.String,java.lang.Object> optionMap)
                         throws java.lang.InterruptedException
This method returns a MatchModel for three resources.

Parameters:
leftResource - Left compared resource.
rightResource - Right compared resource.
ancestorResource - Common ancestor of the two compared resources.
optionMap - Options to tweak the matching procedure. null or Collections.EMPTY_MAP will result in the default options to be used.
Returns:
The corresponding MatchModel.
Throws:
java.lang.InterruptedException - Thrown if the options map specifies a progress monitor, and the comparison gets interrupted somehow.
Since:
1.0
See Also:
MatchOptions

Copyright 2006 IBM Corporation and others.
All Rights Reserved.