Interface CaseService

All Known Implementing Classes:
CaseServiceImpl

public interface CaseService
Service which provides access to case instances and case executions.
Since:
7.2
Author:
Roman Smirnov
  • Method Details

    • createCaseInstanceByKey

      CaseInstance createCaseInstanceByKey(String caseDefinitionKey)

      Creates a new CaseInstance of the latest version of the case definition with the given key. The new case instance will be in the ACTIVE state.

      Parameters:
      caseDefinitionKey - the key of the case definition to instantiate
      Throws:
      NotValidException - when the given case definition key is null.
      NotFoundException - when no case definition is deployed with the given key.
      ProcessEngineException - when an internal exception happens during the execution of the command
    • createCaseInstanceByKey

      CaseInstance createCaseInstanceByKey(String caseDefinitionKey, String businessKey)

      Creates a new CaseInstance of the latest version of the case definition with the given key. The new case instance will be in the ACTIVE state.

      A business key can be provided to associate the case instance with a certain identifier that has a clear business meaning. This business key can then be used to easily look up that case instance, see CaseInstanceQuery.caseInstanceBusinessKey(String). Providing such a business key is definitely a best practice.

      Note that a business key MUST be unique for the given case definition WHEN you have added a database constraint for it. In this case, only case instance from different case definition are allowed to have the same business key and the combination of caseDefinitionKey-businessKey must be unique.

      Parameters:
      caseDefinitionKey - the key of the case definition to instantiate
      businessKey - a key that uniquely identifies the case instance in the context of the given case definition.
      Throws:
      NotValidException - when the given case definition key is null.
      NotFoundException - when no case definition is deployed with the given key.
      ProcessEngineException - when an internal exception happens during the execution of the command
    • createCaseInstanceByKey

      CaseInstance createCaseInstanceByKey(String caseDefinitionKey, Map<String,Object> variables)

      Creates a new CaseInstance of the latest version of the case definition with the given key. The new case instance will be in the ACTIVE state.

      Parameters:
      caseDefinitionKey - the key of the case definition to instantiate
      variables - variables to be set on the new case instance
      Throws:
      NotValidException - when the given case definition key is null.
      NotFoundException - when no case definition is deployed with the given key.
      ProcessEngineException - when an internal exception happens during the execution of the command
    • createCaseInstanceByKey

      CaseInstance createCaseInstanceByKey(String caseDefinitionKey, String businessKey, Map<String,Object> variables)

      Creates a new CaseInstance of the latest version of the case definition with the given key. The new case instance will be in the ACTIVE state.

      A business key can be provided to associate the case instance with a certain identifier that has a clear business meaning. This business key can then be used to easily look up that case instance, see CaseInstanceQuery.caseInstanceBusinessKey(String). Providing such a business key is definitely a best practice.

      Note that a business key MUST be unique for the given case definition WHEN you have added a database constraint for it. In this case, only case instance from different case definition are allowed to have the same business key and the combination of caseDefinitionKey-businessKey must be unique.

      Parameters:
      caseDefinitionKey - the key of the case definition to instantiate.
      businessKey - a key that uniquely identifies the case instance in the context of the given case definition.
      variables - variables to be set on the new case instance.
      Throws:
      NotValidException - when the given case definition key is null.
      NotFoundException - when no case definition is deployed with the given key.
      ProcessEngineException - when an internal exception happens during the execution of the command
    • createCaseInstanceById

      CaseInstance createCaseInstanceById(String caseDefinitionId)

      Creates a new CaseInstance in the exactly specified version identify by the provided process definition id. The new case instance will be in the ACTIVE state.

      Parameters:
      caseDefinitionId - the id of the case definition to instantiate
      Throws:
      NotValidException - when the given case definition id is null.
      NotFoundException - when no case definition is deployed with the given id.
      ProcessEngineException - when an internal exception happens during the execution of the command
    • createCaseInstanceById

      CaseInstance createCaseInstanceById(String caseDefinitionId, String businessKey)

      Creates a new CaseInstance in the exactly specified version identify by the provided process definition id. The new case instance will be in the ACTIVE state.

      A business key can be provided to associate the case instance with a certain identifier that has a clear business meaning. This business key can then be used to easily look up that case instance, see CaseInstanceQuery.caseInstanceBusinessKey(String). Providing such a business key is definitely a best practice.

      Note that a business key MUST be unique for the given case definition WHEN you have added a database constraint for it. In this case, only case instance from different case definition are allowed to have the same business key and the combination of caseDefinitionKey-businessKey must be unique.

      Parameters:
      caseDefinitionId - the id of the case definition to instantiate
      businessKey - a key that uniquely identifies the case instance in the context of the given case definition.
      Throws:
      NotValidException - when the given case definition id is null.
      NotFoundException - when no case definition is deployed with the given id.
      ProcessEngineException - when an internal exception happens during the execution of the command
    • createCaseInstanceById

      CaseInstance createCaseInstanceById(String caseDefinitionId, Map<String,Object> variables)

      Creates a new CaseInstance in the exactly specified version identify by the provided process definition id. The new case instance will be in the ACTIVE state.

      Parameters:
      caseDefinitionId - the id of the case definition to instantiate
      variables - variables to be set on the new case instance.
      Throws:
      NotValidException - when the given case definition id is null.
      NotFoundException - when no case definition is deployed with the given id.
      ProcessEngineException - when an internal exception happens during the execution of the command
    • createCaseInstanceById

      CaseInstance createCaseInstanceById(String caseDefinitionId, String businessKey, Map<String,Object> variables)

      Creates a new CaseInstance in the exactly specified version identify by the provided process definition id. The new case instance will be in the ACTIVE state.

      A business key can be provided to associate the case instance with a certain identifier that has a clear business meaning. This business key can then be used to easily look up that case instance, see CaseInstanceQuery.caseInstanceBusinessKey(String). Providing such a business key is definitely a best practice.

      Note that a business key MUST be unique for the given case definition WHEN you have added a database constraint for it. In this case, only case instance from different case definition are allowed to have the same business key and the combination of caseDefinitionKey-businessKey must be unique.

      Parameters:
      caseDefinitionId - the id of the case definition to instantiate
      businessKey - a key that uniquely identifies the case instance in the context of the given case definition.
      variables - variables to be set on the new case instance.
      Throws:
      NotValidException - when the given case definition id is null.
      NotFoundException - when no case definition is deployed with the given id.
      ProcessEngineException - when an internal exception happens during the execution of the command
    • manuallyStartCaseExecution

      void manuallyStartCaseExecution(String caseExecutionId)

      Starts the case execution identified by the given id manually. Performs the transition from state ENABLED to state ACTIVE.

      According to CMMN 1.0 specification, the state ACTIVE means that the Stage or Task related to the case execution does the following:

      Parameters:
      caseExecutionId - the id of the case execution to manually start
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done or when the case execution is a case instance
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • manuallyStartCaseExecution

      void manuallyStartCaseExecution(String caseExecutionId, Map<String,Object> variables)

      Starts the case execution identified by the given id manually. Performs a transition from state ENABLED to state ACTIVE.

      According to CMMN 1.0 specification, the state ACTIVE means that the Stage or Task related to the case execution does the following:

      Parameters:
      caseExecutionId - the id of the case execution to manually start
      variables - variables to be set on the case execution
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done or when the case execution is a case instance
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • disableCaseExecution

      void disableCaseExecution(String caseExecutionId)

      Disables the case execution identified by the given id. Performs a transition from state ENABLED to state DISABLED.

      According to CMMN 1.0 specification, the state DISABLED means that the Stage or Task related to the case execution should not be executed in this case instance.

      If the given case execution has a parent case execution, that parent case execution will be notified that the given case execution has been disabled. This can lead to a completion of the parent case execution if the completion criteria are fulfilled.

      Parameters:
      caseExecutionId - the id of the case execution to disable
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done or when the case execution is a case instance
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • disableCaseExecution

      void disableCaseExecution(String caseExecutionId, Map<String,Object> variables)

      Disables the case execution identified by the given id. Performs a transition from state ENABLED to state DISABLED.

      According to CMMN 1.0 specification, the state DISABLED means that the Stage or Task related to the case execution should not be executed in this case instance.

      If the given case execution has a parent case execution, that parent case execution will be notified that the given case execution has been disabled. This can lead to a completion of the parent case execution if the completion criteria are fulfilled.

      Parameters:
      caseExecutionId - the id of the case execution to disable
      variables - variables to be set on the case execution
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done or when the case execution is a case instance
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • reenableCaseExecution

      void reenableCaseExecution(String caseExecutionId)

      Re-enables the case execution identified by the given id. Performs a transition from state DISABLED to state ENABLED.

      According to CMMN 1.0 specification, the state DISABLED means that the Stage or Task related to the case execution pends for a decision to become ACTIVE or DISABLED.

      Parameters:
      caseExecutionId - the id of the case execution to re-enable
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done or when the case execution is a case instance
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • reenableCaseExecution

      void reenableCaseExecution(String caseExecutionId, Map<String,Object> variables)

      Re-enables the case execution identified by the given id. Performs a transition from state DISABLED to state ENABLED.

      According to CMMN 1.0 specification, the state DISABLED means that the Stage or Task related to the case execution pends for a decision to become ACTIVE or DISABLED.

      Parameters:
      caseExecutionId - the id of the case execution to re-enable
      variables - variables to be set on the case execution
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done or when the case execution is a case instance
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • completeCaseExecution

      void completeCaseExecution(String caseExecutionId)

      Completes the case execution identified by the given id. Performs a transition from state ACTIVE to state COMPLETED.

      It is only possible to complete a case execution which is associated with a Stage or Task.

      In case of a Stage, the completion can only be performed when the following criteria are fulfilled:

      • there are no children in the state ACTIVE

      For a Task instance, this means its purpose has been accomplished:

      • HumanTask has been completed by human.

      If the given case execution has a parent case execution, that parent case execution will be notified that the given case execution has been completed. This can lead to a completion of the parent case execution if the completion criteria are fulfilled.

      Parameters:
      caseExecutionId - the id of the case execution to complete
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • completeCaseExecution

      void completeCaseExecution(String caseExecutionId, Map<String,Object> variables)

      Completes the case execution identified by the given id. Performs a transition from state ACTIVE to state COMPLETED.

      It is only possible to complete a case execution which is associated with a Stage or Task.

      In case of a Stage, the completion can only be performed when the following criteria are fulfilled:

      • there are no children in the state ACTIVE

      For a Task instance, this means its purpose has been accomplished:

      • HumanTask has been completed by human.

      If the given case execution has a parent case execution, that parent case execution will be notified that the given case execution has been completed. This can lead to a completion of the parent case execution if the completion criteria are fulfilled.

      Parameters:
      caseExecutionId - the id of the case execution to complete
      variables - variables to be set on the case execution
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • closeCaseInstance

      void closeCaseInstance(String caseExecutionId)

      Closes the case instance the execution identified by the given id belongs to. Once closed, no further work or modifications are allowed for the case instance. Performs a transition from state COMPLETED to state CLOSED.

      Parameters:
      caseExecutionId - the id of the case execution to close the case instance for
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • terminateCaseExecution

      void terminateCaseExecution(String caseExecutionId)

      Terminates the case execution identified by the given id. Performs the transition from ACTIVE to state TERMINATED if the case execution belongs to a case model or a task or a stage. Performs the transition from AVAILABLE to state TERMINATED if the case execution belongs to a milestone.

      Parameters:
      caseExecutionId - the id of the case execution to be terminated
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • terminateCaseExecution

      void terminateCaseExecution(String caseExecutionId, Map<String,Object> variables)

      Terminates the case execution identified by the given id. Performs the transition from ACTIVE to state TERMINATED if the case execution belongs to either a case model or a task or a stage. Performs the transition from AVAILABLE to state TERMINATED if the case execution belongs to a milestone.

      Parameters:
      caseExecutionId - the id of the case execution to terminate
      variables - variables to be set on the case execution
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      NotAllowedException - when the transition is not allowed to be done
      ProcessEngineException - when an internal exception happens during the execution of the command.
    • withCaseDefinitionByKey

      CaseInstanceBuilder withCaseDefinitionByKey(String caseDefinitionKey)

      Define a CaseInstance using a fluent builder.

      Starts a new case instance with the latest version of the corresponding case definition.

      Parameters:
      caseDefinitionKey - the key of a case definition to create a new case instance of, cannot be null
      Returns:
      a fluent builder for defining a new case instance
    • withCaseDefinition

      CaseInstanceBuilder withCaseDefinition(String caseDefinitionId)

      Define a CaseInstance using a fluent builder.

      Starts a new case instance with the case definition version corresponding to the given id.

      Parameters:
      caseDefinitionId - the id of a case definition to create a new case instance, cannot be null
      Returns:
      a fluent builder for defining a new case instance
    • withCaseExecution

      CaseExecutionCommandBuilder withCaseExecution(String caseExecutionId)

      Define a command to be executed for a CaseExecution using a fluent builder.

      Parameters:
      caseExecutionId - the id of a case execution to define a command for it
      Returns:
      a fluent builder for defining a command for a case execution
    • createCaseInstanceQuery

      CaseInstanceQuery createCaseInstanceQuery()

      Creates a new CaseInstanceQuery instance, that can be used to query case instances.

    • createCaseExecutionQuery

      CaseExecutionQuery createCaseExecutionQuery()

      Creates a new CaseExecutionQuery instance, that can be used to query the executions and case instances.

    • getVariables

      Map<String,Object> getVariables(String caseExecutionId)

      All variables visible from the given execution scope (including parent scopes).

      If you have many local variables and you only need a few, consider using getVariables(String, Collection) for better performance.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      Returns:
      the variables or an empty map if no such variables are found
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariablesTyped

      VariableMap getVariablesTyped(String caseExecutionId)

      All variables visible from the given execution scope (including parent scopes).

      If you have many local variables and you only need a few, consider using getVariables(String, Collection) for better performance.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      Returns:
      the variables or an empty map if no such variables are found
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariablesTyped

      VariableMap getVariablesTyped(String caseExecutionId, boolean deserializeValues)

      All variables visible from the given execution scope (including parent scopes).

      If you have many local variables and you only need a few, consider using getVariables(String, Collection) for better performance.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      deserializeValues - if false, the process engine will not attempt to deserialize SerializableValues.
      Returns:
      the variables or an empty map if no such variables are found
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariablesLocal

      Map<String,Object> getVariablesLocal(String caseExecutionId)

      All variable values that are defined in the case execution scope, without taking outer scopes into account.

      If you have many local variables and you only need a few, consider using getVariablesLocal(String, Collection) for better performance.

      Parameters:
      caseExecutionId - the id of a case execution, cannot be null
      Returns:
      the variables or an empty map if no such variables are found
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariablesLocalTyped

      VariableMap getVariablesLocalTyped(String caseExecutionId)

      All variable values that are defined in the case execution scope, without taking outer scopes into account.

      If you have many local variables and you only need a few, consider using getVariablesLocal(String, Collection) for better performance.

      Parameters:
      caseExecutionId - the id of a case execution, cannot be null
      Returns:
      the variables or an empty map if no such variables are found
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariablesLocalTyped

      VariableMap getVariablesLocalTyped(String caseExecutionId, boolean deserializeValues)

      All variable values that are defined in the case execution scope, without taking outer scopes into account.

      If you have many local variables and you only need a few, consider using getVariablesLocal(String, Collection) for better performance.

      Parameters:
      caseExecutionId - the id of a case execution, cannot be null
      deserializeValues - if false, the process engine will not attempt to deserialize SerializableValues.
      Returns:
      the variables or an empty map if no such variables are found
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariables

      Map<String,Object> getVariables(String caseExecutionId, Collection<String> variableNames)

      The variable values for all given variableNames, takes all variables into account which are visible from the given case execution scope (including parent scopes).

      Parameters:
      caseExecutionId - the id of a case instance or case 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:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariablesTyped

      VariableMap getVariablesTyped(String caseExecutionId, Collection<String> variableNames, boolean deserializeValues)

      The variable values for all given variableNames, takes all variables into account which are visible from the given case execution scope (including parent scopes).

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      variableNames - the collection of variable names that should be retrieved
      deserializeValues - if false, SerializableValues will not be deserialized
      Returns:
      the variables or an empty map if no such variables are found
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariablesLocal

      Map<String,Object> getVariablesLocal(String caseExecutionId, Collection<String> variableNames)

      The variable values for the given variableNames only taking the given case execution scope into account, not looking in outer scopes.

      Parameters:
      caseExecutionId - the id of a case 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:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariablesLocalTyped

      VariableMap getVariablesLocalTyped(String caseExecutionId, Collection<String> variableNames, boolean deserializeValues)

      The variable values for the given variableNames only taking the given case execution scope into account, not looking in outer scopes.

      Parameters:
      caseExecutionId - the id of a case execution, cannot be null
      variableNames - the collection of variable names that should be retrieved
      deserializeValues - if false, the process engine will not attempt to deserialize SerializableValues.
      Returns:
      the variables or an empty map if no such variables are found
      Throws:
      NotValidException - when the given case execution id is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariable

      Object getVariable(String caseExecutionId, String variableName)

      Searching for the variable is done in all scopes that are visible to the given case execution (including parent scopes).

      Returns null when no variable value is found with the given name or when the value is set to null.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      variableName - the name of a variable, cannot be null
      Returns:
      the variable value or null if the variable is undefined or the value of the variable is null
      Throws:
      NotValidException - when the given case execution id or variable name is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariableTyped

      <T extends TypedValue> T getVariableTyped(String caseExecutionId, String variableName)

      Searching for the variable is done in all scopes that are visible to the given case execution (including parent scopes).

      Returns null when no variable value is found with the given name or when the value is set to null.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      variableName - the name of a variable, cannot be null
      Returns:
      the variable value or null if the variable is undefined or the value of the variable is null
      Throws:
      NotValidException - when the given case execution id or variable name is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariableTyped

      <T extends TypedValue> T getVariableTyped(String caseExecutionId, String variableName, boolean deserializeValue)

      Searching for the variable is done in all scopes that are visible to the given case execution (including parent scopes).

      Returns null when no variable value is found with the given name or when the value is set to null.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      variableName - the name of a variable, cannot be null
      deserializeValue - if false, SerializableValues will not be deserialized
      Returns:
      the variable value or null if the variable is undefined or the value of the variable is null
      Throws:
      NotValidException - when the given case execution id or variable name is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariableLocal

      Object getVariableLocal(String caseExecutionId, String variableName)

      The variable value for an case execution. Returns the value when the variable is set for the case execution (and not searching parent scopes).

      Returns null when no variable value is found with the given name or when the value is set to null.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      variableName - the name of a variable, cannot be null
      Returns:
      the variable value or null if the variable is undefined or the value of the variable is null
      Throws:
      NotValidException - when the given case execution id or variable name is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariableLocalTyped

      <T extends TypedValue> T getVariableLocalTyped(String caseExecutionId, String variableName)

      The variable value for an case execution. Returns the value when the variable is set for the case execution (and not searching parent scopes).

      Returns null when no variable value is found with the given name or when the value is set to null.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      variableName - the name of a variable, cannot be null
      Returns:
      the variable value or null if the variable is undefined or the value of the variable is null
      Throws:
      NotValidException - when the given case execution id or variable name is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • getVariableLocalTyped

      <T extends TypedValue> T getVariableLocalTyped(String caseExecutionId, String variableName, boolean deserializeValue)

      The variable value for an case execution. Returns the value when the variable is set for the case execution (and not searching parent scopes).

      Returns null when no variable value is found with the given name or when the value is set to null.

      Parameters:
      caseExecutionId - the id of a case instance or case execution, cannot be null
      variableName - the name of a variable, cannot be null
      deserializeValue - if false, SerializableValues will not be deserialized
      Returns:
      the variable value or null if the variable is undefined or the value of the variable is null
      Throws:
      NotValidException - when the given case execution id or variable name is null
      NotFoundException - when no case execution is found for the given case execution id
      ProcessEngineException - when an internal exception happens during the execution of the command
    • setVariables

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

      Pass a map of variables to the case execution. If the variables do not already exist, they are created in the case instance (which is the root execution). Otherwise existing variables are updated.

      Parameters:
      caseExecutionId - the case execution to set the variables for
      variables - the map of variables
    • setVariablesLocal

      void setVariablesLocal(String caseExecutionId, Map<String,Object> variables)

      Pass a map of variables to the case execution (not considering parent scopes).

      Parameters:
      caseExecutionId - the case execution to set the variables for
      variables - the map of variables
    • setVariable

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

      Pass a variable to the case execution. If the variable does not already exist, it is created in the case instance (which is the root execution). Otherwise, the existing variable is updated.

      Parameters:
      caseExecutionId - the case execution to set the variable for
      variableName - the name of the variable to set
      variableValue - the value of the variable to set
      Throws:
      NotValidException - when the given variable name is null
    • setVariableLocal

      void setVariableLocal(String caseExecutionId, String variableName, Object variableValue)

      Pass a local variable to the case execution (not considering parent scopes).

      Parameters:
      caseExecutionId - the case execution to set the variable for
      variableName - the name of the variable to set
      variableValue - the value of the variable to set
      Throws:
      NotValidException - when the given variable name is null
    • removeVariables

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

      Pass a collection of names identifying variables to be removed from a case execution.

      Parameters:
      caseExecutionId - the case execution to remove the variables from
      variableNames - a collection of names of variables to remove
    • removeVariablesLocal

      void removeVariablesLocal(String caseExecutionId, Collection<String> variableNames)

      Pass a collection of names identifying local variables to be removed from a case execution (not considering parent scopes).

      Parameters:
      caseExecutionId - the case execution to remove the variables from
      variableNames - a collection of names of variables to remove
    • removeVariable

      void removeVariable(String caseExecutionId, String variableName)

      Pass a name of a variable to be removed from a case execution.

      Parameters:
      caseExecutionId - the case execution to remove the variable from
      variableName - the name of the variable to remove
      Throws:
      NotValidException - when the given variable name is null
    • removeVariableLocal

      void removeVariableLocal(String caseExecutionId, String variableName)

      Pass a variable name of a local variable to be removed from a case execution (not considering parent scopes).

      Parameters:
      caseExecutionId - the case execution to remove the variable from
      variableName - the name of a variable to remove
      Throws:
      NotValidException - when the given variable name is null