Interface IDataReferenceProvider


  • public interface IDataReferenceProvider
    Data reference provider performs analysis of the provided context and creates corresponding data references using reference formats being supported by internal facilities of the ISupplySettingsManager.
    Provided reference should be one from supported types: Implementation of this interface should be provided by clients based on their internal data formats. Additional context is being supplied as a part of contextObjects vararg via ISupplySettingsManager#getIntegrationSettings call.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      IDataReference getContainmentReference​(String topObjectSymlink, org.eclipse.emf.ecore.EClass topObjectEClass, org.eclipse.emf.ecore.EClass targetEClass, org.eclipse.emf.ecore.EStructuralFeature targetFeature, org.eclipse.emf.ecore.EStructuralFeature containingFeature, Object... contextObjects)
      Gets containment reference based on provided context.
      boolean isTopObjectReference​(String topObjectSymlink, org.eclipse.emf.ecore.EClass topObjectEClass, org.eclipse.emf.ecore.EClass targetEClass, Object... contextObjects)
      Checks if the provided context points to the top object itself.
    • Method Detail

      • getContainmentReference

        IDataReference getContainmentReference​(String topObjectSymlink,
                                               org.eclipse.emf.ecore.EClass topObjectEClass,
                                               org.eclipse.emf.ecore.EClass targetEClass,
                                               org.eclipse.emf.ecore.EStructuralFeature targetFeature,
                                               org.eclipse.emf.ecore.EStructuralFeature containingFeature,
                                               Object... contextObjects)
        Gets containment reference based on provided context.
        Parameters:
        topObjectSymlink - Symlynk of the top object containing target containment. Cannot be null
        topObjectEClass - EClass of the top object for this containment. Cannot be null
        targetEClass - EClass of the target containment object. Cannot be null
        targetFeature - Target feature of the containment, if available. Can be null
        contextObject - The set of context objects being provided as a result of the ISupplySettingsManager#getIntegrationSettings call. This context depends on the client logic and should be matched with the corresponding impementation of IDataReferenceProvider
        Returns:
        The generated 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
      • isTopObjectReference

        boolean isTopObjectReference​(String topObjectSymlink,
                                     org.eclipse.emf.ecore.EClass topObjectEClass,
                                     org.eclipse.emf.ecore.EClass targetEClass,
                                     Object... contextObjects)
        Checks if the provided context points to the top object itself. Such references are being processed by ISupplySettingsManager standard logic and doesn't require reference processing and encoding.
        Parameters:
        topObjectSymlink - Symlynk of the top object containing target containment. Cannot be null
        topObjectEClass - EClass of the top object for this containment. Cannot be null
        targetEClass - EClass of the target containment object. Cannot be null
        contextObject - The set of context objects being provided as a result of the ISupplySettingsManager#getIntegrationSettings call. This context depends on the client logic and should be matched with the corresponding impementation of IDataReferenceProvider
        Returns:
        true if the context points to the top object. false otherwise