Interface ISupplySettingsManager

  • All Superinterfaces:
    IManagedService

    public interface ISupplySettingsManager
    extends IManagedService
    Supply settings manager is responsible for:
    • Management of library supply settings
    • Management of library integration settings
    • Providing the supply setting model for navigation, etc
    • Providing the integration setting model for navigation, etc
    • Computation of effective supply+integration model and answering the inegration requests from commparion/merging tools
    • Method Detail

      • getModuleIntegrationSettings

        ModuleIntegrationSettings getModuleIntegrationSettings​(String moduleSymlink,
                                                               String sectionName,
                                                               ModuleSectionType sectionType,
                                                               ComparisonAssociationType moduleAssociationType,
                                                               ComparisonAssociationType sectionAssociationType,
                                                               ModuleChangeType changeType,
                                                               ModuleComparisonResult comparisonResult,
                                                               IntegrationContext integrationContext)
        Gets the module integration settings for the given context. The context is defined based on the comparison of objects from MAIN and OTHER side configurations.
        Parameters:
        moduleSymlink - The symlink of the module. Cannot be null or empty
        sectionName - The name of the module's section. Optional in case if the client get the integration settings for the module itself. Can be null
        sectionType - The type of the module's section. Optional in case if the client get the integration settings for the module itself. Can be null
        moduleAssociationType - The type of the association between MAIN and OTHER participating module. Cannot be null.
        methodAssociationType - The type of the association between MAIN and OTHER participating sections. Can be null in case if no method is specified. In case if the provided association type doesn't match the real picture, the result of the method call is undetermined
        changeType - The type of the change being detected during the comparison. May not be null
        comparisonResult - The combined module comparison result. May not be null
        integrationContext - The current integration session context. Cannot be null
        Returns:
        The ModuleIntegrationSettings computed according to integration session settings.
      • getObjectIntegrationSettings

        ObjectIntegrationSettings getObjectIntegrationSettings​(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,
                                                               ComparisonAssociationType associationType,
                                                               IntegrationContext integrationContext,
                                                               Object... contextObjects)
        Gets the object integration settings for the given context. The context is defined based on the comparison of objects from MAIN and OTHER side configurations.
        Parameters:
        topObjectSymlink - The symlink to the top object we need integrations settings for. It' should be supplied both in case if the target of the request is the top object itself and in case of containment/property settings request. Cannot be null or empty
        topObjectEClass - The EClass of the top compared object. Cannot be null
        targetEClass - The EClass of the target object. Cannot be null
        targetFeature - The target feature of the target object. Can be null in case if we are requesting integration settings for the object itself
        containingFeature - The feature that contains provided target object in case if the provided object is an element of the collection. Can be null in case if the target object isn't a collection element
        associationType - The type of the association between MAIN and OTHER participating objects. Cannot be null. In case if the provided association type doesn't match the real picture, the result of the method call is undeterminate
        integrationContext - The current integration session context. Cannot be null
        contextObjects - The set of additional context objects being supplied by the client in order to perform data addressing. The given set of objects is being used as a context for IDataReferenceProvider client implementations, allowing support of specific reference schemes inside the integration settings (e.g. specific addressing of elements, like form elements, etc).
        Returns:
        The ObjectIntegrationSettings computed according to integration session settings.
      • getRegisteredIntegrationSettings

        List<String> getRegisteredIntegrationSettings​(String projectName)
        Gets the list of available library name for integration settings being registered in the project.
        Parameters:
        projectName - The name of the project to get the names for.
        Returns:
        The list of known library names for the given project. Can't be null.
      • hasSettings

        boolean hasSettings​(String fqn,
                            IntegrationContext integrationContext)
        Checks if settings are present for the given FQN. Only settings for objects that could be addressed via FQN are supported for this call.
        Parameters:
        fqn - Object FQN, cannot be null.
        Returns:
        true in case if there are some settings available for the given object