Package org.flowable.cmmn.api.listener

# Interface CaseInstanceLifecycleListener

public interface CaseInstanceLifecycleListener
[Experimental] An interface for listener implementations that get notified when the state of a case instance changes.

Author:
  martin.grofcik

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getSourceState()`
  `String`
  `getTargetState()`
  `void`
  `stateChanged(CaseInstance caseInstance, String oldState, String newState)`
  Will be called when the state of a `CaseInstance` changes and the `getSourceState()` and `getTargetState()` match.

- ## Method Details

  - ### getSourceState

    String getSourceState()
    Returns:
      The type a case instance is changing from, use a value from `CaseInstanceState`. This listener will only receive elements where the state changing from this value to another one. Return null or the empty String to listen to any state.

  - ### getTargetState

    String getTargetState()
    Returns:
      The type a case instance is changing to, use a value from `CaseInstanceState`. This listener will only receive elements where the state changing from this value to another one. Return null or the empty String to listen to any state.

  - ### stateChanged

    void stateChanged(CaseInstance caseInstance, String oldState, String newState)
    Will be called when the state of a `CaseInstance` changes and the `getSourceState()` and `getTargetState()` match.