Package org.flowable.cmmn.api

# Interface CmmnRuntimeService

public interface CmmnRuntimeService

Author:
  Joram Barrez

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addEventListener(FlowableEventListener listenerToAdd)`
  Adds an event-listener which will be notified of ALL events by the dispatcher.
  `void`
  `addEventListener(FlowableEventListener listenerToAdd, FlowableEngineEventType... types)`
  Adds an event-listener which will only be notified when an event occurs, which type is in the given types.
  `void`
  `addGroupIdentityLink(String caseInstanceId, String groupId, String identityLinkType)`
  Involves a group with a case instance.
  `void`
  `addUserIdentityLink(String caseInstanceId, String userId, String identityLinkType)`
  Involves a user with a case instance.
  `void`
  `bulkDeleteCaseInstances(Collection<String> caseInstanceId)`
  `void`
  `bulkTerminateCaseInstances(Collection<String> caseInstanceId)`
  `void`
  `completeCaseInstance(String caseInstanceId)`
  `void`
  `completeGenericEventListenerInstance(String genericEventListenerInstanceId)`
  `void`
  `completeIntentEventListenerInstance(String intentEventListenerInstanceId)`
  `void`
  `completeStagePlanItemInstance(String planItemInstanceId)`
  `void`
  `completeStagePlanItemInstance(String planItemInstanceId, boolean force)`
  `void`
  `completeUserEventListenerInstance(String userEventListenerInstanceId)`
  `CaseInstanceBuilder`
  `createCaseInstanceBuilder()`
  `CaseInstanceQuery`
  `createCaseInstanceQuery()`
  `CaseInstanceStartEventSubscriptionBuilder`
  `createCaseInstanceStartEventSubscriptionBuilder()`
  Creates a new event subscription builder to register a subscription to start a new case instance based on an event with a particular set of correlation parameter values.
  `CaseInstanceStartEventSubscriptionDeletionBuilder`
  `createCaseInstanceStartEventSubscriptionDeletionBuilder()`
  Creates a new event subscription deletion builder to delete one or more previously registered case start event subscriptions based on a particular case definition and with an optional combination of correlation parameter values.
  `CaseInstanceStartEventSubscriptionModificationBuilder`
  `createCaseInstanceStartEventSubscriptionModificationBuilder()`
  Creates a new event subscription modification builder to modify one or more previously registered case start event subscriptions based on a particular case definition and with an optional combination of correlation parameter values.
  `ChangePlanItemStateBuilder`
  `createChangePlanItemStateBuilder()`
  Create a `ChangePlanItemStateBuilder`, that allows to set various options for changing the state of a case instance.
  `EventSubscriptionQuery`
  `createEventSubscriptionQuery()`
  Creates a new `EventSubscriptionQuery` instance, that can be used to query the event subscriptions.
  `GenericEventListenerInstanceQuery`
  `createGenericEventListenerInstanceQuery()`
  `IntentEventListenerInstanceQuery`
  `createIntentEventListenerInstanceQuery()`
  `MilestoneInstanceQuery`
  `createMilestoneInstanceQuery()`
  `PlanItemInstanceQuery`
  `createPlanItemInstanceQuery()`
  `PlanItemInstanceTransitionBuilder`
  `createPlanItemInstanceTransitionBuilder(String planItemInstanceId)`
  `SignalEventListenerInstanceQuery`
  `createSignalEventListenerInstanceQuery()`
  `UserEventListenerInstanceQuery`
  `createUserEventListenerInstanceQuery()`
  `VariableInstanceQuery`
  `createVariableInstanceQuery()`
  `void`
  `deleteCaseInstance(String caseInstanceId)`
  `void`
  `deleteGroupIdentityLink(String caseInstanceId, String groupId, String identityLinkType)`
  Removes the association between a group and a case instance for the given identityLinkType.
  `void`
  `deleteUserIdentityLink(String caseInstanceId, String userId, String identityLinkType)`
  Removes the association between a user and a case instance for the given identityLinkType.
  `void`
  `disablePlanItemInstance(String planItemInstanceId)`
  `void`
  `dispatchEvent(FlowableEvent event)`
  Dispatches the given event to any listeners that are registered.
  `void`
  `enablePlanItemInstance(String planItemInstanceId)`
  `void`
  `evaluateCriteria(String caseInstanceId)`
  `List<org.flowable.entitylink.api.EntityLink>`
  `getEntityLinkChildrenForCaseInstance(String instanceId)`
  Retrieves the `EntityLink`s associated with the given case instance.
  `List<org.flowable.entitylink.api.EntityLink>`
  `getEntityLinkChildrenWithSameRootAsCaseInstance(String instanceId)`
  Retrieves all the `EntityLink`s associated with the same root as the given case instance.
  `List<org.flowable.entitylink.api.EntityLink>`
  `getEntityLinkParentsForCaseInstance(String instanceId)`
  Retrieves the `EntityLink`s where the given case instance is referenced.
  `List<IdentityLink>`
  `getIdentityLinksForCaseInstance(String instanceId)`
  Retrieves the `IdentityLink`s associated with the given case instance.
  `List<IdentityLink>`
  `getIdentityLinksForPlanItemInstance(String instanceId)`
  Retrieves the `IdentityLink`s associated with the given plan item instance.
  `Object`
  `getLocalVariable(String planItemInstanceId, String variableName)`
  The local variable value.
  `VariableInstance`
  `getLocalVariableInstance(String planItemInstanceId, String variableName)`
  The local variable.
  `Map<String,VariableInstance>`
  `getLocalVariableInstances(String planItemInstanceId)`
  All variable values that are defined in the plan item instance scope, without taking outer scopes into account.
  `Map<String,Object>`
  `getLocalVariables(String planItemInstanceId)`
  All variable values that are defined in the plan item instance scope, without taking outer scopes into account.
  `Map<String,Object>`
  `getLocalVariables(String planItemInstanceId, Collection<String> variableNames)`
  All variable values for all given variableNames that are defined in the plan item instance scope, without taking outer scopes into account.
  `List<StageResponse>`
  `getStageOverview(String caseInstanceId)`
  Gives back a stage overview of the case instance which includes the stage information of the case model.
  `org.flowable.form.api.FormInfo`
  `getStartFormModel(String caseDefinitionId, String caseInstanceId)`
  Gets a Form model instance of the start form of a specific case definition or case instance
  `Object`
  `getVariable(String caseInstanceId, String variableName)`
  The variable value.
  `VariableInstance`
  `getVariableInstance(String caseInstanceId, String variableName)`
  The variable.
  `Map<String,VariableInstance>`
  `getVariableInstances(String caseInstanceId)`
  All variables visible from the given case instance scope.
  `Map<String,Object>`
  `getVariables(String caseInstanceId)`
  All variables visible from the given case instance scope.
  `Map<String,Object>`
  `getVariables(String caseInstanceId, Collection<String> variableNames)`
  The variable values for all given variableNames.
  `boolean`
  `hasLocalVariable(String planItemInstanceId, String variableName)`
  Check whether or not this plan item instance has local variable set with the given name.
  `boolean`
  `hasVariable(String caseInstanceId, String variableName)`
  Check whether or not this case instance has variable set with the given name, Searching for the variable is done in all scopes that are visible to the given case instance.
  `void`
  `removeAssignee(String caseInstanceId)`
  Removes the assignee of a case instance.
  `void`
  `removeEventListener(FlowableEventListener listenerToRemove)`
  Removes the given listener from this dispatcher.
  `void`
  `removeLocalVariable(String planItemInstanceId, String variableName)`
  `void`
  `removeLocalVariables(String planItemInstanceId, Collection<String> variableNames)`
  `void`
  `removeOwner(String caseInstanceId)`
  Removes the owner of a case instance.
  `void`
  `removeVariable(String caseInstanceId, String variableName)`
  `void`
  `removeVariables(String caseInstanceId, Collection<String> variableNames)`
  `void`
  `setAssignee(String caseInstanceId, String userId)`
  Set the new assignee of a case instance.
  `void`
  `setCaseInstanceName(String caseInstanceId, String caseName)`
  Set or change the name of the case instance.
  `void`
  `setLocalVariable(String planItemInstanceId, String variableName, Object variableValue)`
  `void`
  `setLocalVariableAsync(String planItemInstanceId, String variableName, Object variableValue)`
  `void`
  `setLocalVariables(String planItemInstanceId, Map<String,Object> variables)`
  `void`
  `setLocalVariablesAsync(String planItemInstanceId, Map<String,Object> variables)`
  `void`
  `setOwner(String caseInstanceId, String userId)`
  Set the new owner of a case instance.
  `void`
  `setVariable(String caseInstanceId, String variableName, Object variableValue)`
  `void`
  `setVariableAsync(String caseInstanceId, String variableName, Object variableValue)`
  `void`
  `setVariables(String caseInstanceId, Map<String,Object> variables)`
  `void`
  `setVariablesAsync(String caseInstanceId, Map<String,Object> variables)`
  `void`
  `startPlanItemInstance(String planItemInstanceId)`
  `void`
  `terminateCaseInstance(String caseInstanceId)`
  `void`
  `terminatePlanItemInstance(String planItemInstanceId)`
  `void`
  `triggerPlanItemInstance(String planItemInstanceId)`
  `void`
  `updateBusinessKey(String caseInstanceId, String businessKey)`
  Updates the business key for the provided case instance
  `void`
  `updateBusinessStatus(String caseInstanceId, String businessStatus)`
  Updates the business status for the provided case instance

- ## Method Details

  - ### createCaseInstanceBuilder

    CaseInstanceBuilder createCaseInstanceBuilder()

  - ### createPlanItemInstanceTransitionBuilder

    PlanItemInstanceTransitionBuilder createPlanItemInstanceTransitionBuilder(String planItemInstanceId)

  - ### triggerPlanItemInstance

    void triggerPlanItemInstance(String planItemInstanceId)

  - ### enablePlanItemInstance

    void enablePlanItemInstance(String planItemInstanceId)

  - ### startPlanItemInstance

    void startPlanItemInstance(String planItemInstanceId)

  - ### disablePlanItemInstance

    void disablePlanItemInstance(String planItemInstanceId)

  - ### completeStagePlanItemInstance

    void completeStagePlanItemInstance(String planItemInstanceId)

  - ### completeStagePlanItemInstance

    void completeStagePlanItemInstance(String planItemInstanceId, boolean force)

  - ### completeCaseInstance

    void completeCaseInstance(String caseInstanceId)

  - ### terminateCaseInstance

    void terminateCaseInstance(String caseInstanceId)

  - ### bulkTerminateCaseInstances

    void bulkTerminateCaseInstances(Collection<String> caseInstanceId)

  - ### terminatePlanItemInstance

    void terminatePlanItemInstance(String planItemInstanceId)

  - ### deleteCaseInstance

    void deleteCaseInstance(String caseInstanceId)

  - ### bulkDeleteCaseInstances

    void bulkDeleteCaseInstances(Collection<String> caseInstanceId)

  - ### evaluateCriteria

    void evaluateCriteria(String caseInstanceId)

  - ### completeGenericEventListenerInstance

    void completeGenericEventListenerInstance(String genericEventListenerInstanceId)

  - ### completeUserEventListenerInstance

    void completeUserEventListenerInstance(String userEventListenerInstanceId)

  - ### completeIntentEventListenerInstance

    void completeIntentEventListenerInstance(String intentEventListenerInstanceId)

  - ### getVariables

    Map<String,Object> getVariables(String caseInstanceId)
    All variables visible from the given case instance scope.
    Parameters:
      `caseInstanceId` - id of case instance, cannot be null.
    Returns:
      the variables or an empty map if no such variables are found.
    Throws:
      `FlowableObjectNotFoundException` - when no case instance is found for the given caseInstanceId.

  - ### getVariables

    Map<String,Object> getVariables(String caseInstanceId, Collection<String> variableNames)
    The variable values for all given variableNames.
    Parameters:
      `caseInstanceId` - id of execution, cannot be null.
      `variableNames` - the collection of variable names that should be retrieved.
    Returns:
      the variables or an empty map if no such variables are found.
    Throws:
      `FlowableObjectNotFoundException` - when no case instance is found for the given caseInstanceId.

  - ### getVariableInstances

    Map<String,VariableInstance> getVariableInstances(String caseInstanceId)
    All variables visible from the given case instance scope.
    Parameters:
      `caseInstanceId` - id of case instance, cannot be null.
    Returns:
      the variable instances or an empty map if no such variables are found.
    Throws:
      `FlowableObjectNotFoundException` - when no case instance is found for the given caseInstanceId.

  - ### getLocalVariables

    Map<String,Object> getLocalVariables(String planItemInstanceId)
    All variable values that are defined in the plan item instance scope, without taking outer scopes into account.
    Parameters:
      `planItemInstanceId` - id of plan item instance, cannot be null.
    Returns:
      the variables or an empty map if no such variables are found.
    Throws:
      `FlowableObjectNotFoundException` - when no plan item instance is found for the given planItemInstanceId.

  - ### getLocalVariables

    Map<String,Object> getLocalVariables(String planItemInstanceId, Collection<String> variableNames)
    All variable values for all given variableNames that are defined in the plan item instance scope, without taking outer scopes into account.
    Parameters:
      `planItemInstanceId` - id of plan item instance, cannot be null.
      `variableNames` - the collection of variable names that should be retrieved.
    Returns:
      the variables or an empty map if no such variables are found.
    Throws:
      `FlowableObjectNotFoundException` - when no plan item instance is found for the given planItemInstanceId.

  - ### getLocalVariableInstances

    Map<String,VariableInstance> getLocalVariableInstances(String planItemInstanceId)
    All variable values that are defined in the plan item instance scope, without taking outer scopes into account.
    Parameters:
      `planItemInstanceId` - id of plan item instance, cannot be null.
    Returns:
      the variables or an empty map if no such variables are found.
    Throws:
      `FlowableObjectNotFoundException` - when no plan item instance is found for the given planItemInstanceId.

  - ### getVariable

    Object getVariable(String caseInstanceId, String variableName)
    The variable value. Returns null when no variable value is found with the given name or when the value is set to null.
    Parameters:
      `caseInstanceId` - id of case instance, cannot be null.
      `variableName` - name of variable, cannot be null.
    Returns:
      the variable value or null if the variable is undefined or the value of the variable is null.
    Throws:
      `FlowableObjectNotFoundException` - when no case instance is found for the given caseInstanceId.

  - ### getVariableInstance

    VariableInstance getVariableInstance(String caseInstanceId, String variableName)
    The variable. Returns null when no variable value is found with the given name or when the value is set to null.
    Parameters:
      `caseInstanceId` - id of case instance, cannot be null.
      `variableName` - name of variable, cannot be null.
    Returns:
      the variable or null if the variable is undefined.
    Throws:
      `FlowableObjectNotFoundException` - when no case instance is found for the given caseInstanceId.

  - ### getLocalVariable

    Object getLocalVariable(String planItemInstanceId, String variableName)
    The local variable value. Returns null when no variable value is found with the given name or when the value is set to null.
    Parameters:
      `planItemInstanceId` - id of plan item instance, cannot be null.
      `variableName` - name of variable, cannot be null.
    Returns:
      the variable value or null if the variable is undefined or the value of the variable is null.
    Throws:
      `FlowableObjectNotFoundException` - when no plan item instance is found for the given planItemInstanceId.

  - ### getLocalVariableInstance

    VariableInstance getLocalVariableInstance(String planItemInstanceId, String variableName)
    The local variable. Returns null when no variable value is found with the given name or when the value is set to null.
    Parameters:
      `planItemInstanceId` - id of plan item instance, cannot be null.
      `variableName` - name of variable, cannot be null.
    Returns:
      the variable or null if the variable is undefined.
    Throws:
      `FlowableObjectNotFoundException` - when no plan item instance is found for the given planItemInstanceId.

  - ### hasVariable

    boolean hasVariable(String caseInstanceId, String variableName)
    Check whether or not this case instance has variable set with the given name, Searching for the variable is done in all scopes that are visible to the given case instance.

  - ### hasLocalVariable

    boolean hasLocalVariable(String planItemInstanceId, String variableName)
    Check whether or not this plan item instance has local variable set with the given name.

  - ### setVariables

    void setVariables(String caseInstanceId, Map<String,Object> variables)

  - ### setVariable

    void setVariable(String caseInstanceId, String variableName, Object variableValue)

  - ### setLocalVariables

    void setLocalVariables(String planItemInstanceId, Map<String,Object> variables)

  - ### setLocalVariable

    void setLocalVariable(String planItemInstanceId, String variableName, Object variableValue)

  - ### setVariablesAsync

    void setVariablesAsync(String caseInstanceId, Map<String,Object> variables)

  - ### setVariableAsync

    void setVariableAsync(String caseInstanceId, String variableName, Object variableValue)

  - ### setLocalVariablesAsync

    void setLocalVariablesAsync(String planItemInstanceId, Map<String,Object> variables)

  - ### setLocalVariableAsync

    void setLocalVariableAsync(String planItemInstanceId, String variableName, Object variableValue)

  - ### removeVariable

    void removeVariable(String caseInstanceId, String variableName)

  - ### removeVariables

    void removeVariables(String caseInstanceId, Collection<String> variableNames)

  - ### removeLocalVariable

    void removeLocalVariable(String planItemInstanceId, String variableName)

  - ### removeLocalVariables

    void removeLocalVariables(String planItemInstanceId, Collection<String> variableNames)

  - ### createVariableInstanceQuery

    VariableInstanceQuery createVariableInstanceQuery()

  - ### setCaseInstanceName

    void setCaseInstanceName(String caseInstanceId, String caseName)
    Set or change the name of the case instance.
    Parameters:
      `caseInstanceId` - the id of the case to set the name
      `caseName` - the name to be set on the case

  - ### createCaseInstanceQuery

    CaseInstanceQuery createCaseInstanceQuery()

  - ### createPlanItemInstanceQuery

    PlanItemInstanceQuery createPlanItemInstanceQuery()

  - ### createMilestoneInstanceQuery

    MilestoneInstanceQuery createMilestoneInstanceQuery()

  - ### createGenericEventListenerInstanceQuery

    GenericEventListenerInstanceQuery createGenericEventListenerInstanceQuery()

  - ### createSignalEventListenerInstanceQuery

    SignalEventListenerInstanceQuery createSignalEventListenerInstanceQuery()

  - ### createIntentEventListenerInstanceQuery

    IntentEventListenerInstanceQuery createIntentEventListenerInstanceQuery()

  - ### createUserEventListenerInstanceQuery

    UserEventListenerInstanceQuery createUserEventListenerInstanceQuery()

  - ### createEventSubscriptionQuery

    EventSubscriptionQuery createEventSubscriptionQuery()
    Creates a new `EventSubscriptionQuery` instance, that can be used to query the event subscriptions.

  - ### getStageOverview

    List<StageResponse> getStageOverview(String caseInstanceId)
    Gives back a stage overview of the case instance which includes the stage information of the case model.
    Parameters:
      `caseInstanceId` - id of the case instance, cannot be null.
    Returns:
      list of stage info objects
    Throws:
      `FlowableObjectNotFoundException` - when the case instance doesn't exist.

  - ### setOwner

    void setOwner(String caseInstanceId, String userId)
    Set the new owner of a case instance.
    Parameters:
      `caseInstanceId` - the id of the case to set its new owner
      `userId` - the id of the user to set as the new owner

  - ### removeOwner

    void removeOwner(String caseInstanceId)
    Removes the owner of a case instance.
    Parameters:
      `caseInstanceId` - the id of the case to remove the owner from

  - ### setAssignee

    void setAssignee(String caseInstanceId, String userId)
    Set the new assignee of a case instance.
    Parameters:
      `caseInstanceId` - the id of the case to set its new assignee
      `userId` - the id of the user to set as the new assignee

  - ### removeAssignee

    void removeAssignee(String caseInstanceId)
    Removes the assignee of a case instance.
    Parameters:
      `caseInstanceId` - the id of the case to remove the assignee from

  - ### addUserIdentityLink

    void addUserIdentityLink(String caseInstanceId, String userId, String identityLinkType)
    Involves a user with a case instance. The type of identity link is defined by the given identityLinkType.
    Parameters:
      `caseInstanceId` - id of the case instance, cannot be null.
      `userId` - id of the user involve, cannot be null.
      `identityLinkType` - type of identityLink, cannot be null.
    Throws:
      `FlowableObjectNotFoundException` - when the case instance doesn't exist.

  - ### addGroupIdentityLink

    void addGroupIdentityLink(String caseInstanceId, String groupId, String identityLinkType)
    Involves a group with a case instance. The type of identityLink is defined by the given identityLink.
    Parameters:
      `caseInstanceId` - id of the case instance, cannot be null.
      `groupId` - id of the group to involve, cannot be null.
      `identityLinkType` - type of identity, cannot be null.
    Throws:
      `FlowableObjectNotFoundException` - when the case instance or group doesn't exist.

  - ### deleteUserIdentityLink

    void deleteUserIdentityLink(String caseInstanceId, String userId, String identityLinkType)
    Removes the association between a user and a case instance for the given identityLinkType.
    Parameters:
      `caseInstanceId` - id of the case instance, cannot be null.
      `userId` - id of the user involve, cannot be null.
      `identityLinkType` - type of identityLink, cannot be null.
    Throws:
      `FlowableObjectNotFoundException` - when the task or user doesn't exist.

  - ### deleteGroupIdentityLink

    void deleteGroupIdentityLink(String caseInstanceId, String groupId, String identityLinkType)
    Removes the association between a group and a case instance for the given identityLinkType.
    Parameters:
      `caseInstanceId` - id of the case instance, cannot be null.
      `groupId` - id of the group to involve, cannot be null.
      `identityLinkType` - type of identity, cannot be null.
    Throws:
      `FlowableObjectNotFoundException` - when the task or group doesn't exist.

  - ### getIdentityLinksForCaseInstance

    List<IdentityLink> getIdentityLinksForCaseInstance(String instanceId)
    Retrieves the `IdentityLink`s associated with the given case instance. Such an identity link informs how a certain user is involved with a case instance.

  - ### getIdentityLinksForPlanItemInstance

    List<IdentityLink> getIdentityLinksForPlanItemInstance(String instanceId)
    Retrieves the `IdentityLink`s associated with the given plan item instance. Such an identity link informs how a certain user is involved with a plan item instance.

  - ### getEntityLinkChildrenForCaseInstance

    List<org.flowable.entitylink.api.EntityLink> getEntityLinkChildrenForCaseInstance(String instanceId)
    Retrieves the `EntityLink`s associated with the given case instance.

  - ### getEntityLinkChildrenWithSameRootAsCaseInstance

    List<org.flowable.entitylink.api.EntityLink> getEntityLinkChildrenWithSameRootAsCaseInstance(String instanceId)
    Retrieves all the `EntityLink`s associated with the same root as the given case instance.

  - ### getEntityLinkParentsForCaseInstance

    List<org.flowable.entitylink.api.EntityLink> getEntityLinkParentsForCaseInstance(String instanceId)
    Retrieves the `EntityLink`s where the given case instance is referenced.

  - ### getStartFormModel

    org.flowable.form.api.FormInfo getStartFormModel(String caseDefinitionId, String caseInstanceId)
    Gets a Form model instance of the start form of a specific case definition or case instance
    Parameters:
      `caseDefinitionId` - id of case definition for which the start form should be retrieved.
      `caseInstanceId` - id of case instance for which the start form should be retrieved.

  - ### createChangePlanItemStateBuilder

    ChangePlanItemStateBuilder createChangePlanItemStateBuilder()
    Create a `ChangePlanItemStateBuilder`, that allows to set various options for changing the state of a case instance.

  - ### updateBusinessKey

    void updateBusinessKey(String caseInstanceId, String businessKey)
    Updates the business key for the provided case instance
    Parameters:
      `caseInstanceId` - id of the case instance to set the business key, cannot be null
      `businessKey` - new businessKey value

  - ### updateBusinessStatus

    void updateBusinessStatus(String caseInstanceId, String businessStatus)
    Updates the business status for the provided case instance
    Parameters:
      `caseInstanceId` - id of the case instance to set the business status, cannot be null
      `businessStatus` - new business status value

  - ### addEventListener

    void addEventListener(FlowableEventListener listenerToAdd)
    Adds an event-listener which will be notified of ALL events by the dispatcher.
    Parameters:
      `listenerToAdd` - the listener to add

  - ### addEventListener

    void addEventListener(FlowableEventListener listenerToAdd, FlowableEngineEventType... types)
    Adds an event-listener which will only be notified when an event occurs, which type is in the given types.
    Parameters:
      `listenerToAdd` - the listener to add
      `types` - types of events the listener should be notified for

  - ### removeEventListener

    void removeEventListener(FlowableEventListener listenerToRemove)
    Removes the given listener from this dispatcher. The listener will no longer be notified, regardless of the type(s) it was registered for in the first place.
    Parameters:
      `listenerToRemove` - listener to remove

  - ### dispatchEvent

    void dispatchEvent(FlowableEvent event)
    Dispatches the given event to any listeners that are registered.
    Parameters:
      `event` - event to dispatch.
    Throws:
      `FlowableException` - if an exception occurs when dispatching the event or when the `FlowableEventDispatcher` is disabled.
      `FlowableIllegalArgumentException` - when the given event is not suitable for dispatching.

  - ### createCaseInstanceStartEventSubscriptionBuilder

    CaseInstanceStartEventSubscriptionBuilder createCaseInstanceStartEventSubscriptionBuilder()
    Creates a new event subscription builder to register a subscription to start a new case instance based on an event with a particular set of correlation parameter values. In order for this to work, the case definition needs to have an event-registry based start event with a dynamic, manual subscription based behavior and the registered correlation parameter values within the builder need to be based on actual correlation parameter definitions within the event model the start event is based on. Register one or more correlation parameter value with in the builder before invoking the `CaseInstanceStartEventSubscriptionBuilder.subscribe()` method to create and register the subscription.
    Returns:
      the subscription builder

  - ### createCaseInstanceStartEventSubscriptionModificationBuilder

    CaseInstanceStartEventSubscriptionModificationBuilder createCaseInstanceStartEventSubscriptionModificationBuilder()
    Creates a new event subscription modification builder to modify one or more previously registered case start event subscriptions based on a particular case definition and with an optional combination of correlation parameter values.
    Returns:
      the subscription modification builder

  - ### createCaseInstanceStartEventSubscriptionDeletionBuilder

    CaseInstanceStartEventSubscriptionDeletionBuilder createCaseInstanceStartEventSubscriptionDeletionBuilder()
    Creates a new event subscription deletion builder to delete one or more previously registered case start event subscriptions based on a particular case definition and with an optional combination of correlation parameter values.
    Returns:
      the subscription deletion builder