Class AbstractSpecificationInterceptor<T,R>
java.lang.Object
io.micronaut.data.runtime.intercept.AbstractQueryInterceptor<T,R>
io.micronaut.data.runtime.intercept.criteria.AbstractSpecificationInterceptor<T,R>
- Type Parameters:
T- The declaring typeR- The return type
- All Implemented Interfaces:
DataInterceptor<T,R>
- Direct Known Subclasses:
AbstractAsyncSpecificationInterceptor,AbstractReactiveSpecificationInterceptor,CountSpecificationInterceptor,DeleteAllSpecificationInterceptor,ExistsSpecificationInterceptor,FindAllSpecificationInterceptor,FindOneSpecificationInterceptor,FindPageSpecificationInterceptor,UpdateAllSpecificationInterceptor
@Internal
public abstract class AbstractSpecificationInterceptor<T,R>
extends AbstractQueryInterceptor<T,R>
Abstract specification interceptor.
- Since:
- 3.2
- Author:
- Denis Stepanov
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsFields inherited from class io.micronaut.data.runtime.intercept.AbstractQueryInterceptor
conversionService, operations, preparedQueryResolver -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractSpecificationInterceptor(RepositoryOperations operations) Default constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected final <E> @NonNull jakarta.persistence.criteria.CriteriaQuery<Long>buildCountQuery(io.micronaut.aop.MethodInvocationContext<T, R> context) protected final <E> jakarta.persistence.criteria.CriteriaDelete<E>buildDeleteQuery(io.micronaut.aop.MethodInvocationContext<T, R> context) protected final <E> jakarta.persistence.criteria.CriteriaQuery<E>buildExistsQuery(io.micronaut.aop.MethodInvocationContext<T, R> context, Set<JoinPath> annotationJoinPaths) protected final <N> jakarta.persistence.criteria.CriteriaQuery<N>buildQuery(io.micronaut.aop.MethodInvocationContext<T, R> context, AbstractSpecificationInterceptor.Type type, Set<JoinPath> methodJoinPaths) protected final <E> jakarta.persistence.criteria.CriteriaUpdate<E>buildUpdateQuery(io.micronaut.aop.MethodInvocationContext<T, R> context) protected final @NonNull Longcount(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) deleteAll(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) protected final booleanexists(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) protected final @NonNull Iterable<?>findAll(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context, AbstractSpecificationInterceptor.Type type) protected final @NonNull ObjectfindOne(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context, AbstractSpecificationInterceptor.Type type) protected <K> @NonNull CriteriaDeleteBuilder<K>getCriteriaDeleteBuilder(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindCriteriaDeleteBuilderorQuerySpecificationin context.protected <K> @NonNull CriteriaQueryBuilder<K>getCriteriaQueryBuilder(io.micronaut.aop.MethodInvocationContext<?, ?> context, Set<JoinPath> joinPaths) FindCriteriaQueryBuilderorQuerySpecificationin context.protected <K> @NonNull CriteriaUpdateBuilder<K>getCriteriaUpdateBuilder(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindCriteriaUpdateBuilderorQuerySpecificationin context.protected <K> @Nullable DeleteSpecification<K>getDeleteSpecification(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindDeleteSpecificationin context.getMethodJoinPaths(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) protected <K> @Nullable QuerySpecification<K>getQuerySpecification(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindQuerySpecificationin context.protected <K> @Nullable UpdateSpecification<K>getUpdateSpecification(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindUpdateSpecificationin context.protected final <E,QR> @NonNull PreparedQuery<E, QR> preparedQueryForCriteria(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context, AbstractSpecificationInterceptor.Type type, Set<JoinPath> methodJoinPaths) updateAll(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) Methods inherited from class io.micronaut.data.runtime.intercept.AbstractQueryInterceptor
convertOne, convertOne, count, findEntitiesParameter, findEntityParameter, getDeleteAllBatchOperation, getDeleteBatchOperation, getDeleteBatchOperation, getDeleteOperation, getDeleteReturningBatchOperation, getDeleteReturningOperation, getEntitiesParameter, getEntityParameter, getInsertBatchOperation, getInsertBatchOperation, getInsertOperation, getInsertOperation, getPageable, getPagedQuery, getParameterValueMap, getRequiredEntity, getRequiredRootEntity, getReturnType, getUpdateAllBatchOperation, getUpdateOperation, getUpdateOperation, instantiateEntity, isNullable, isNumber, prepareCountQuery, prepareQuery, prepareQuery, prepareQuery, validateNullArgumentsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.data.intercept.DataInterceptor
intercept
-
Field Details
-
criteriaRepositoryOperations
-
-
Constructor Details
-
AbstractSpecificationInterceptor
Default constructor.- Parameters:
operations- The operations
-
-
Method Details
-
findAll
@NonNull protected final @NonNull Iterable<?> findAll(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context, AbstractSpecificationInterceptor.Type type) -
findOne
@NonNull protected final @NonNull Object findOne(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context, AbstractSpecificationInterceptor.Type type) -
getMethodJoinPaths
protected final Set<JoinPath> getMethodJoinPaths(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) -
count
@NonNull protected final @NonNull Long count(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) -
exists
protected final boolean exists(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) -
deleteAll
protected final Optional<Number> deleteAll(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) -
updateAll
protected final Optional<Number> updateAll(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context) -
preparedQueryForCriteria
@NonNull protected final <E,QR> @NonNull PreparedQuery<E,QR> preparedQueryForCriteria(RepositoryMethodKey methodKey, io.micronaut.aop.MethodInvocationContext<T, R> context, AbstractSpecificationInterceptor.Type type, Set<JoinPath> methodJoinPaths) -
buildExistsQuery
-
buildUpdateQuery
-
buildDeleteQuery
-
buildCountQuery
-
buildQuery
protected final <N> jakarta.persistence.criteria.CriteriaQuery<N> buildQuery(io.micronaut.aop.MethodInvocationContext<T, R> context, AbstractSpecificationInterceptor.Type type, Set<JoinPath> methodJoinPaths) -
getQuerySpecification
@Nullable protected <K> @Nullable QuerySpecification<K> getQuerySpecification(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindQuerySpecificationin context.- Type Parameters:
K- the specification entity root type- Parameters:
context- The context- Returns:
- found specification
-
getCriteriaQueryBuilder
@NonNull protected <K> @NonNull CriteriaQueryBuilder<K> getCriteriaQueryBuilder(io.micronaut.aop.MethodInvocationContext<?, ?> context, Set<JoinPath> joinPaths) FindCriteriaQueryBuilderorQuerySpecificationin context.- Type Parameters:
K- the result type- Parameters:
context- The contextjoinPaths- The join fetch paths- Returns:
- found specification
-
getDeleteSpecification
@Nullable protected <K> @Nullable DeleteSpecification<K> getDeleteSpecification(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindDeleteSpecificationin context.- Type Parameters:
K- the specification entity root type- Parameters:
context- The context- Returns:
- found specification
-
getCriteriaDeleteBuilder
@NonNull protected <K> @NonNull CriteriaDeleteBuilder<K> getCriteriaDeleteBuilder(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindCriteriaDeleteBuilderorQuerySpecificationin context.- Type Parameters:
K- the result type- Parameters:
context- The context- Returns:
- found specification
-
getUpdateSpecification
@Nullable protected <K> @Nullable UpdateSpecification<K> getUpdateSpecification(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindUpdateSpecificationin context.- Type Parameters:
K- the specification entity root type- Parameters:
context- The context- Returns:
- found specification
-
getCriteriaUpdateBuilder
@NonNull protected <K> @NonNull CriteriaUpdateBuilder<K> getCriteriaUpdateBuilder(io.micronaut.aop.MethodInvocationContext<?, ?> context) FindCriteriaUpdateBuilderorQuerySpecificationin context.- Type Parameters:
K- the result type- Parameters:
context- The context- Returns:
- found specification
-