# Uses of Interface
org.flowable.engine.runtime.ChangeActivityStateBuilder

Packages that use ChangeActivityStateBuilder
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.runtime
Classes related to the `RuntimeService`.

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

  Methods in org.flowable.engine that return ChangeActivityStateBuilder
  Modifier and Type
  Method
  Description
  `ChangeActivityStateBuilder`
  RuntimeService.`createChangeActivityStateBuilder()`
  Create a `ChangeActivityStateBuilder`, that allows to set various options for changing the state of a process instance.

- ## Uses of ChangeActivityStateBuilder in org.flowable.engine.runtime

  Methods in org.flowable.engine.runtime that return ChangeActivityStateBuilder
  Modifier and Type
  Method
  Description
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`enableEventSubProcessStartEvent(String eventSubProcessStartEventId)`
  Enables a new start event in an event sub process.
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`localVariable(String startActivityId, String localVariableName, Object localVariableValue)`
  Sets a local scope variable for a start activity id
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`localVariables(String startActivityId, Map<String,Object> localVariables)`
  Sets multiple local scope variables for a start activity id
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveActivityIdsToSingleActivityId(List<String> currentActivityIds, String newActivityId)`
  Set the activity ids that should be changed to a single activity id.
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveActivityIdTo(String currentActivityId, String newActivityId)`
  Moves the execution with the current activity id to the provided new activity id
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveActivityIdToParentActivityId(String currentActivityId, String newActivityId)`
  Moves the execution with the current activity id to an activity id in the parent process instance.
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveActivityIdToSubProcessInstanceActivityId(String currentActivityId, String newActivityId, String callActivityId)`
  Moves the execution with the current activity id to an activity id in a new sub process instance for the provided call activity id.
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveActivityIdToSubProcessInstanceActivityId(String currentActivityId, String newActivityId, String callActivityId, Integer subProcessDefinitionVersion)`
  Moves the execution with the current activity id to an activity id in a new sub process instance of the specific definition version for the provided call activity id.
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveExecutionsToSingleActivityId(List<String> executionIds, String activityId)`
  Set the ids of the executions which should be changed to a single execution with the provided activity id.
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveExecutionToActivityId(String executionId, String activityId)`
  Set the id of the execution for which the activity should be changed
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveSingleActivityIdToActivityIds(String currentActivityId, List<String> newActivityIds)`
  Set the activity id that should be changed to multiple activity ids.
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`moveSingleExecutionToActivityIds(String executionId, List<String> activityId)`
  Set the id of an execution which should be changed to multiple executions with the provided activity ids.
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`processInstanceId(String processInstanceId)`
  Set the id of the process instance
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`processVariable(String processVariableName, Object processVariableValue)`
  Sets a process scope variable
  `ChangeActivityStateBuilder`
  ChangeActivityStateBuilder.`processVariables(Map<String,Object> processVariables)`
  Sets multiple process scope variables