# Uses of Interface
org.flowable.cmmn.api.runtime.CaseInstance

Packages that use CaseInstance
Package
Description
org.flowable.cmmn.api.event
org.flowable.cmmn.api.listener
org.flowable.cmmn.api.migration
org.flowable.cmmn.api.reactivation
org.flowable.cmmn.api.runtime

- ## Uses of CaseInstance in org.flowable.cmmn.api.event

  Methods in org.flowable.cmmn.api.event that return CaseInstance
  Modifier and Type
  Method
  Description
  `CaseInstance`
  FlowableCaseStageEndedEvent.`getCaseInstance()`
  Returns the case instance the stage belongs to.
  `CaseInstance`
  FlowableCaseStageStartedEvent.`getCaseInstance()`
  Returns the case instance the stage belongs to.
  `CaseInstance`
  FlowableCaseEndedEvent.`getEntity()`
  `CaseInstance`
  FlowableCaseStartedEvent.`getEntity()`

- ## Uses of CaseInstance in org.flowable.cmmn.api.listener

  Methods in org.flowable.cmmn.api.listener with parameters of type CaseInstance
  Modifier and Type
  Method
  Description
  `void`
  CaseInstanceLifecycleListener.`stateChanged(CaseInstance caseInstance, String oldState, String newState)`
  Will be called when the state of a `CaseInstance` changes and the `CaseInstanceLifecycleListener.getSourceState()` and `CaseInstanceLifecycleListener.getTargetState()` match.

- ## Uses of CaseInstance in org.flowable.cmmn.api.migration

  Methods in org.flowable.cmmn.api.migration with parameters of type CaseInstance
  Modifier and Type
  Method
  Description
  `void`
  CaseInstanceMigrationCallback.`caseInstanceMigrated(CaseInstance caseInstance, CaseDefinition caseDefToMigrateTo, CaseInstanceMigrationDocument document)`

- ## Uses of CaseInstance in org.flowable.cmmn.api.reactivation

  Methods in org.flowable.cmmn.api.reactivation that return CaseInstance
  Modifier and Type
  Method
  Description
  `CaseInstance`
  CaseReactivationBuilder.`reactivate()`
  After having entered all necessary information for the reactivation, this method actually triggers the reactivation and returns the reactivated case instance from the runtime.

- ## Uses of CaseInstance in org.flowable.cmmn.api.runtime

  Methods in org.flowable.cmmn.api.runtime that return CaseInstance
  Modifier and Type
  Method
  Description
  `CaseInstance`
  CaseInstanceBuilder.`start()`
  Once all the information is set using this builder API, the start method will create the case instance, initialize it according all the data in the builder and then evaluate the case model to start the case.
  `CaseInstance`
  CaseInstanceBuilder.`startAsync()`
  Once all the information is set using this builder API, the startAsync method will create the case instance and initialize its data, but the case model is not yet evaluated, but will be started and evaluated asynchronously in a different transaction.
  `CaseInstance`
  CaseInstanceBuilder.`startWithForm()`
  Once all the information is set using this builder API, the startWithForm method will create the case instance and initialize its data by additionally using the submitted form variables and handling them with the start form provided with the case model (e.g. validation).
  Methods in org.flowable.cmmn.api.runtime with parameters of type CaseInstance
  Modifier and Type
  Method
  Description
  `static boolean`
  CaseInstanceState.`isInTerminalState(CaseInstance caseInstance)`