Interface ProcessInstance

  • All Superinterfaces:
    EventListener
    All Known Subinterfaces:
    WorkflowProcessInstance

    public interface ProcessInstance
    extends EventListener
    A process instance represents one specific instance of a process that is currently executing. Whenever a process is started, a process instance is created that represents that specific instance that was started. It contains all runtime information related to that instance. Multiple process instances of the same process can be executed simultaneously. For example, consider a process definition that describes how to process a purchase order. Whenever a new purchase order comes in, a new process instance will be created for that purchase order. Multiple process instances (one for each purchase order) can coexist. A process instance is uniquely identified by an id. This class can be extended to represent one specific type of process, e.g. WorkflowProcessInstance when using a WorkflowProcess where the process logic is expressed as a flow chart.
    See Also:
    WorkflowProcessInstance
    • Method Detail

      • getProcessId

        String getProcessId()
        The id of the process definition that is related to this process instance.
        Returns:
        the id of the process definition that is related to this process instance
      • getId

        String getId()
        The unique id of this process instance.
        Returns:
        the unique id of this process instance
      • getProcessName

        String getProcessName()
        The name of the process definition that is related to this process instance.
        Returns:
        the name of the process definition that is related to this process instance
      • getState

        int getState()
        The state of the process instance.
        Returns:
        the state of the process instance
      • getParentProcessInstanceId

        String getParentProcessInstanceId()
        Returns parent process instance id if this process instance has a parent
        Returns:
        the unique id of parent process instance, null if this process instance doesn't have a parent
      • getRootProcessInstanceId

        String getRootProcessInstanceId()
        Returns root process instance id if this process instance has a root process instance
        Returns:
        the unique id of root process instance, null if this process instance doesn't have a root or is a root itself
      • getRootProcessId

        String getRootProcessId()
        The id of the root process definition that is related to this process instance.
        Returns:
        the id of the root process definition that is related to this process instance
      • getVariables

        Map<String,​Object> getVariables()
        Returns current snapshot of process instance variables
        Returns:
        non empty map of process instance variables
      • getReferenceId

        String getReferenceId()
        Returns optional reference id this process instance was triggered by
        Returns:
        reference id or null if not set
      • getCorrelationKey

        String getCorrelationKey()
        Returns optional correlation key (aka business key)
        Returns:
        correlation key if exists otherwise null