Interface RuntimeDataService

    • Method Detail

      • getProcessInstances

        Collection<ProcessInstanceDesc> getProcessInstances​(org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process instance descriptions
        Parameters:
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessInstanceDesc instances representing the available process instances.
      • getProcessInstances

        Collection<ProcessInstanceDesc> getProcessInstances​(List<Integer> states,
                                                            String initiator,
                                                            org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process instance descriptions found with given statuses and initiated by initiator.
        Parameters:
        states - A list of possible state (int) values that the ProcessInstance can have.
        initiator - The initiator of the ProcessInstance.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessInstanceDesc instances representing the process instances that match the given criteria (states and initiator).
      • getProcessInstancesByProcessId

        Collection<ProcessInstanceDesc> getProcessInstancesByProcessId​(List<Integer> states,
                                                                       String processId,
                                                                       String initiator,
                                                                       org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process instance descriptions found for given process id and statuses and initiated by initiator
        Parameters:
        states - A list of possible state (int) values that the ProcessInstance can have.
        processId - The id of the Process (definition) used when starting the process instance.
        initiator - The initiator of the ProcessInstance.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessInstanceDesc instances representing the process instances that match the given criteria (states, processId, and initiator).
      • getProcessInstancesByProcessName

        Collection<ProcessInstanceDesc> getProcessInstancesByProcessName​(List<Integer> states,
                                                                         String processName,
                                                                         String initiator,
                                                                         org.kie.api.runtime.query.QueryContext queryContext)
        Parameters:
        states - A list of possible state (int) values that the ProcessInstance can have.
        processName - The name (not id!) of the Process (definition) used when starting the process instance.
        initiator - The initiator of the ProcessInstance.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessInstanceDesc instances representing the process instances that match the given criteria (states, processName and initiator).
      • getProcessInstancesByDeploymentId

        Collection<ProcessInstanceDesc> getProcessInstancesByDeploymentId​(String deploymentId,
                                                                          List<Integer> states,
                                                                          org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process instance descriptions found for given deployment id and statuses.
        Parameters:
        deploymentId - The deployment id of the runtime.
        states - A list of possible state (int) values that the ProcessInstance can have.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessInstanceDesc instances representing the process instances that match the given criteria (deploymentId and states).
      • getProcessInstanceById

        ProcessInstanceDesc getProcessInstanceById​(long processInstanceId)
        Returns process instance descriptions found for given processInstanceId if found otherwise null. At the same time it will fetch all active tasks (in status: Ready, Reserved, InProgress) to provide information what user task is keeping instance and who owns them (if were already claimed).
        Parameters:
        processInstanceId - The id of the process instance to be fetched
        Returns:
        Process instance information, in the form of a ProcessInstanceDesc instance.
      • getProcessInstanceByCorrelationKey

        ProcessInstanceDesc getProcessInstanceByCorrelationKey​(org.kie.internal.process.CorrelationKey correlationKey)
        Returns active process instance description found for given correlation key if found otherwise null. At the same time it will fetch all active tasks (in status: Ready, Reserved, InProgress) to provide information what user task is keeping instance and who owns them (if were already claimed).
        Parameters:
        correlationKey - correlation key assigned to process instance
        Returns:
        Process instance information, in the form of a ProcessInstanceDesc instance.
      • getProcessInstancesByCorrelationKey

        Collection<ProcessInstanceDesc> getProcessInstancesByCorrelationKey​(org.kie.internal.process.CorrelationKey correlationKey,
                                                                            org.kie.api.runtime.query.QueryContext queryContext)
        Returns process instances descriptions (regardless of their states) found for given correlation key if found otherwise empty list. This query uses 'like' to match correlation key so it allows to pass only partial keys - though matching is done based on 'starts with'
        Parameters:
        correlationKey - correlation key assigned to process instance
        Returns:
        A list of ProcessInstanceDesc instances representing the process instances that match the given correlation key
      • getProcessInstancesByCorrelationKeyAndStatus

        Collection<ProcessInstanceDesc> getProcessInstancesByCorrelationKeyAndStatus​(org.kie.internal.process.CorrelationKey correlationKey,
                                                                                     List<Integer> states,
                                                                                     org.kie.api.runtime.query.QueryContext queryContext)
        Returns process instances descriptions filtered by their states found for given correlation key if found otherwise empty list. This query uses 'like' to match correlation key so it allows to pass only partial keys - though matching is done based on 'starts with'
        Parameters:
        correlationKey - correlation key assigned to process instance
        states - A list of possible state (int) values that the ProcessInstance can have.
        Returns:
        A list of ProcessInstanceDesc instances representing the process instances that match the given correlation key
      • getProcessInstancesByProcessDefinition

        Collection<ProcessInstanceDesc> getProcessInstancesByProcessDefinition​(String processDefId,
                                                                               org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process instance descriptions found for given process definition id
        Parameters:
        processDefId - The id of the process (definition)
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessInstanceDesc instances representing the process instances that match the given criteria (deploymentId and states).
      • getProcessInstancesByProcessDefinition

        Collection<ProcessInstanceDesc> getProcessInstancesByProcessDefinition​(String processDefId,
                                                                               List<Integer> states,
                                                                               org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process instance descriptions found for given process definition id
        Parameters:
        processDefId - The id of the process (definition)
        states - A list of possible state (int) values that the ProcessInstance can have.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessInstanceDesc instances representing the process instances that match the given criteria (deploymentId and states).
      • getProcessInstancesByVariable

        Collection<ProcessInstanceDesc> getProcessInstancesByVariable​(String variableName,
                                                                      List<Integer> states,
                                                                      org.kie.api.runtime.query.QueryContext queryContext)
        Returns process instance descriptions found for process instance that have defined given variable
        Parameters:
        variableName - name of the variable that process instance should have
        states - A list of possible state (int) values that the ProcessInstance can have. If null will return only active instances
        queryContext - control parameters for the result e.g. sorting, paging
      • getProcessInstancesByVariableAndValue

        Collection<ProcessInstanceDesc> getProcessInstancesByVariableAndValue​(String variableName,
                                                                              String variableValue,
                                                                              List<Integer> states,
                                                                              org.kie.api.runtime.query.QueryContext queryContext)
        Returns process instance descriptions found for process instance that have defined given variable and its value matches given variableValue
        Parameters:
        variableName - name of the variable that process instance should have
        variableValue - value of the variable to match
        states - A list of possible state (int) values that the ProcessInstance can have. If null will return only active instances
        queryContext - control parameters for the result e.g. sorting, paging
      • getProcessInstancesByParent

        Collection<ProcessInstanceDesc> getProcessInstancesByParent​(Long parentProcessInstanceId,
                                                                    List<Integer> states,
                                                                    org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process instance descriptions
        Parameters:
        parentProcessInstanceId - id of the parent process instance
        states - list of possible state (int) values that the ProcessInstance can have. If null will return only active instances
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessInstanceDesc instances representing the available process instances.
      • getProcessInstancesWithSubprocessByProcessInstanceId

        Collection<ProcessInstanceDesc> getProcessInstancesWithSubprocessByProcessInstanceId​(Long processInstanceId,
                                                                                             List<Integer> states,
                                                                                             org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process instance descriptions
        Parameters:
        processInstanceId - id of the parent process instance
        Returns:
        A list of ProcessInstanceDesc instances representing the full hierarchy of this process
      • getNodeInstanceForWorkItem

        NodeInstanceDesc getNodeInstanceForWorkItem​(Long workItemId)
        Returns active node instance descriptor for given work item id, if exists.
        Parameters:
        workItemId - identifier of the work item
        Returns:
        returns node instance desc for work item if exists and is still active, otherwise null
      • getProcessInstanceHistoryActive

        Collection<NodeInstanceDesc> getProcessInstanceHistoryActive​(long processInstanceId,
                                                                     org.kie.api.runtime.query.QueryContext queryContext)
        Returns trace of all active nodes for given process instance id
        Parameters:
        processInstanceId - unique identifier of process instance
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
      • getProcessInstanceHistoryCompleted

        Collection<NodeInstanceDesc> getProcessInstanceHistoryCompleted​(long processInstanceId,
                                                                        org.kie.api.runtime.query.QueryContext queryContext)
        Returns trace of all executed (completed) for given process instance id
        Parameters:
        processInstanceId - unique identifier of process instance
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
      • getProcessInstanceFullHistory

        Collection<NodeInstanceDesc> getProcessInstanceFullHistory​(long processInstanceId,
                                                                   org.kie.api.runtime.query.QueryContext queryContext)
        Returns complete trace of all executed (completed) and active nodes for given process instance id
        Parameters:
        processInstanceId - The id of the process used to start the process instance.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        The NodeInstance information, in the form of a list of NodeInstanceDesc instances, that comes from a process instance that matches the given criteria (deploymentId, processId).
      • getProcessInstanceFullHistoryByType

        Collection<NodeInstanceDesc> getProcessInstanceFullHistoryByType​(long processInstanceId,
                                                                         RuntimeDataService.EntryType type,
                                                                         org.kie.api.runtime.query.QueryContext queryContext)
        Returns complete trace of all events of given type (START, END, ABORTED, SKIPPED, OBSOLETE or ERROR) for given process instance.
        Parameters:
        processInstanceId - The id of the process used to start the process instance.
        queryContext - control parameters for the result e.g. sorting, paging
        type - type of events that shall be returned (START, END, ABORTED, SKIPPED, OBSOLETE or ERROR) - to return all use getProcessInstanceFullHistory(long, QueryContext)
        Returns:
        collection of node instance descriptions
      • getNodeInstancesByNodeType

        Collection<NodeInstanceDesc> getNodeInstancesByNodeType​(long processInstanceId,
                                                                List<String> nodeTypes,
                                                                org.kie.api.runtime.query.QueryContext queryContext)
        Returns trace of all nodes for a given node types and process instance id
        Parameters:
        processInstanceId - unique identifier of process instance
        nodeTypes - list of node types to filter nodes of process instance
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        collection of node instance descriptions
      • getNodeInstancesByCorrelationKeyNodeType

        Collection<NodeInstanceDesc> getNodeInstancesByCorrelationKeyNodeType​(org.kie.internal.process.CorrelationKey correlationKey,
                                                                              List<Integer> states,
                                                                              List<String> nodeTypes,
                                                                              org.kie.api.runtime.query.QueryContext queryContext)
        Returns trace of all nodes for a given node types and correlation key
        Parameters:
        correlationKey - correlation key
        states - list of states
        nodeTypes - list of node types to filter nodes of process instance
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        collection of node instance descriptions
      • getVariablesCurrentState

        Collection<VariableDesc> getVariablesCurrentState​(long processInstanceId)
        Returns collections of all process variables current value for given process instance
        Parameters:
        processInstanceId - The process instance id.
        Returns:
        Information about variables in the specified process instance, represented by a list of VariableDesc instances.
      • getVariableHistory

        Collection<VariableDesc> getVariableHistory​(long processInstanceId,
                                                    String variableId,
                                                    org.kie.api.runtime.query.QueryContext queryContext)
        Returns collection of changes to given variable within scope of process instance
        Parameters:
        processInstanceId - The process instance id.
        variableId - The id of the variable
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        Information about the variable with the given id in the specified process instance, represented by a list of VariableDesc instances.
      • getProcessesByDeploymentId

        Collection<ProcessDefinition> getProcessesByDeploymentId​(String deploymentId,
                                                                 org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process definitions for given deployment id
        Parameters:
        deploymentId - The deployment id of the runtime.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessDefinition instances representing processes that match the given criteria (deploymentId)
      • getProcessesByFilter

        Collection<ProcessDefinition> getProcessesByFilter​(String filter,
                                                           org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process definitions that match the given filter
        Parameters:
        filter - A regular expression.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of ProcessDefinition instances whose name or id matches the given regular expression.
      • getProcesses

        Collection<ProcessDefinition> getProcesses​(org.kie.api.runtime.query.QueryContext queryContext)
        Returns all process definitions available
        Parameters:
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of all available processes, in the form a of a list of ProcessDefinition instances.
      • getProcessIds

        Collection<String> getProcessIds​(String deploymentId,
                                         org.kie.api.runtime.query.QueryContext queryContext)
        Returns list of process definition identifiers for given deployment id
        Parameters:
        deploymentId - The deployment id of the runtime.
        queryContext - control parameters for the result e.g. sorting, paging
        Returns:
        A list of all available process id's for a particular deployment/runtime.
      • getProcessById

        @Deprecated
        ProcessDefinition getProcessById​(String processId)
        Deprecated.
        will be removed in version 7
        Deprecated since 6.3 as it does return only first ProcessDefinition even if there are more that reside in different deployments. Use getProcessesById(String processId) instead
        Returns process definition for given process id
        Parameters:
        processId - The id of the process
        Returns:
        A ProcessDefinition instance, representing the Process with the specified (process) id.
        See Also:
        getProcessesById(String)
      • getProcessesById

        Collection<ProcessDefinition> getProcessesById​(String processId)
        Returns process definitions for given process id regardless of the deployment
        Parameters:
        processId - The id of the process
        Returns:
        A ProcessDefinition instance, representing the Process with the specified (process) id.
      • getProcessesByDeploymentIdProcessId

        ProcessDefinition getProcessesByDeploymentIdProcessId​(String deploymentId,
                                                              String processId)
        Returns process definition for given deployment and process identifiers
        Parameters:
        deploymentId - The id of the deployment (runtime)
        processId - The id of the process
        Returns:
        A ProcessDefinition instance, representing the Process that is present in the specified deployment with the specified (process) id.
      • getTaskByWorkItemId

        UserTaskInstanceDesc getTaskByWorkItemId​(Long workItemId)
        Return a task by its workItemId.
        Parameters:
        workItemId -
        Returns:
      • getTaskById

        UserTaskInstanceDesc getTaskById​(Long taskId)
        Return a task by its taskId.
        Parameters:
        taskId -
        Returns:
      • getTaskById

        UserTaskInstanceDesc getTaskById​(Long taskId,
                                         boolean withSLA)
        Return a task by its taskId with SLA data if the withSLA param is true.
        Parameters:
        taskId -
        withSLA -
        Returns:
      • getTasksAssignedAsBusinessAdministrator

        List<org.kie.api.task.model.TaskSummary> getTasksAssignedAsBusinessAdministrator​(String userId,
                                                                                         org.kie.internal.query.QueryFilter filter)
        Return a list of assigned tasks as a Business Administrator. Business administrators play the same role as task stakeholders but at task type level. Therefore, business administrators can perform the exact same operations as task stakeholders. Business administrators may also observe the progress of notifications.
        Parameters:
        userId -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksAssignedAsBusinessAdministratorByStatus

        List<org.kie.api.task.model.TaskSummary> getTasksAssignedAsBusinessAdministratorByStatus​(String userId,
                                                                                                 List<org.kie.api.task.model.Status> statuses,
                                                                                                 org.kie.internal.query.QueryFilter filter)
        Return a list of assigned tasks as a Business Administrator for with one of the listed statuses
        Parameters:
        userId -
        statuses -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksAssignedAsPotentialOwner

        List<org.kie.api.task.model.TaskSummary> getTasksAssignedAsPotentialOwner​(String userId,
                                                                                  org.kie.internal.query.QueryFilter filter)
        Return a list of tasks the user is eligible for.
        Parameters:
        userId -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksAssignedAsPotentialOwner

        List<org.kie.api.task.model.TaskSummary> getTasksAssignedAsPotentialOwner​(String userId,
                                                                                  List<String> groupIds,
                                                                                  org.kie.internal.query.QueryFilter filter)
        Return a list of tasks the user or groups are eligible for.
        Parameters:
        userId -
        groupIds -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksAssignedAsPotentialOwnerByStatus

        List<org.kie.api.task.model.TaskSummary> getTasksAssignedAsPotentialOwnerByStatus​(String userId,
                                                                                          List<org.kie.api.task.model.Status> status,
                                                                                          org.kie.internal.query.QueryFilter filter)
        Return a list of tasks the user is eligible for with one of the listed statuses.
        Parameters:
        userId -
        status -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksAssignedAsPotentialOwner

        List<org.kie.api.task.model.TaskSummary> getTasksAssignedAsPotentialOwner​(String userId,
                                                                                  List<String> groupIds,
                                                                                  List<org.kie.api.task.model.Status> status,
                                                                                  org.kie.internal.query.QueryFilter filter)
        Return a list of tasks the user or groups are eligible for with one of the listed statuses.
        Parameters:
        userId -
        groupIds -
        status -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksAssignedAsPotentialOwnerByExpirationDateOptional

        List<org.kie.api.task.model.TaskSummary> getTasksAssignedAsPotentialOwnerByExpirationDateOptional​(String userId,
                                                                                                          List<org.kie.api.task.model.Status> status,
                                                                                                          Date from,
                                                                                                          org.kie.internal.query.QueryFilter filter)
        Return a list of tasks the user is eligible for with one of the listed statuses and expiration date starting at from. Tasks that do not have expiration date set will also be included in the result set.
        Parameters:
        userId -
        status -
        from -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksOwnedByExpirationDateOptional

        List<org.kie.api.task.model.TaskSummary> getTasksOwnedByExpirationDateOptional​(String userId,
                                                                                       List<org.kie.api.task.model.Status> strStatuses,
                                                                                       Date from,
                                                                                       org.kie.internal.query.QueryFilter filter)
        Return a list of tasks the user has claimed with one of the listed statuses and expiration date starting at from. Tasks that do not have expiration date set will also be included in the result set.
        Parameters:
        userId -
        strStatuses -
        from -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksOwned

        List<org.kie.api.task.model.TaskSummary> getTasksOwned​(String userId,
                                                               org.kie.internal.query.QueryFilter filter)
        Return a list of tasks the user has claimed.
        Parameters:
        userId -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksOwnedByStatus

        List<org.kie.api.task.model.TaskSummary> getTasksOwnedByStatus​(String userId,
                                                                       List<org.kie.api.task.model.Status> status,
                                                                       org.kie.internal.query.QueryFilter filter)
        Return a list of tasks the user has claimed with one of the listed statuses.
        Parameters:
        userId -
        status -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getTasksByProcessInstanceId

        List<Long> getTasksByProcessInstanceId​(Long processInstanceId)
        Get a list of tasks the Process Instance is waiting on.
        Parameters:
        processInstanceId -
        Returns:
        list of task ids
      • getTasksByStatusByProcessInstanceId

        List<org.kie.api.task.model.TaskSummary> getTasksByStatusByProcessInstanceId​(Long processInstanceId,
                                                                                     List<org.kie.api.task.model.Status> status,
                                                                                     org.kie.internal.query.QueryFilter filter)
        Get a list of tasks the Process Instance is waiting on with one of the listed statuses.
        Parameters:
        processInstanceId -
        status -
        filter -
        Returns:
        list of @TaskSummary task summaries
      • getAllAuditTask

        List<org.kie.internal.task.api.AuditTask> getAllAuditTask​(String userId,
                                                                  org.kie.internal.query.QueryFilter filter)
        Get a list of tasks audit logs for the user provides applying the query filter listed statuses.
        Parameters:
        userId -
        filter -
        Returns:
        list of @AuditTask audit tasks
      • getAllAuditTaskByStatus

        List<org.kie.internal.task.api.AuditTask> getAllAuditTaskByStatus​(String userId,
                                                                          org.kie.internal.query.QueryFilter filter)
        Get a list of all active tasks audit logs for the user provides applying the query filter listed statuses.
        Parameters:
        userId -
        filter -
        Returns:
        list of @AuditTask audit tasks
      • getAllGroupAuditTask

        List<org.kie.internal.task.api.AuditTask> getAllGroupAuditTask​(String userId,
                                                                       org.kie.internal.query.QueryFilter filter)
        Get a list of group tasks (actualOwner == null) audit logs for the user provides applying the query filter listed statuses.
        Parameters:
        userId -
        filter -
        Returns:
        list of @AuditTask audit tasks
      • getAllAdminAuditTask

        List<org.kie.internal.task.api.AuditTask> getAllAdminAuditTask​(String userId,
                                                                       org.kie.internal.query.QueryFilter filter)
        Get a list of tasks admin audit (user in businessAdministrators) logs for the user provides applying the query filter listed statuses.
        Parameters:
        userId -
        filter -
        Returns:
        list of @AuditTask audit tasks
      • getTaskEvents

        List<org.kie.internal.task.api.model.TaskEvent> getTaskEvents​(long taskId,
                                                                      org.kie.internal.query.QueryFilter filter)
        Gets a list of task events for given task
        Parameters:
        taskId -
        filter -
        Returns:
        list of @TaskEvent task events
      • taskSummaryQuery

        org.kie.internal.task.query.TaskSummaryQueryBuilder taskSummaryQuery​(String userId)
        Query on TaskSummary instaances.
        Parameters:
        userId - The user associated with the tasks queried.
        Returns:
        A TaskSummaryQueryBuilder used to create the query.
      • getTasksByVariable

        List<org.kie.api.task.model.TaskSummary> getTasksByVariable​(String userId,
                                                                    String variableName,
                                                                    List<org.kie.api.task.model.Status> statuses,
                                                                    org.kie.api.runtime.query.QueryContext queryContext)
        Gets a list of TaskSummary instances for the given arguments
        Parameters:
        userId - The id of the user associated with the tasks
        variableName - The name of the task variable
        statuses - The list of Status's that the task can have
        queryContext - The query context.
        Returns:
        a List of TaskSummary instances.
      • getTasksByVariableAndValue

        List<org.kie.api.task.model.TaskSummary> getTasksByVariableAndValue​(String userId,
                                                                            String variableName,
                                                                            String variableValue,
                                                                            List<org.kie.api.task.model.Status> statuses,
                                                                            org.kie.api.runtime.query.QueryContext context)
        Gets a list of TaskSummary instances for the given arguments
        Parameters:
        userId - The id of the user associated with the tasks
        variableName - The name of the task variable
        variableValue - The value of the task variable
        statuses - The list of Status's that the task can have
        context - The query context.
        Returns:
        a List of TaskSummary instances.