# Uses of Interface
org.flowable.engine.migration.ProcessInstanceMigrationBuilder

Packages that use ProcessInstanceMigrationBuilder
Package
Description
org.flowable.engine
Public API of the Flowable 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) tasks, such as claiming, completing and assigning tasks.
`IdentityService`: Used for managing users, groups and the relations between them.
`ManagementService`: Exposes engine administration 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.flowable.engine.migration

- ## Uses of ProcessInstanceMigrationBuilder in org.flowable.engine

  Methods in org.flowable.engine that return ProcessInstanceMigrationBuilder
  Modifier and Type
  Method
  Description
  `ProcessInstanceMigrationBuilder`
  ProcessMigrationService.`createProcessInstanceMigrationBuilder()`
  `ProcessInstanceMigrationBuilder`
  ProcessMigrationService.`createProcessInstanceMigrationBuilderFromProcessInstanceMigrationDocument(ProcessInstanceMigrationDocument document)`

- ## Uses of ProcessInstanceMigrationBuilder in org.flowable.engine.migration

  Methods in org.flowable.engine.migration that return ProcessInstanceMigrationBuilder
  Modifier and Type
  Method
  Description
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`addActivityMigrationMapping(ActivityMigrationMapping mapping)`
  Adds an activity mapping to the process instance migration plan.
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`addEnableEventSubProcessStartEvent(EnableActivityMapping mapping)`
  Adds an event sub process start event to enable for the migration.
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`fromProcessInstanceMigrationDocument(ProcessInstanceMigrationDocument processInstanceMigrationDocument)`
  Creates a ProcessInstanceMigrationBuilder using the values of a ProcessInstanceMigrationDocument
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`migrateToProcessDefinition(String processDefinitionId)`
  Specifies the process definition to migrate to, using the process definition id
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`migrateToProcessDefinition(String processDefinitionKey, int processDefinitionVersion)`
  Specifies the process definition to migrate to, identified by its key and version
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`migrateToProcessDefinition(String processDefinitionKey, int processDefinitionVersion, String processDefinitionTenantId)`
  Specifies the process definition to migrate to, identified by its key and version and tenantId
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`postUpgradeJavaDelegate(String javaDelegateClassName)`
  The java delegate class name executed after process instance migration
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`postUpgradeJavaDelegateExpression(String expressionString)`
  The java delegate expression executed after process instance migration
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`postUpgradeScript(Script script)`
  The script executed after process instance migration
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`preUpgradeJavaDelegate(String javaDelegateClassName)`
  The java delegate class name executed before process instance migration
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`preUpgradeJavaDelegateExpression(String expressionString)`
  The java delegate expression executed before process instance migration
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`preUpgradeScript(Script script)`
  The script executed before process instance migration
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`withMigrateToProcessDefinitionTenantId(String processDefinitionTenantId)`
  Specifies the tenantId of the process definition to migrate to
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`withProcessInstanceVariable(String variableName, Object variableValue)`
  Specifies a process instance variable that will also be available during the process migration (ie. to resolve callActivity calledElement expressions of the new process definition - if any)
  `ProcessInstanceMigrationBuilder`
  ProcessInstanceMigrationBuilder.`withProcessInstanceVariables(Map<String,Object> variables)`
  Specified process instances variables that will also be available during process migration