## Uses of Interface
org.activiti.engine.runtime.ProcessInstance

- Packages that use ProcessInstance
  Package | Description
  --- | ---
  org.activiti.engine | Public API of the Activiti engine. Typical usage of the API starts by the creation of a `ProcessEngineConfiguration` (typically based on a configuration file), from which a `ProcessEngine` can be obtained. Through the services obtained from such a `ProcessEngine`, BPM and workflow operation can be executed: `RepositoryService`: Manages `Deployment`s `RuntimeService`: For starting and searching `ProcessInstance`s `TaskService`: Exposes operations to manage human (standalone) `Task`s, such as claiming, completing and assigning tasks `IdentityService`: Used for managing `User`s, `Group`s and the relations between them `ManagementService`: Exposes engine admin and maintenance operations, which have no relation to the runtime exection of business processes `HistoryService`: Exposes information about ongoing and past process instances. `FormService`: Access to form data and rendered forms for starting new process instances and completing tasks.
  org.activiti.engine.runtime | Classes related to the `RuntimeService`.

- - ### Uses of ProcessInstance in org.activiti.engine

    Methods in org.activiti.engine that return ProcessInstance
    Modifier and Type | Method and Description
    --- | ---
    `ProcessInstance` | RuntimeService.`startProcessInstanceById(String processDefinitionId)` Starts a new process instance in the exactly specified version of the process definition with the given id.
    `ProcessInstance` | RuntimeService.`startProcessInstanceById(String processDefinitionId, Map<String,Object> variables)` Starts a new process instance in the exactly specified version of the process definition with the given id.
    `ProcessInstance` | RuntimeService.`startProcessInstanceById(String processDefinitionId, String businessKey)` Starts a new process instance in the exactly specified version of the process definition with the given id.
    `ProcessInstance` | RuntimeService.`startProcessInstanceById(String processDefinitionId, String businessKey, Map<String,Object> variables)` Starts a new process instance in the exactly specified version of the process definition with the given id.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByKey(String processDefinitionKey)` Starts a new process instance in the latest version of the process definition with the given key.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByKey(String processDefinitionKey, Map<String,Object> variables)` Starts a new process instance in the latest version of the process definition with the given key
    `ProcessInstance` | RuntimeService.`startProcessInstanceByKey(String processDefinitionKey, String businessKey)` Starts a new process instance in the latest version of the process definition with the given key.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByKey(String processDefinitionKey, String businessKey, Map<String,Object> variables)` Starts a new process instance in the latest version of the process definition with the given key.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByKeyAndTenantId(String processDefinitionKey, Map<String,Object> variables, String tenantId)` Similar to `RuntimeService.startProcessInstanceByKey(String, Map)`, but using a specific tenant identifier.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByKeyAndTenantId(String processDefinitionKey, String tenantId)` Similar to `RuntimeService.startProcessInstanceByKey(String)`, but using a specific tenant identifier.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByKeyAndTenantId(String processDefinitionKey, String businessKey, Map<String,Object> variables, String tenantId)` Similar to `RuntimeService.startProcessInstanceByKey(String, String, Map)`, but using a specific tenant identifier.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByKeyAndTenantId(String processDefinitionKey, String businessKey, String tenantId)` Similar to `RuntimeService.startProcessInstanceByKey(String, String)`, but using a specific tenant identifier.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByMessage(String messageName)` Signals the process engine that a message is received and starts a new `ProcessInstance`.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByMessage(String messageName, Map<String,Object> processVariables)` Signals the process engine that a message is received and starts a new `ProcessInstance`.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByMessage(String messageName, String businessKey)` Signals the process engine that a message is received and starts a new `ProcessInstance`.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByMessage(String messageName, String businessKey, Map<String,Object> processVariables)` Signals the process engine that a message is received and starts a new `ProcessInstance`.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByMessageAndTenantId(String messageName, Map<String,Object> processVariables, String tenantId)` Similar to `RuntimeService#startProcessInstanceByMessage(String, Map)`, but with tenant context.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByMessageAndTenantId(String messageName, String tenantId)` Similar to `RuntimeService.startProcessInstanceByMessage(String)`, but with tenant context.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByMessageAndTenantId(String messageName, String businessKey, Map<String,Object> processVariables, String tenantId)` Similar to `RuntimeService#startProcessInstanceByMessage(String, String, Map)`, but with tenant context.
    `ProcessInstance` | RuntimeService.`startProcessInstanceByMessageAndTenantId(String messageName, String businessKey, String tenantId)` Similar to `RuntimeService.startProcessInstanceByMessage(String, String)`, but with tenant context.
    `ProcessInstance` | FormService.`submitStartFormData(String processDefinitionId, Map<String,String> properties)` Start a new process instance with the user data that was entered as properties in a start form.
    `ProcessInstance` | FormService.`submitStartFormData(String processDefinitionId, String businessKey, Map<String,String> properties)` Start a new process instance with the user data that was entered as properties in a start form.

  - ### Uses of ProcessInstance in org.activiti.engine.runtime

    Methods in org.activiti.engine.runtime that return ProcessInstance
    Modifier and Type | Method and Description
    --- | ---
    `ProcessInstance` | ProcessInstanceBuilder.`start()` Start the process instance

Copyright © 2016 Alfresco. All rights reserved.