Class SpecificationSupport<T,R extends CloudRuntimeEntityFilterRequest>
java.lang.Object
org.activiti.cloud.services.query.rest.specification.SpecificationSupport<T,R>
- All Implemented Interfaces:
Serializable,org.springframework.data.jpa.domain.Specification<T>
- Direct Known Subclasses:
ProcessInstanceSpecification,TaskSpecification
public abstract class SpecificationSupport<T,R extends CloudRuntimeEntityFilterRequest>
extends Object
implements org.springframework.data.jpa.domain.Specification<T>
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected List<VariableValueFilterCondition> protected final Map<VariableType, Class<?>> protected List<jakarta.persistence.criteria.Predicate> protected final RFields inherited from interface org.springframework.data.jpa.domain.Specification
serialVersionUID -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddLikeFilters(Collection<jakarta.persistence.criteria.Predicate> predicates, Set<String> valuesToFilter, jakarta.persistence.criteria.Root<T> root, jakarta.persistence.criteria.CriteriaBuilder criteriaBuilder, jakarta.persistence.metamodel.SingularAttribute<T, String> attribute) protected voidapplyIdFilter(jakarta.persistence.criteria.Root<T> root) protected voidapplyProcessVariableFilters(Supplier<jakarta.persistence.criteria.SetJoin<T, org.activiti.cloud.services.query.model.ProcessVariableEntity>> joinSupplier, jakarta.persistence.criteria.CriteriaBuilder criteriaBuilder) protected voidapplySorting(jakarta.persistence.criteria.Root<T> root, Supplier<jakarta.persistence.criteria.SetJoin<T, org.activiti.cloud.services.query.model.ProcessVariableEntity>> joinSupplier, jakarta.persistence.criteria.CriteriaQuery<?> query, jakarta.persistence.criteria.CriteriaBuilder criteriaBuilder) protected abstract jakarta.persistence.metamodel.SingularAttribute<T, ?> protected abstract jakarta.persistence.metamodel.SetAttribute<T, org.activiti.cloud.services.query.model.ProcessVariableEntity> protected Supplier<jakarta.persistence.criteria.SetJoin<T, org.activiti.cloud.services.query.model.ProcessVariableEntity>> joinProcessVariables(jakarta.persistence.criteria.Root<T> root) Using a supplier to actually join process variable only if needed.protected voidreset()jakarta.persistence.criteria.PredicatetoPredicate(jakarta.persistence.criteria.Root<T> root, jakarta.persistence.criteria.CriteriaQuery<?> query, jakarta.persistence.criteria.CriteriaBuilder criteriaBuilder) protected voidMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.data.jpa.domain.Specification
and, or
-
Field Details
-
searchRequest
-
predicates
-
filterConditions
-
javaTypeMapping
-
-
Constructor Details
-
SpecificationSupport
-
-
Method Details
-
getIdAttribute
-
reset
protected void reset() -
toPredicate
public jakarta.persistence.criteria.Predicate toPredicate(jakarta.persistence.criteria.Root<T> root, jakarta.persistence.criteria.CriteriaQuery<?> query, jakarta.persistence.criteria.CriteriaBuilder criteriaBuilder) - Specified by:
toPredicatein interfaceorg.springframework.data.jpa.domain.Specification<T>
-
applyProcessVariableFilters
-
applyIdFilter
-
addLikeFilters
-
applySorting
protected void applySorting(jakarta.persistence.criteria.Root<T> root, Supplier<jakarta.persistence.criteria.SetJoin<T, org.activiti.cloud.services.query.model.ProcessVariableEntity>> joinSupplier, jakarta.persistence.criteria.CriteriaQuery<?> query, jakarta.persistence.criteria.CriteriaBuilder criteriaBuilder) -
validateSort
-
joinProcessVariables
protected Supplier<jakarta.persistence.criteria.SetJoin<T,org.activiti.cloud.services.query.model.ProcessVariableEntity>> joinProcessVariables(jakarta.persistence.criteria.Root<T> root) Using a supplier to actually join process variable only if needed. The instance of set join is stored in a field to avoid multiple joins.- Parameters:
root- Specification root- Returns:
- Supplier of SetJoin of process variables
-
getProcessVariablesAttribute
protected abstract jakarta.persistence.metamodel.SetAttribute<T,org.activiti.cloud.services.query.model.ProcessVariableEntity> getProcessVariablesAttribute()
-