## Uses of Interface
org.kie.api.runtime.process.ProcessInstance

- Packages that use ProcessInstance
  Package | Description
  --- | ---
  org.kie.api.event.process | Events emitted while process instances are executing.
  org.kie.api.runtime.process | The process runtime classes.

- - ### Uses of ProcessInstance in org.kie.api.event.process

    Methods in org.kie.api.event.process that return ProcessInstance
    Modifier and Type | Method | Description
    --- | --- | ---
    `ProcessInstance` | ProcessEvent.`getProcessInstance()` | The ProcessInstance this event relates to.

  - ### Uses of ProcessInstance in org.kie.api.runtime.process

    Subinterfaces of ProcessInstance in org.kie.api.runtime.process
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `WorkflowProcessInstance` | A workflow process instance represents one specific instance of a workflow process that is currently executing.

    Methods in org.kie.api.runtime.process that return ProcessInstance
    Modifier and Type | Method | Description
    --- | --- | ---
    `ProcessInstance` | ProcessRuntime.`createProcessInstance​(java.lang.String processId, java.util.Map<java.lang.String,​java.lang.Object> parameters)` | Creates a new process instance (but does not yet start it).
    `ProcessInstance` | ProcessContext.`getProcessInstance()` | Returns the process instance that is currently being executed in this context.
    `ProcessInstance` | ProcessRuntime.`getProcessInstance​(java.lang.String processInstanceId)` | Returns the process instance with the given id.
    `ProcessInstance` | ProcessRuntime.`getProcessInstance​(java.lang.String processInstanceId, boolean readonly)` | Returns the process instance with the given id.
    `ProcessInstance` | ProcessRuntime.`startProcess​(java.lang.String processId)` | Start a new process instance.
    `ProcessInstance` | ProcessRuntime.`startProcess​(java.lang.String processId, java.util.Map<java.lang.String,​java.lang.Object> parameters)` | Start a new process instance.
    `ProcessInstance` | ProcessRuntime.`startProcess​(java.lang.String processId, java.util.Map<java.lang.String,​java.lang.Object> parameters, AgendaFilter agendaFilter)` | Start a new process instance.
    `ProcessInstance` | ProcessRuntime.`startProcess​(java.lang.String processId, AgendaFilter agendaFilter)` | Start a new process instance.
    `ProcessInstance` | ProcessRuntime.`startProcessFromNodeIds​(java.lang.String processId, java.util.Map<java.lang.String,​java.lang.Object> params, java.lang.String... nodeIds)` | Starts a new process instances starting from the nodes given
    `ProcessInstance` | ProcessRuntime.`startProcessInstance​(java.lang.String processInstanceId)` | Starts the given process instance (which was created by using createProcesInstance but not yet started).

    Methods in org.kie.api.runtime.process that return types with arguments of type ProcessInstance
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.Collection<ProcessInstance>` | ProcessRuntime.`getProcessInstances()` | Returns a collection of currently active process instances.