Interface InstanceExecutionMonitor


  • public interface InstanceExecutionMonitor
    This interface provides the means for monitoring running and completed process instances. It has methods for retrieving specific data element information from templates which can then be used to get the (current or last valid) values of these data elements for specific instances. This can be running and/or completed.
    • Method Detail

      • getTemplTreeDataElemsForProcType

        Pair<Collection<UUID>,​Collection<de.aristaflow.adept2.model.monitor.TemplTreeDataElement>> getTemplTreeDataElemsForProcType​(SessionToken session,
                                                                                                                                          String procType,
                                                                                                                                          UUID... virtualSysDeIdentifier)
        Determines the template trees (subprocess structure and different templates versions) of the designated process type and gets the all data elements of the corresponding templates. This includes the names and templates of data elements, their position relative to a template tree (that is, the subprocess structure) as well as the data type (which may differ in different templates/template versions).
        Additional (virtual) data elements may be requested for instance data, e. g. data elements for the name of each subprocess instance.
        Parameters:
        session - The session token with which to retrieve the data elements of the the template tree(s) of the designated process type.
        procType - The process type for which to get the data elements of all templates (including child templates).
        virtualSysDeIdentifier - Optional identifiers for system data for which additional data elements will be created and returned. For instance SystemDataConstants.IDENTIFIER_ID_INSTANCE_NAME will add a data element for the name of the corresponding instance for each template.
        Returns:
        The IDs of the root templates of the designated process type as well as all data elements (including requested virtual data elements for system data) of these templates and child templates.
        See Also:
        SystemDataConstants
      • getTemplTreeDataElemsForTemplate

        Collection<de.aristaflow.adept2.model.monitor.TemplTreeDataElement> getTemplTreeDataElemsForTemplate​(SessionToken session,
                                                                                                             UUID templId,
                                                                                                             UUID... virtualSysDeIdentifier)
        Determines the template tree (subprocess structure) of the designated template and gets the all data elements of the corresponding templates. This includes the names and templates of data elements, their position relative to a template tree (that is, the subprocess structure) as well as the data type (which may differ in different templates/template versions).
        Additional (virtual) data elements may be requested for instance data, e. g. data elements for the name of each subprocess instance.
        Parameters:
        session - The session token with which to retrieve the data elements of the the template tree of the designated template.
        templId - The ID of the template for which to get the data elements of all templates (including child templates).
        virtualSysDeIdentifier - Optional identifiers for system data for which additional data elements will be created and returned. For instance SystemDataConstants.IDENTIFIER_ID_INSTANCE_NAME will add a data element for the name of the corresponding instance for each template.
        Returns:
        All data elements (including requested virtual data elements for system data) of the designated template and its child templates.
        See Also:
        SystemDataConstants
      • getCurrentDataValues

        Map<InstanceReference,​Collection<de.aristaflow.adept2.model.monitor.InstanceDataValues>> getCurrentDataValues​(SessionToken session,
                                                                                                                            Collection<UUID> rootTemplIds,
                                                                                                                            List<de.aristaflow.adept2.model.monitor.TemplTreeDataElement> dataElements,
                                                                                                                            Filter instFilter,
                                                                                                                            Filter instStatusFilter,
                                                                                                                            Map<Integer,​Long> valueSizeLimits)
        Gets the current values of the instances of the designated template IDs restricted to the designated data elements and the instances matching the designated instance and instance status filter. The data elements have to be part of the template trees of the designated (root) template IDs.
        The returned map contains the (top-level) instances each identifying an instance tree mapped to the corresponding values (including system data). The collection contains one element for each execution path through the corresponding instance tree. The elements are ordered according to the list of varpar instances.

        The optional valueSizeLimits provides upper sizes for the corresponding data values of type ProcessConstants.AdeptDataType.STRING and ProcessConstants.AdeptDataType.USERDEFINED. If the corresponding value exceeds the size, it will be replaced by the corresponding PlaceholderValue in InstanceDataValues and should be retrieved via ProcessUnawareAccess.

        Parameters:
        session - The session with which to get and filter the instances an with which to get the corresponding values.
        rootTemplIds - The (IDs of the) templates for which to retrieve values of the instances (including subprocesses).
        dataElements - The data elements for which to retrieve the values. This may contain virtual system data elements for system data.
        instFilter - The filter that the considered instances need to match. It suffices that one instance of the (subprocess) tree matches so that the complete tree will be considered. If this is null, all instances of the designated templates (including subprocesses) will be considered.
        instStatusFilter - The filter that the considered instances need to match. It suffices that one instance of the (subprocess) tree matches so that the complete tree will be considered. If this is null, all instances of the designated templates (including subprocesses) will be considered.
        valueSizeLimits - Limits for the values of the corresponding data elements regarding the size of STRING and USERDEFINED values. Values exceeding the size will not be in the returned InstanceDataValues. The map keys refer to the position of the corresponding data element in the designated dataElements, the map values specify the corresponding upper limit. If this map is null no size limits will apply. Obviously, this map must neither contain null keys nor null values.
        Returns:
        The values the designated data elements have in the instances of the designated template IDs (including subprocesses). Only instance trees having at least one instance matching the designated instance filter and the designated instance status filter will be considered.
        The caller is responsible for closing.
        See Also:
        ProcessUnawareAccess.retrieveLatestStringValue(SessionToken, UUID, int), ProcessUnawareAccess.retrieveLatestUDTValue(SessionToken, UUID, int), ProcessUnawareAccess.retrieveLatestUDTValueIncrementally(SessionToken, UUID, int)