Class TaskQueryImpl

    • Field Detail

      • taskId

        protected java.lang.String taskId
      • taskIdIn

        protected java.lang.String[] taskIdIn
      • name

        protected java.lang.String name
      • nameNotEqual

        protected java.lang.String nameNotEqual
      • nameLike

        protected java.lang.String nameLike
      • nameNotLike

        protected java.lang.String nameNotLike
      • description

        protected java.lang.String description
      • descriptionLike

        protected java.lang.String descriptionLike
      • priority

        protected java.lang.Integer priority
      • minPriority

        protected java.lang.Integer minPriority
      • maxPriority

        protected java.lang.Integer maxPriority
      • assignee

        protected java.lang.String assignee
      • assigneeLike

        protected java.lang.String assigneeLike
      • assigneeIn

        protected java.util.Set<java.lang.String> assigneeIn
      • assigneeNotIn

        protected java.util.Set<java.lang.String> assigneeNotIn
      • involvedUser

        protected java.lang.String involvedUser
      • owner

        protected java.lang.String owner
      • unassigned

        protected java.lang.Boolean unassigned
      • assigned

        protected java.lang.Boolean assigned
      • noDelegationState

        protected boolean noDelegationState
      • candidateUser

        protected java.lang.String candidateUser
      • candidateGroup

        protected java.lang.String candidateGroup
      • candidateGroups

        protected java.util.List<java.lang.String> candidateGroups
      • withCandidateGroups

        protected java.lang.Boolean withCandidateGroups
      • withoutCandidateGroups

        protected java.lang.Boolean withoutCandidateGroups
      • withCandidateUsers

        protected java.lang.Boolean withCandidateUsers
      • withoutCandidateUsers

        protected java.lang.Boolean withoutCandidateUsers
      • includeAssignedTasks

        protected java.lang.Boolean includeAssignedTasks
      • processInstanceId

        protected java.lang.String processInstanceId
      • processInstanceIdIn

        protected java.lang.String[] processInstanceIdIn
      • executionId

        protected java.lang.String executionId
      • activityInstanceIdIn

        protected java.lang.String[] activityInstanceIdIn
      • createTime

        protected java.util.Date createTime
      • createTimeBefore

        protected java.util.Date createTimeBefore
      • createTimeAfter

        protected java.util.Date createTimeAfter
      • key

        protected java.lang.String key
      • keyLike

        protected java.lang.String keyLike
      • taskDefinitionKeys

        protected java.lang.String[] taskDefinitionKeys
      • processDefinitionKey

        protected java.lang.String processDefinitionKey
      • processDefinitionKeys

        protected java.lang.String[] processDefinitionKeys
      • processDefinitionId

        protected java.lang.String processDefinitionId
      • processDefinitionName

        protected java.lang.String processDefinitionName
      • processDefinitionNameLike

        protected java.lang.String processDefinitionNameLike
      • processInstanceBusinessKey

        protected java.lang.String processInstanceBusinessKey
      • processInstanceBusinessKeys

        protected java.lang.String[] processInstanceBusinessKeys
      • processInstanceBusinessKeyLike

        protected java.lang.String processInstanceBusinessKeyLike
      • dueDate

        protected java.util.Date dueDate
      • dueBefore

        protected java.util.Date dueBefore
      • dueAfter

        protected java.util.Date dueAfter
      • followUpDate

        protected java.util.Date followUpDate
      • followUpBefore

        protected java.util.Date followUpBefore
      • followUpNullAccepted

        protected boolean followUpNullAccepted
      • followUpAfter

        protected java.util.Date followUpAfter
      • excludeSubtasks

        protected boolean excludeSubtasks
      • initializeFormKeys

        protected boolean initializeFormKeys
      • taskNameCaseInsensitive

        protected boolean taskNameCaseInsensitive
      • variableNamesIgnoreCase

        protected java.lang.Boolean variableNamesIgnoreCase
      • variableValuesIgnoreCase

        protected java.lang.Boolean variableValuesIgnoreCase
      • parentTaskId

        protected java.lang.String parentTaskId
      • isWithoutTenantId

        protected boolean isWithoutTenantId
      • isWithoutDueDate

        protected boolean isWithoutDueDate
      • tenantIds

        protected java.lang.String[] tenantIds
      • caseDefinitionKey

        protected java.lang.String caseDefinitionKey
      • caseDefinitionId

        protected java.lang.String caseDefinitionId
      • caseDefinitionName

        protected java.lang.String caseDefinitionName
      • caseDefinitionNameLike

        protected java.lang.String caseDefinitionNameLike
      • caseInstanceId

        protected java.lang.String caseInstanceId
      • caseInstanceBusinessKey

        protected java.lang.String caseInstanceBusinessKey
      • caseInstanceBusinessKeyLike

        protected java.lang.String caseInstanceBusinessKeyLike
      • caseExecutionId

        protected java.lang.String caseExecutionId
      • cachedCandidateGroups

        protected java.util.List<java.lang.String> cachedCandidateGroups
      • cachedUserGroups

        protected java.util.Map<java.lang.String,​java.util.List<java.lang.String>> cachedUserGroups
      • isOrQueryActive

        protected boolean isOrQueryActive
    • Constructor Detail

      • TaskQueryImpl

        public TaskQueryImpl()
    • Method Detail

      • taskId

        public TaskQueryImpl taskId​(java.lang.String taskId)
        Description copied from interface: TaskQuery
        Only select tasks with the given task id (in practice, there will be maximum one of this kind)
        Specified by:
        taskId in interface TaskQuery
      • taskIdIn

        public TaskQueryImpl taskIdIn​(java.lang.String... taskIds)
        Description copied from interface: TaskQuery
        Only select tasks with the given task ids.
        Specified by:
        taskIdIn in interface TaskQuery
      • taskName

        public TaskQueryImpl taskName​(java.lang.String name)
        Description copied from interface: TaskQuery
        Only select tasks with the given name. The query will match the names of tasks in a case-insensitive way.
        Specified by:
        taskName in interface TaskQuery
      • taskNameLike

        public TaskQueryImpl taskNameLike​(java.lang.String nameLike)
        Description copied from interface: TaskQuery
        Only select tasks with a name matching the parameter. The syntax is that of SQL: for example usage: nameLike(%camunda%). The query will match the names of tasks in a case-insensitive way.
        Specified by:
        taskNameLike in interface TaskQuery
      • taskDescription

        public TaskQueryImpl taskDescription​(java.lang.String description)
        Description copied from interface: TaskQuery
        Only select tasks with the given description. The query will match the descriptions of tasks in a case-insensitive way.
        Specified by:
        taskDescription in interface TaskQuery
      • taskDescriptionLike

        public TaskQuery taskDescriptionLike​(java.lang.String descriptionLike)
        Description copied from interface: TaskQuery
        Only select tasks with a description matching the parameter . The syntax is that of SQL: for example usage: descriptionLike(%camunda%) The query will match the descriptions of tasks in a case-insensitive way.
        Specified by:
        taskDescriptionLike in interface TaskQuery
      • taskPriority

        public TaskQuery taskPriority​(java.lang.Integer priority)
        Description copied from interface: TaskQuery
        Only select tasks with the given priority.
        Specified by:
        taskPriority in interface TaskQuery
      • taskMinPriority

        public TaskQuery taskMinPriority​(java.lang.Integer minPriority)
        Description copied from interface: TaskQuery
        Only select tasks with the given priority or higher.
        Specified by:
        taskMinPriority in interface TaskQuery
      • taskMaxPriority

        public TaskQuery taskMaxPriority​(java.lang.Integer maxPriority)
        Description copied from interface: TaskQuery
        Only select tasks with the given priority or lower.
        Specified by:
        taskMaxPriority in interface TaskQuery
      • taskAssignee

        public TaskQueryImpl taskAssignee​(java.lang.String assignee)
        Description copied from interface: TaskQuery
        Only select tasks which are assigned to the given user.
        Specified by:
        taskAssignee in interface TaskQuery
      • taskAssigneeExpression

        public TaskQuery taskAssigneeExpression​(java.lang.String assigneeExpression)
        Description copied from interface: TaskQuery

        Only select tasks which are assigned to the user described by the given expression.

        Specified by:
        taskAssigneeExpression in interface TaskQuery
      • taskAssigneeLike

        public TaskQuery taskAssigneeLike​(java.lang.String assignee)
        Description copied from interface: TaskQuery
        Only select tasks which are matching the given user. The syntax is that of SQL: for example usage: nameLike(%camunda%)
        Specified by:
        taskAssigneeLike in interface TaskQuery
      • taskAssigneeLikeExpression

        public TaskQuery taskAssigneeLikeExpression​(java.lang.String assigneeLikeExpression)
        Description copied from interface: TaskQuery

        Only select tasks which are assigned to the user described by the given expression. The syntax is that of SQL: for example usage: taskAssigneeLikeExpression("${'%test%'}")

        Specified by:
        taskAssigneeLikeExpression in interface TaskQuery
      • taskAssigneeIn

        public TaskQuery taskAssigneeIn​(java.lang.String... assignees)
        Description copied from interface: TaskQuery
        Only select tasks which are assigned to one of the given users.
        Specified by:
        taskAssigneeIn in interface TaskQuery
      • taskAssigneeNotIn

        public TaskQuery taskAssigneeNotIn​(java.lang.String... assignees)
        Description copied from interface: TaskQuery
        Only select tasks which are not assigned to any of the given users.
        Specified by:
        taskAssigneeNotIn in interface TaskQuery
      • taskOwner

        public TaskQueryImpl taskOwner​(java.lang.String owner)
        Description copied from interface: TaskQuery
        Only select tasks for which the given user is the owner.
        Specified by:
        taskOwner in interface TaskQuery
      • taskOwnerExpression

        public TaskQuery taskOwnerExpression​(java.lang.String ownerExpression)
        Description copied from interface: TaskQuery

        Only select tasks for which the described user by the given expression is the owner.

        Specified by:
        taskOwnerExpression in interface TaskQuery
      • taskCandidateUser

        public TaskQueryImpl taskCandidateUser​(java.lang.String candidateUser)
        Description copied from interface: TaskQuery
        Only select tasks for which the given user or one of his groups is a candidate.

        Per default it only selects tasks which are not already assigned to a user. To also include assigned task in the result specify TaskQuery.includeAssignedTasks() in your query.

        Specified by:
        taskCandidateUser in interface TaskQuery
      • taskCandidateUserExpression

        public TaskQuery taskCandidateUserExpression​(java.lang.String candidateUserExpression)
        Description copied from interface: TaskQuery
        Only select tasks for which the described user by the given expression is a candidate.

        Per default it only selects tasks which are not already assigned to a user. To also include assigned task in the result specify TaskQuery.includeAssignedTasks() in your query.

        Specified by:
        taskCandidateUserExpression in interface TaskQuery
      • taskInvolvedUserExpression

        public TaskQuery taskInvolvedUserExpression​(java.lang.String involvedUserExpression)
        Description copied from interface: TaskQuery

        Only select tasks for which there exist an IdentityLink with the described user by the given expression

        Specified by:
        taskInvolvedUserExpression in interface TaskQuery
      • taskCandidateGroup

        public TaskQueryImpl taskCandidateGroup​(java.lang.String candidateGroup)
        Description copied from interface: TaskQuery
        Only select tasks for which users in the given group are candidates.

        Per default it only selects tasks which are not already assigned to a user. To also include assigned task in the result specify TaskQuery.includeAssignedTasks() in your query.

        Specified by:
        taskCandidateGroup in interface TaskQuery
      • taskCandidateGroupExpression

        public TaskQuery taskCandidateGroupExpression​(java.lang.String candidateGroupExpression)
        Description copied from interface: TaskQuery
        Only select tasks for which users in the described group by the given expression are candidates.

        Per default it only selects tasks which are not already assigned to a user. To also include assigned task in the result specify TaskQuery.includeAssignedTasks() in your query.

        Specified by:
        taskCandidateGroupExpression in interface TaskQuery
      • taskCandidateGroupIn

        public TaskQuery taskCandidateGroupIn​(java.util.List<java.lang.String> candidateGroups)
        Description copied from interface: TaskQuery
        Only select tasks for which the 'candidateGroup' is one of the given groups.

        Per default it only selects tasks which are not already assigned to a user. To also include assigned task in the result specify TaskQuery.includeAssignedTasks() in your query.

        Specified by:
        taskCandidateGroupIn in interface TaskQuery
      • taskCandidateGroupInExpression

        public TaskQuery taskCandidateGroupInExpression​(java.lang.String candidateGroupsExpression)
        Description copied from interface: TaskQuery
        Only select tasks for which the 'candidateGroup' is one of the described groups of the given expression.

        Per default it only selects tasks which are not already assigned to a user. To also include assigned task in the result specify TaskQuery.includeAssignedTasks() in your query.

        Specified by:
        taskCandidateGroupInExpression in interface TaskQuery
      • includeAssignedTasksInternal

        public TaskQuery includeAssignedTasksInternal()
      • processInstanceId

        public TaskQueryImpl processInstanceId​(java.lang.String processInstanceId)
        Description copied from interface: TaskQuery
        Only select tasks for the given process instance id.
        Specified by:
        processInstanceId in interface TaskQuery
      • processInstanceIdIn

        public TaskQuery processInstanceIdIn​(java.lang.String... processInstanceIds)
        Description copied from interface: TaskQuery
        Only select tasks for the given process instance ids.
        Specified by:
        processInstanceIdIn in interface TaskQuery
      • processInstanceBusinessKey

        public TaskQueryImpl processInstanceBusinessKey​(java.lang.String processInstanceBusinessKey)
        Description copied from interface: TaskQuery
        Only select tasks for the given process instance business key
        Specified by:
        processInstanceBusinessKey in interface TaskQuery
      • processInstanceBusinessKeyExpression

        public TaskQuery processInstanceBusinessKeyExpression​(java.lang.String processInstanceBusinessKeyExpression)
        Description copied from interface: TaskQuery
        Only select tasks for the given process instance business key described by the given expression
        Specified by:
        processInstanceBusinessKeyExpression in interface TaskQuery
      • processInstanceBusinessKeyIn

        public TaskQuery processInstanceBusinessKeyIn​(java.lang.String... processInstanceBusinessKeys)
        Description copied from interface: TaskQuery
        Only select tasks for any of the given the given process instance business keys.
        Specified by:
        processInstanceBusinessKeyIn in interface TaskQuery
      • processInstanceBusinessKeyLike

        public TaskQuery processInstanceBusinessKeyLike​(java.lang.String processInstanceBusinessKey)
        Description copied from interface: TaskQuery
        Only select tasks matching the given process instance business key. The syntax is that of SQL: for example usage: nameLike(%camunda%)
        Specified by:
        processInstanceBusinessKeyLike in interface TaskQuery
      • processInstanceBusinessKeyLikeExpression

        public TaskQuery processInstanceBusinessKeyLikeExpression​(java.lang.String processInstanceBusinessKeyLikeExpression)
        Description copied from interface: TaskQuery
        Only select tasks matching the given process instance business key described by the given expression. The syntax is that of SQL: for example usage: processInstanceBusinessKeyLikeExpression("${ '%camunda%' }")
        Specified by:
        processInstanceBusinessKeyLikeExpression in interface TaskQuery
      • executionId

        public TaskQueryImpl executionId​(java.lang.String executionId)
        Description copied from interface: TaskQuery
        Only select tasks for the given execution.
        Specified by:
        executionId in interface TaskQuery
      • activityInstanceIdIn

        public TaskQuery activityInstanceIdIn​(java.lang.String... activityInstanceIds)
        Description copied from interface: TaskQuery
        Only select task which have one of the activity instance ids.
        Specified by:
        activityInstanceIdIn in interface TaskQuery
      • tenantIdIn

        public TaskQuery tenantIdIn​(java.lang.String... tenantIds)
        Description copied from interface: TaskQuery
        Only select tasks with one of the given tenant ids.
        Specified by:
        tenantIdIn in interface TaskQuery
      • taskCreatedOn

        public TaskQueryImpl taskCreatedOn​(java.util.Date createTime)
        Description copied from interface: TaskQuery
        Only select tasks that are created on the given date.
        Specified by:
        taskCreatedOn in interface TaskQuery
      • taskCreatedOnExpression

        public TaskQuery taskCreatedOnExpression​(java.lang.String createTimeExpression)
        Description copied from interface: TaskQuery
        Only select tasks that are created on the described date by the given expression.
        Specified by:
        taskCreatedOnExpression in interface TaskQuery
      • taskCreatedBefore

        public TaskQuery taskCreatedBefore​(java.util.Date before)
        Description copied from interface: TaskQuery
        Only select tasks that are created before the given date.
        Specified by:
        taskCreatedBefore in interface TaskQuery
      • taskCreatedBeforeExpression

        public TaskQuery taskCreatedBeforeExpression​(java.lang.String beforeExpression)
        Description copied from interface: TaskQuery
        Only select tasks that are created before the described date by the given expression.
        Specified by:
        taskCreatedBeforeExpression in interface TaskQuery
      • taskCreatedAfter

        public TaskQuery taskCreatedAfter​(java.util.Date after)
        Description copied from interface: TaskQuery
        Only select tasks that are created after the given date.
        Specified by:
        taskCreatedAfter in interface TaskQuery
      • taskCreatedAfterExpression

        public TaskQuery taskCreatedAfterExpression​(java.lang.String afterExpression)
        Description copied from interface: TaskQuery
        Only select tasks that are created after the described date by the given expression.
        Specified by:
        taskCreatedAfterExpression in interface TaskQuery
      • taskDefinitionKey

        public TaskQuery taskDefinitionKey​(java.lang.String key)
        Description copied from interface: TaskQuery
        Only select tasks with the given taskDefinitionKey. The task definition key is the id of the userTask: <userTask id="xxx" .../>
        Specified by:
        taskDefinitionKey in interface TaskQuery
      • taskDefinitionKeyLike

        public TaskQuery taskDefinitionKeyLike​(java.lang.String keyLike)
        Description copied from interface: TaskQuery
        Only select tasks with a taskDefinitionKey that match the given parameter. The syntax is that of SQL: for example usage: taskDefinitionKeyLike("%camunda%"). The task definition key is the id of the userTask: <userTask id="xxx" .../>
        Specified by:
        taskDefinitionKeyLike in interface TaskQuery
      • taskDefinitionKeyIn

        public TaskQuery taskDefinitionKeyIn​(java.lang.String... taskDefinitionKeys)
        Description copied from interface: TaskQuery
        Only select tasks which have one of the taskDefinitionKeys.
        Specified by:
        taskDefinitionKeyIn in interface TaskQuery
      • taskParentTaskId

        public TaskQuery taskParentTaskId​(java.lang.String taskParentTaskId)
        Description copied from interface: TaskQuery
        Select the tasks which are sub tasks of the given parent task.
        Specified by:
        taskParentTaskId in interface TaskQuery
      • caseInstanceId

        public TaskQuery caseInstanceId​(java.lang.String caseInstanceId)
        Description copied from interface: TaskQuery
        Only select tasks for the given case instance id.
        Specified by:
        caseInstanceId in interface TaskQuery
      • caseInstanceBusinessKey

        public TaskQuery caseInstanceBusinessKey​(java.lang.String caseInstanceBusinessKey)
        Description copied from interface: TaskQuery
        Only select tasks for the given case instance business key
        Specified by:
        caseInstanceBusinessKey in interface TaskQuery
      • caseInstanceBusinessKeyLike

        public TaskQuery caseInstanceBusinessKeyLike​(java.lang.String caseInstanceBusinessKeyLike)
        Description copied from interface: TaskQuery
        Only select tasks matching the given case instance business key. The syntax is that of SQL: for example usage: nameLike(%aBusinessKey%)
        Specified by:
        caseInstanceBusinessKeyLike in interface TaskQuery
      • caseExecutionId

        public TaskQuery caseExecutionId​(java.lang.String caseExecutionId)
        Description copied from interface: TaskQuery
        Only select tasks for the given case execution.
        Specified by:
        caseExecutionId in interface TaskQuery
      • caseDefinitionId

        public TaskQuery caseDefinitionId​(java.lang.String caseDefinitionId)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance which has the given case definition id.
        Specified by:
        caseDefinitionId in interface TaskQuery
      • caseDefinitionKey

        public TaskQuery caseDefinitionKey​(java.lang.String caseDefinitionKey)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance which has the given case definition key.
        Specified by:
        caseDefinitionKey in interface TaskQuery
      • caseDefinitionName

        public TaskQuery caseDefinitionName​(java.lang.String caseDefinitionName)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance which has the given case definition name.
        Specified by:
        caseDefinitionName in interface TaskQuery
      • caseDefinitionNameLike

        public TaskQuery caseDefinitionNameLike​(java.lang.String caseDefinitionNameLike)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance which case definition name is like the given parameter. The syntax is that of SQL: for example usage: nameLike(%processDefinitionName%)
        Specified by:
        caseDefinitionNameLike in interface TaskQuery
      • taskVariableValueEquals

        public TaskQuery taskVariableValueEquals​(java.lang.String variableName,
                                                 java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have a local task variable with the given name set to the given value.
        Specified by:
        taskVariableValueEquals in interface TaskQuery
      • taskVariableValueNotEquals

        public TaskQuery taskVariableValueNotEquals​(java.lang.String variableName,
                                                    java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have a local task variable with the given name, but with a different value than the passed value. Byte-arrays and Serializable objects (which are not primitive type wrappers) are not supported.
        Specified by:
        taskVariableValueNotEquals in interface TaskQuery
      • taskVariableValueLike

        public TaskQuery taskVariableValueLike​(java.lang.String variableName,
                                               java.lang.String variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have a local task variable with the given name matching the given value. The syntax is that of SQL: for example usage: valueLike(%value%)
        Specified by:
        taskVariableValueLike in interface TaskQuery
      • taskVariableValueGreaterThan

        public TaskQuery taskVariableValueGreaterThan​(java.lang.String variableName,
                                                      java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have a local task variable with the given name and a value greater than the given one.
        Specified by:
        taskVariableValueGreaterThan in interface TaskQuery
      • taskVariableValueGreaterThanOrEquals

        public TaskQuery taskVariableValueGreaterThanOrEquals​(java.lang.String variableName,
                                                              java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have a local task variable with the given name and a value greater than or equal to the given one.
        Specified by:
        taskVariableValueGreaterThanOrEquals in interface TaskQuery
      • taskVariableValueLessThan

        public TaskQuery taskVariableValueLessThan​(java.lang.String variableName,
                                                   java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have a local task variable with the given name and a value less than the given one.
        Specified by:
        taskVariableValueLessThan in interface TaskQuery
      • taskVariableValueLessThanOrEquals

        public TaskQuery taskVariableValueLessThanOrEquals​(java.lang.String variableName,
                                                           java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have a local task variable with the given name and a value less than or equal to the given one.
        Specified by:
        taskVariableValueLessThanOrEquals in interface TaskQuery
      • processVariableValueEquals

        public TaskQuery processVariableValueEquals​(java.lang.String variableName,
                                                    java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have are part of a process that have a variable with the given name set to the given value.
        Specified by:
        processVariableValueEquals in interface TaskQuery
      • processVariableValueNotEquals

        public TaskQuery processVariableValueNotEquals​(java.lang.String variableName,
                                                       java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which have a variable with the given name, but with a different value than the passed value. Byte-arrays and Serializable objects (which are not primitive type wrappers) are not supported.
        Specified by:
        processVariableValueNotEquals in interface TaskQuery
      • processVariableValueLike

        public TaskQuery processVariableValueLike​(java.lang.String variableName,
                                                  java.lang.String variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process that have a variable with the given name and matching the given value. The syntax is that of SQL: for example usage: valueLike(%value%)
        Specified by:
        processVariableValueLike in interface TaskQuery
      • processVariableValueNotLike

        public TaskQuery processVariableValueNotLike​(java.lang.String variableName,
                                                     java.lang.String variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process that have a variable with the given name and not matching the given value. The syntax is that of SQL: for example usage: valueNotLike(%value%)
        Specified by:
        processVariableValueNotLike in interface TaskQuery
      • processVariableValueGreaterThan

        public TaskQuery processVariableValueGreaterThan​(java.lang.String variableName,
                                                         java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process that have a variable with the given name and a value greater than the given one.
        Specified by:
        processVariableValueGreaterThan in interface TaskQuery
      • processVariableValueGreaterThanOrEquals

        public TaskQuery processVariableValueGreaterThanOrEquals​(java.lang.String variableName,
                                                                 java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process that have a variable with the given name and a value greater than or equal to the given one.
        Specified by:
        processVariableValueGreaterThanOrEquals in interface TaskQuery
      • processVariableValueLessThan

        public TaskQuery processVariableValueLessThan​(java.lang.String variableName,
                                                      java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process that have a variable with the given name and a value less than the given one.
        Specified by:
        processVariableValueLessThan in interface TaskQuery
      • processVariableValueLessThanOrEquals

        public TaskQuery processVariableValueLessThanOrEquals​(java.lang.String variableName,
                                                              java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process that have a variable with the given name and a value greater than or equal to the given one.
        Specified by:
        processVariableValueLessThanOrEquals in interface TaskQuery
      • caseInstanceVariableValueEquals

        public TaskQuery caseInstanceVariableValueEquals​(java.lang.String variableName,
                                                         java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance that have a variable with the given name set to the given value. The type of variable is determined based on the value, using types configured in ProcessEngineConfiguration#getVariableSerializers(). Byte-arrays and Serializable objects (which are not primitive type wrappers) are not supported.
        Specified by:
        caseInstanceVariableValueEquals in interface TaskQuery
      • caseInstanceVariableValueNotEquals

        public TaskQuery caseInstanceVariableValueNotEquals​(java.lang.String variableName,
                                                            java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance that have a variable with the given name, but with a different value than the passed value. The type of variable is determined based on the value, using types configured in ProcessEngineConfiguration#getVariableSerializers(). Byte-arrays and Serializable objects (which are not primitive type wrappers) are not supported.
        Specified by:
        caseInstanceVariableValueNotEquals in interface TaskQuery
      • caseInstanceVariableValueLike

        public TaskQuery caseInstanceVariableValueLike​(java.lang.String variableName,
                                                       java.lang.String variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance that have a variable value like the given value. This be used on string variables only.
        Specified by:
        caseInstanceVariableValueLike in interface TaskQuery
      • caseInstanceVariableValueNotLike

        public TaskQuery caseInstanceVariableValueNotLike​(java.lang.String variableName,
                                                          java.lang.String variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance that have a variable value not like the given value. This be used on string variables only.
        Specified by:
        caseInstanceVariableValueNotLike in interface TaskQuery
      • caseInstanceVariableValueGreaterThan

        public TaskQuery caseInstanceVariableValueGreaterThan​(java.lang.String variableName,
                                                              java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance that have a variable with the given name and a variable value greater than the passed value. Booleans, Byte-arrays and Serializable objects (which are not primitive type wrappers) are not supported.
        Specified by:
        caseInstanceVariableValueGreaterThan in interface TaskQuery
      • caseInstanceVariableValueGreaterThanOrEquals

        public TaskQuery caseInstanceVariableValueGreaterThanOrEquals​(java.lang.String variableName,
                                                                      java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance that have a variable value greater than or equal to the passed value. Booleans, Byte-arrays and Serializable objects (which are not primitive type wrappers) are not supported.
        Specified by:
        caseInstanceVariableValueGreaterThanOrEquals in interface TaskQuery
      • caseInstanceVariableValueLessThan

        public TaskQuery caseInstanceVariableValueLessThan​(java.lang.String variableName,
                                                           java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance that have a variable value less than the passed value. Booleans, Byte-arrays and Serializable objects (which are not primitive type wrappers) are not supported.
        Specified by:
        caseInstanceVariableValueLessThan in interface TaskQuery
      • caseInstanceVariableValueLessThanOrEquals

        public TaskQuery caseInstanceVariableValueLessThanOrEquals​(java.lang.String variableName,
                                                                   java.lang.Object variableValue)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a case instance that have a variable value less than or equal to the passed value. Booleans, Byte-arrays and Serializable objects (which are not primitive type wrappers) are not supported.
        Specified by:
        caseInstanceVariableValueLessThanOrEquals in interface TaskQuery
      • processDefinitionKey

        public TaskQuery processDefinitionKey​(java.lang.String processDefinitionKey)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process instance which has the given process definition key.
        Specified by:
        processDefinitionKey in interface TaskQuery
      • processDefinitionKeyIn

        public TaskQuery processDefinitionKeyIn​(java.lang.String... processDefinitionKeys)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process instance which has one of the given process definition keys.
        Specified by:
        processDefinitionKeyIn in interface TaskQuery
      • processDefinitionId

        public TaskQuery processDefinitionId​(java.lang.String processDefinitionId)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process instance which has the given process definition id.
        Specified by:
        processDefinitionId in interface TaskQuery
      • processDefinitionName

        public TaskQuery processDefinitionName​(java.lang.String processDefinitionName)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process instance which has the given process definition name.
        Specified by:
        processDefinitionName in interface TaskQuery
      • processDefinitionNameLike

        public TaskQuery processDefinitionNameLike​(java.lang.String processDefinitionName)
        Description copied from interface: TaskQuery
        Only select tasks which are part of a process instance which process definition name is like the given parameter. The syntax is that of SQL: for example usage: nameLike(%processDefinitionName%)
        Specified by:
        processDefinitionNameLike in interface TaskQuery
      • dueDate

        public TaskQuery dueDate​(java.util.Date dueDate)
        Description copied from interface: TaskQuery
        Only select tasks with the given due date.
        Specified by:
        dueDate in interface TaskQuery
      • dueDateExpression

        public TaskQuery dueDateExpression​(java.lang.String dueDateExpression)
        Description copied from interface: TaskQuery

        Only select tasks with the described due date by the given expression.

        Specified by:
        dueDateExpression in interface TaskQuery
      • dueBefore

        public TaskQuery dueBefore​(java.util.Date dueBefore)
        Description copied from interface: TaskQuery
        Only select tasks which have a due date before the given date.
        Specified by:
        dueBefore in interface TaskQuery
      • dueBeforeExpression

        public TaskQuery dueBeforeExpression​(java.lang.String dueDate)
        Description copied from interface: TaskQuery

        Only select tasks which have a due date before the described date by the given expression.

        Specified by:
        dueBeforeExpression in interface TaskQuery
      • dueAfter

        public TaskQuery dueAfter​(java.util.Date dueAfter)
        Description copied from interface: TaskQuery
        Only select tasks which have a due date after the given date.
        Specified by:
        dueAfter in interface TaskQuery
      • dueAfterExpression

        public TaskQuery dueAfterExpression​(java.lang.String dueDateExpression)
        Description copied from interface: TaskQuery

        Only select tasks which have a due date after the described date by the given expression.

        Specified by:
        dueAfterExpression in interface TaskQuery
      • followUpDate

        public TaskQuery followUpDate​(java.util.Date followUpDate)
        Description copied from interface: TaskQuery
        Only select tasks with the given follow-up date.
        Specified by:
        followUpDate in interface TaskQuery
      • followUpDateExpression

        public TaskQuery followUpDateExpression​(java.lang.String followUpDateExpression)
        Description copied from interface: TaskQuery

        Only select tasks with the described follow-up date by the given expression.

        Specified by:
        followUpDateExpression in interface TaskQuery
      • followUpBefore

        public TaskQuery followUpBefore​(java.util.Date followUpBefore)
        Description copied from interface: TaskQuery
        Only select tasks which have a follow-up date before the given date.
        Specified by:
        followUpBefore in interface TaskQuery
      • followUpBeforeExpression

        public TaskQuery followUpBeforeExpression​(java.lang.String followUpBeforeExpression)
        Description copied from interface: TaskQuery

        Only select tasks which have a follow-up date before the described date by the given expression.

        Specified by:
        followUpBeforeExpression in interface TaskQuery
      • followUpBeforeOrNotExistent

        public TaskQuery followUpBeforeOrNotExistent​(java.util.Date followUpDate)
        Description copied from interface: TaskQuery
        Only select tasks which have no follow-up date or a follow-up date before the given date. Serves the typical use case "give me all tasks without follow-up or follow-up date which is already due"
        Specified by:
        followUpBeforeOrNotExistent in interface TaskQuery
      • followUpBeforeOrNotExistentExpression

        public TaskQuery followUpBeforeOrNotExistentExpression​(java.lang.String followUpDateExpression)
        Description copied from interface: TaskQuery

        Only select tasks which have no follow-up date or a follow-up date before the described date by the given expression. Serves the typical use case "give me all tasks without follow-up or follow-up date which is already due"

        Specified by:
        followUpBeforeOrNotExistentExpression in interface TaskQuery
      • setFollowUpNullAccepted

        public void setFollowUpNullAccepted​(boolean followUpNullAccepted)
      • followUpAfter

        public TaskQuery followUpAfter​(java.util.Date followUpAfter)
        Description copied from interface: TaskQuery
        Only select tasks which have a follow-up date after the given date.
        Specified by:
        followUpAfter in interface TaskQuery
      • followUpAfterExpression

        public TaskQuery followUpAfterExpression​(java.lang.String followUpAfterExpression)
        Description copied from interface: TaskQuery

        Only select tasks which have a follow-up date after the described date by the given expression.

        Specified by:
        followUpAfterExpression in interface TaskQuery
      • excludeSubtasks

        public TaskQuery excludeSubtasks()
        Description copied from interface: TaskQuery
        Only select tasks that have no parent (i.e. do not select subtasks).
        Specified by:
        excludeSubtasks in interface TaskQuery
      • active

        public TaskQuery active()
        Description copied from interface: TaskQuery
        Only select tasks which are active (ie. not suspended)
        Specified by:
        active in interface TaskQuery
      • suspended

        public TaskQuery suspended()
        Description copied from interface: TaskQuery
        Only select tasks which are suspended, because its process instance was suspended.
        Specified by:
        suspended in interface TaskQuery
      • taskNameCaseInsensitive

        public TaskQuery taskNameCaseInsensitive()
      • hasExcludingConditions

        protected boolean hasExcludingConditions()
        Description copied from class: AbstractQuery
        Whether or not the query has excluding conditions. If the query has excluding conditions, (e.g. task due date before and after are excluding), the SQL query is avoided and a default result is returned. The returned result is the same as if the SQL was executed and there were no entries.
        Overrides:
        hasExcludingConditions in class AbstractQuery<TaskQuery,​Task>
        Returns:
        true if the query does have excluding conditions, false otherwise
      • getCandidateGroups

        public java.util.List<java.lang.String> getCandidateGroups()
      • isWithCandidateGroups

        public java.lang.Boolean isWithCandidateGroups()
      • isWithCandidateUsers

        public java.lang.Boolean isWithCandidateUsers()
      • isWithCandidateGroupsInternal

        public java.lang.Boolean isWithCandidateGroupsInternal()
      • isWithoutCandidateGroups

        public java.lang.Boolean isWithoutCandidateGroups()
      • isWithoutCandidateUsers

        public java.lang.Boolean isWithoutCandidateUsers()
      • isWithoutCandidateGroupsInternal

        public java.lang.Boolean isWithoutCandidateGroupsInternal()
      • getCandidateGroupsInternal

        public java.util.List<java.lang.String> getCandidateGroupsInternal()
      • getGroupsForCandidateUser

        protected java.util.List<java.lang.String> getGroupsForCandidateUser​(java.lang.String candidateUser)
      • getCachedUserGroups

        protected java.util.Map<java.lang.String,​java.util.List<java.lang.String>> getCachedUserGroups()
      • ensureOrExpressionsEvaluated

        protected void ensureOrExpressionsEvaluated()
      • ensureVariablesInitialized

        protected void ensureVariablesInitialized()
      • addVariable

        public void addVariable​(java.lang.String name,
                                java.lang.Object value,
                                QueryOperator operator,
                                boolean isTaskVariable,
                                boolean isProcessInstanceVariable)
      • orderByProcessVariable

        public TaskQuery orderByProcessVariable​(java.lang.String variableName,
                                                ValueType valueType)
        Description copied from interface: TaskQuery
        Order by a process instance variable value of a certain type. Calling this method multiple times specifies secondary, tertiary orderings, etc. The ordering of variables with null values is database-specific.
        Specified by:
        orderByProcessVariable in interface TaskQuery
      • orderByExecutionVariable

        public TaskQuery orderByExecutionVariable​(java.lang.String variableName,
                                                  ValueType valueType)
        Description copied from interface: TaskQuery
        Order by an execution variable value of a certain type. Calling this method multiple times specifies secondary, tertiary orderings, etc. The ordering of variables with null values is database-specific.
        Specified by:
        orderByExecutionVariable in interface TaskQuery
      • orderByTaskVariable

        public TaskQuery orderByTaskVariable​(java.lang.String variableName,
                                             ValueType valueType)
        Description copied from interface: TaskQuery
        Order by a task variable value of a certain type. Calling this method multiple times specifies secondary, tertiary orderings, etc. The ordering of variables with null values is database-specific.
        Specified by:
        orderByTaskVariable in interface TaskQuery
      • orderByCaseExecutionVariable

        public TaskQuery orderByCaseExecutionVariable​(java.lang.String variableName,
                                                      ValueType valueType)
        Description copied from interface: TaskQuery
        Order by a task variable value of a certain type. Calling this method multiple times specifies secondary, tertiary orderings, etc. The ordering of variables with null values is database-specific.
        Specified by:
        orderByCaseExecutionVariable in interface TaskQuery
      • orderByCaseInstanceVariable

        public TaskQuery orderByCaseInstanceVariable​(java.lang.String variableName,
                                                     ValueType valueType)
        Description copied from interface: TaskQuery
        Order by a task variable value of a certain type. Calling this method multiple times specifies secondary, tertiary orderings, etc. The ordering of variables with null values is database-specific.
        Specified by:
        orderByCaseInstanceVariable in interface TaskQuery
      • decideAuthorizationJoinType

        protected void decideAuthorizationJoinType​(CommandContext commandContext)
      • resetCachedCandidateGroups

        protected void resetCachedCandidateGroups()
      • getName

        public java.lang.String getName()
      • getNameNotEqual

        public java.lang.String getNameNotEqual()
      • getNameLike

        public java.lang.String getNameLike()
      • getNameNotLike

        public java.lang.String getNameNotLike()
      • getAssignee

        public java.lang.String getAssignee()
      • getAssigneeLike

        public java.lang.String getAssigneeLike()
      • getAssigneeIn

        public java.util.Set<java.lang.String> getAssigneeIn()
      • getAssigneeNotIn

        public java.util.Set<java.lang.String> getAssigneeNotIn()
      • getInvolvedUser

        public java.lang.String getInvolvedUser()
      • getOwner

        public java.lang.String getOwner()
      • isAssigned

        public java.lang.Boolean isAssigned()
      • isAssignedInternal

        public java.lang.Boolean isAssignedInternal()
      • isUnassigned

        public boolean isUnassigned()
      • isUnassignedInternal

        public java.lang.Boolean isUnassignedInternal()
      • isNoDelegationState

        public boolean isNoDelegationState()
      • getDelegationStateString

        public java.lang.String getDelegationStateString()
      • getCandidateUser

        public java.lang.String getCandidateUser()
      • getCandidateGroup

        public java.lang.String getCandidateGroup()
      • isIncludeAssignedTasks

        public boolean isIncludeAssignedTasks()
      • isIncludeAssignedTasksInternal

        public java.lang.Boolean isIncludeAssignedTasksInternal()
      • getProcessInstanceId

        public java.lang.String getProcessInstanceId()
      • getProcessInstanceIdIn

        public java.lang.String[] getProcessInstanceIdIn()
      • getExecutionId

        public java.lang.String getExecutionId()
      • getActivityInstanceIdIn

        public java.lang.String[] getActivityInstanceIdIn()
      • getTenantIds

        public java.lang.String[] getTenantIds()
      • getTaskId

        public java.lang.String getTaskId()
      • getTaskIdIn

        public java.lang.String[] getTaskIdIn()
      • getDescription

        public java.lang.String getDescription()
      • getDescriptionLike

        public java.lang.String getDescriptionLike()
      • getPriority

        public java.lang.Integer getPriority()
      • getMinPriority

        public java.lang.Integer getMinPriority()
      • getMaxPriority

        public java.lang.Integer getMaxPriority()
      • getCreateTime

        public java.util.Date getCreateTime()
      • getCreateTimeBefore

        public java.util.Date getCreateTimeBefore()
      • getCreateTimeAfter

        public java.util.Date getCreateTimeAfter()
      • getKey

        public java.lang.String getKey()
      • getKeys

        public java.lang.String[] getKeys()
      • getKeyLike

        public java.lang.String getKeyLike()
      • getParentTaskId

        public java.lang.String getParentTaskId()
      • getProcessDefinitionKey

        public java.lang.String getProcessDefinitionKey()
      • getProcessDefinitionKeys

        public java.lang.String[] getProcessDefinitionKeys()
      • getProcessDefinitionId

        public java.lang.String getProcessDefinitionId()
      • getProcessDefinitionName

        public java.lang.String getProcessDefinitionName()
      • getProcessDefinitionNameLike

        public java.lang.String getProcessDefinitionNameLike()
      • getProcessInstanceBusinessKey

        public java.lang.String getProcessInstanceBusinessKey()
      • getProcessInstanceBusinessKeys

        public java.lang.String[] getProcessInstanceBusinessKeys()
      • getProcessInstanceBusinessKeyLike

        public java.lang.String getProcessInstanceBusinessKeyLike()
      • getDueDate

        public java.util.Date getDueDate()
      • getDueBefore

        public java.util.Date getDueBefore()
      • getDueAfter

        public java.util.Date getDueAfter()
      • getFollowUpDate

        public java.util.Date getFollowUpDate()
      • getFollowUpBefore

        public java.util.Date getFollowUpBefore()
      • getFollowUpAfter

        public java.util.Date getFollowUpAfter()
      • isExcludeSubtasks

        public boolean isExcludeSubtasks()
      • getCaseInstanceId

        public java.lang.String getCaseInstanceId()
      • getCaseInstanceBusinessKey

        public java.lang.String getCaseInstanceBusinessKey()
      • getCaseInstanceBusinessKeyLike

        public java.lang.String getCaseInstanceBusinessKeyLike()
      • getCaseExecutionId

        public java.lang.String getCaseExecutionId()
      • getCaseDefinitionId

        public java.lang.String getCaseDefinitionId()
      • getCaseDefinitionKey

        public java.lang.String getCaseDefinitionKey()
      • getCaseDefinitionName

        public java.lang.String getCaseDefinitionName()
      • getCaseDefinitionNameLike

        public java.lang.String getCaseDefinitionNameLike()
      • isInitializeFormKeys

        public boolean isInitializeFormKeys()
      • isTaskNameCaseInsensitive

        public boolean isTaskNameCaseInsensitive()
      • isWithoutTenantId

        public boolean isWithoutTenantId()
      • isWithoutDueDate

        public boolean isWithoutDueDate()
      • getTaskDefinitionKeys

        public java.lang.String[] getTaskDefinitionKeys()
      • getIsTenantIdSet

        public boolean getIsTenantIdSet()
      • isVariableNamesIgnoreCase

        public java.lang.Boolean isVariableNamesIgnoreCase()
      • isVariableValuesIgnoreCase

        public java.lang.Boolean isVariableValuesIgnoreCase()
      • isOrQueryActive

        public boolean isOrQueryActive()
      • setOrQueryActive

        public void setOrQueryActive()
      • mergeVariables

        protected void mergeVariables​(TaskQueryImpl extendedQuery,
                                      TaskQueryImpl extendingQuery)
        Simple implementation of variable merging. Variables are only overridden if they have the same name and are in the same scope (ie are process instance, task or case execution variables).
      • isFollowUpNullAccepted

        public boolean isFollowUpNullAccepted()
      • taskNameNotEqual

        public TaskQuery taskNameNotEqual​(java.lang.String name)
        Description copied from interface: TaskQuery
        Only select tasks with a name not matching the given name/ The query will match the names of tasks in a case-insensitive way.
        Specified by:
        taskNameNotEqual in interface TaskQuery
      • taskNameNotLike

        public TaskQuery taskNameNotLike​(java.lang.String nameNotLike)
        Description copied from interface: TaskQuery
        Only select tasks with a name not matching the parameter. The syntax is that of SQL: for example usage: nameNotLike(%camunda%) The query will match the names of tasks in a case-insensitive way.
        Specified by:
        taskNameNotLike in interface TaskQuery
      • isQueryForProcessTasksOnly

        public boolean isQueryForProcessTasksOnly()
        Returns:
        true if the query is not supposed to find CMMN or standalone tasks
      • or

        public TaskQuery or()
        Description copied from interface: TaskQuery

        After calling or(), a chain of several filter criteria could follow. Each filter criterion that follows or() will be linked together with an OR expression until the OR query is terminated. To terminate the OR query right after the last filter criterion was applied, TaskQuery.endOr() must be invoked.

        Specified by:
        or in interface TaskQuery
        Returns:
        an object of the type TaskQuery on which an arbitrary amount of filter criteria could be applied. The several filter criteria will be linked together by an OR expression.
      • endOr

        public TaskQuery endOr()
        Description copied from interface: TaskQuery

        endOr() terminates an OR query on which an arbitrary amount of filter criteria were applied. To terminate the OR query which has been started by invoking TaskQuery.or(), endOr() must be invoked. Filter criteria which are applied after calling endOr() are linked together by an AND expression.

        Specified by:
        endOr in interface TaskQuery
        Returns:
        an object of the type TaskQuery on which an arbitrary amount of filter criteria could be applied. The filter criteria will be linked together by an AND expression.
      • matchVariableNamesIgnoreCase

        public TaskQuery matchVariableNamesIgnoreCase()
        Description copied from interface: TaskQuery
        All queries for task-, process- and case-variables will match the variable names in a case-insensitive way.
        Specified by:
        matchVariableNamesIgnoreCase in interface TaskQuery
      • matchVariableValuesIgnoreCase

        public TaskQuery matchVariableValuesIgnoreCase()
        Description copied from interface: TaskQuery
        All queries for task-, process- and case-variables will match the variable values in a case-insensitive way.
        Specified by:
        matchVariableValuesIgnoreCase in interface TaskQuery