Class MdSupplyReferenceProviderComparisonDelegate

    • Constructor Detail

      • MdSupplyReferenceProviderComparisonDelegate

        public MdSupplyReferenceProviderComparisonDelegate()
    • Method Detail

      • getContainmentReference

        public IDataReference getContainmentReference​(String topObjectSymlink,
                                                      org.eclipse.emf.ecore.EClass eClass,
                                                      org.eclipse.emf.ecore.EStructuralFeature targetFeature,
                                                      org.eclipse.emf.ecore.EStructuralFeature containingFeature,
                                                      ComparisonNode comparisonNode,
                                                      ComparisonContext comparisonContext)
        Description copied from interface: ISupplyDataReferenceProviderComparisonDelegate
        Delegates the call of IDataReferenceProvider#getContainmentReference(String, EClass, EStructuralFeature, Object...) to domain-specific implementation.
        Parameters:
        topObjectSymlink - Symlynk of the top object containing target containment. Cannot be null
        eClass - EClass of the target containment object. Cannot be null
        targetFeature - Target feature of the containment, if available. Can be null
        containingFeature - The feature that contains target object. Should be supplied in case if the collection element is being addressed. Can be null
        comparisonNode - The node of the comparison tree mode being the context of the reference. Cannot be null
        comparisonContext - Current comparison context. Cannot be null This context depends on the client logic and should be matched with the corresponding impementation of IDataReferenceProvider
        Returns:
        The encoded reference of one of standard types. Can be null in case if the client integration doesn't support this type of the context for direct referencing from supply settings
      • handles

        public boolean handles​(org.eclipse.emf.ecore.EClass topObjectEClass,
                               org.eclipse.emf.ecore.EClass eClass,
                               org.eclipse.emf.ecore.EStructuralFeature targetFeature,
                               org.eclipse.emf.ecore.EStructuralFeature containingFeature)
        Description copied from interface: ISupplyDataReferenceProviderComparisonDelegate
        Checks provided EClass against the set of EClasses being handled by this delegate.
        Parameters:
        topObjectEClass - The top object EClass. Can be null
        eClass - The target EClass. Can be null
        targetFeature - Target feature for the call. Can be null
        containingFeature - The feature that contains target object. Should be supplied in case if the collection element is being addressed. Can be null
        Returns:
        true in case if this delegate handles the provided EClass. false otherwise
      • isTopObjectReference

        public boolean isTopObjectReference​(String topObjectSymlink,
                                            org.eclipse.emf.ecore.EClass eClass,
                                            ComparisonNode comparisonNode)
        Description copied from interface: ISupplyDataReferenceProviderComparisonDelegate
        Delegates the call of IDataReferenceProvider#isTopObjectReference(String, EClass, Object...)
        Parameters:
        topObjectSymlink - Symlynk of the top object containing target containment. Cannot be null
        eClass - EClass of the target containment object. Cannot be null
        comparisonNode - The node of the comparison tree mode being the context of the reference. Cannot be null
        Returns:
        true if the context points to the top object. false otherwise
      • fillInSupplyIfIntegratedTargets

        protected void fillInSupplyIfIntegratedTargets​(Set<org.eclipse.emf.ecore.EStructuralFeature> supplyIfIntegratedTargets,
                                                       Set<org.eclipse.emf.ecore.EClass> supplyIfIntegratedContainers)
        Provdes information on features applicable for the "supply if integrated" rule. This features will participate in the reference resolving/integration process. All other features will be ignored by this deelgate.
        Overrides:
        fillInSupplyIfIntegratedTargets in class BaseSupplyDataReferenceProviderComparisonDelegate
        Parameters:
        supplyIfIntegratedTargets - The target set of features. The implementing side should place required features there. Cannot be null
        supplyIfIntegratedContainers - The set of feature container targets. Limits the processing of target features by features belonging to containers of specified types. Only direct holders of the feature are supported. This filter is used to limit processing of common features (like types). Cannot be null