Class ExternalReferenceFeatureMatcher

java.lang.Object
com._1c.g5.v8.dt.compare.matching.ExternalReferenceFeatureMatcher
All Implemented Interfaces:
IEmfObjectMatcher, IObjectMatcher<org.eclipse.emf.ecore.EObject,MatchedEmfObjects>
Direct Known Subclasses:
ObjectRightsMatcher

public class ExternalReferenceFeatureMatcher extends Object implements IEmfObjectMatcher
A custom matcher based on an external reference feature.
  • Constructor Details

    • ExternalReferenceFeatureMatcher

      public ExternalReferenceFeatureMatcher(ComparisonContext comparisonContext, ComparisonNode node, org.eclipse.xtext.scoping.IScopeProvider scopeProvider, org.eclipse.emf.ecore.EReference reference)
      Constructs a new mapper.
      Parameters:
      comparisonContext - the comparison context, cannot be null
      node - the comparison node, cannot be null
      scopeProvider - the scope provider, cannot be null
      reference - the external reference to match object for, cannot be null
  • Method Details

    • match

      public Collection<MatchedEmfObjects> match(List<org.eclipse.emf.ecore.EObject> mainObjects, List<org.eclipse.emf.ecore.EObject> otherObjects, List<org.eclipse.emf.ecore.EObject> ancestorObjects)
      Description copied from interface: IObjectMatcher
      Returns a collection of matched objects for the specified collections of objects.
      Specified by:
      match in interface IObjectMatcher<org.eclipse.emf.ecore.EObject,MatchedEmfObjects>
      Parameters:
      mainObjects - the collection of objects to be matched from the main side
      otherObjects - the collection of objects to be matched from the other side
      ancestorObjects - the collection of objects to be matched from the common ancestor side
      Returns:
      a collection of matched compared objects with ids
    • getSymlink

      protected String getSymlink(IComparisonDataSource dataSource, org.eclipse.emf.ecore.EObject context, org.eclipse.emf.ecore.EReference reference, org.eclipse.xtext.scoping.IScopeProvider scopeProvider)
      Returns a symbolic link for the external reference from a context object.
      Parameters:
      dataSource - the comparison data source, cannot be null
      context - the referencing object, cannot be null
      reference - the external reference to match object for, cannot be null
      scopeProvider - the scope provider, cannot be null
      Returns:
      the symbolic link, never null