Interface CaseInstanceBuilder

  • All Known Implementing Classes:
    CaseInstanceBuilderImpl

    public interface CaseInstanceBuilder

    A fluent builder to create a new case instance.

    Author:
    Roman Smirnov
    • Method Detail

      • businessKey

        CaseInstanceBuilder businessKey​(String businessKey)

        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:
        businessKey - a key that uniquely identifies the case instance in the context of the given case definition.
        Returns:
        the builder
      • caseDefinitionTenantId

        CaseInstanceBuilder caseDefinitionTenantId​(String tenantId)
        Specify the id of the tenant the case definition belongs to. Can only be used when the definition is referenced by key and not by id.
      • caseDefinitionWithoutTenantId

        CaseInstanceBuilder caseDefinitionWithoutTenantId()
        Specify that the case definition belongs to no tenant. Can only be used when the definition is referenced by key and not by id.
      • setVariable

        CaseInstanceBuilder setVariable​(String variableName,
                                        Object variableValue)

        Pass a variable to the case instance.

        Invoking this method multiple times allows passing multiple variables.

        Parameters:
        variableName - the name of the variable to set
        variableValue - the value of the variable to set
        Returns:
        the builder
        Throws:
        NotValidException - when the given variable name is null
      • setVariables

        CaseInstanceBuilder setVariables​(Map<String,​Object> variables)

        Pass a map of variables to the case instance.

        Invoking this method multiple times allows passing multiple variables.

        Parameters:
        variables - the map of variables
        Returns:
        the builder