Class AbstractCriteriaMethodMatch

    • Field Detail

      • matcher

        @Nullable
        protected final java.util.regex.Matcher matcher
    • Constructor Detail

      • AbstractCriteriaMethodMatch

        protected AbstractCriteriaMethodMatch​(java.util.regex.Matcher matcher)
    • Method Detail

      • getEntityParameter

        @Nullable
        protected io.micronaut.inject.ast.ParameterElement getEntityParameter()
        Returns:
        The entity parameter
      • getEntitiesParameter

        @Nullable
        protected io.micronaut.inject.ast.ParameterElement getEntitiesParameter()
        Returns:
        The entities parameter
      • getOperationType

        @NonNull
        protected abstract DataMethod.OperationType getOperationType()
        Returns:
        The operation type
      • supportedByImplicitQueries

        protected boolean supportedByImplicitQueries()
        Returns:
        true of the operation is supported by implicit queries
      • getInterceptorElement

        protected final io.micronaut.inject.ast.ClassElement getInterceptorElement​(MethodMatchContext matchContext,
                                                                                   java.lang.Class<? extends DataInterceptor> interceptorType)
        Parameters:
        matchContext - The match context
        interceptorType - The interceptor type
        Returns:
        The resolved class element
      • resolveReturnTypeAndInterceptor

        protected java.util.Map.Entry<io.micronaut.inject.ast.ClassElement,​java.lang.Class<? extends DataInterceptor>> resolveReturnTypeAndInterceptor​(MethodMatchContext matchContext)
        Parameters:
        matchContext - The match context
        Returns:
        resolved return type and interceptor
      • applyPredicates

        protected <T> void applyPredicates​(java.lang.String querySequence,
                                           io.micronaut.inject.ast.ParameterElement[] parameters,
                                           PersistentEntityRoot<T> root,
                                           PersistentEntityCriteriaQuery<T> query,
                                           SourcePersistentEntityCriteriaBuilder cb)
        Apply predicates.
        Type Parameters:
        T - The entity type
        Parameters:
        querySequence - The query sequence
        parameters - The parameters
        root - The root
        query - The query
        cb - The criteria builder
      • applyPredicates

        protected <T> void applyPredicates​(java.lang.String querySequence,
                                           io.micronaut.inject.ast.ParameterElement[] parameters,
                                           PersistentEntityRoot<T> root,
                                           PersistentEntityCriteriaDelete<T> query,
                                           SourcePersistentEntityCriteriaBuilder cb)
        Apply predicates.
        Type Parameters:
        T - The entity type
        Parameters:
        querySequence - The query sequence
        parameters - The parameters
        root - The root
        query - The query
        cb - The criteria builder
      • applyPredicates

        protected <T> void applyPredicates​(java.lang.String querySequence,
                                           io.micronaut.inject.ast.ParameterElement[] parameters,
                                           PersistentEntityRoot<T> root,
                                           PersistentEntityCriteriaUpdate<T> query,
                                           SourcePersistentEntityCriteriaBuilder cb)
        Apply predicates.
        Type Parameters:
        T - The entity type
        Parameters:
        querySequence - The query sequence
        parameters - The parameters
        root - The root
        query - The query
        cb - The criteria builder
      • applyForUpdate

        protected <T> java.lang.String applyForUpdate​(java.lang.String querySequence,
                                                      PersistentEntityCriteriaQuery<T> query)
        Matches for update definitions in the query sequence.
        Type Parameters:
        T - The entity type
        Parameters:
        querySequence - The query sequence
        query - The query
        Returns:
        The new query sequence without the for update definitions
      • getProperty

        @NonNull
        protected final <T> jakarta.persistence.criteria.Expression<?> getProperty​(PersistentEntityRoot<T> root,
                                                                                   java.lang.String propertyName)
      • applyJoinSpecs

        protected final void applyJoinSpecs​(PersistentEntityRoot<?> root,
                                            @NonNull
                                            java.util.List<io.micronaut.core.annotation.AnnotationValue<Join>> joinSpecs)
      • joinSpecsAtMatchContext

        @NonNull
        protected final java.util.List<io.micronaut.core.annotation.AnnotationValue<Join>> joinSpecsAtMatchContext​(@NonNull
                                                                                                                   MethodMatchContext matchContext,
                                                                                                                   boolean isQuery)
        Parameters:
        matchContext - The match context
        isQuery - true if is a query criteria
        Returns:
        a List of annotations values for annotation.
      • hasNoWhereAndJoinDeclaration

        protected final boolean hasNoWhereAndJoinDeclaration​(@NonNull
                                                             MethodMatchContext matchContext)