Interface StoredQuery<E,R>

Type Parameters:
E - The entity type
R - The result type
All Superinterfaces:
io.micronaut.core.annotation.AnnotationMetadataProvider, io.micronaut.core.annotation.AnnotationSource, io.micronaut.core.naming.Named, StoredDataOperation<R>
All Known Subinterfaces:
BindableParametersPreparedQuery<E,R>, BindableParametersStoredQuery<E,R>, DelegatePreparedQuery<E,R>, DelegateStoredQuery<E,R>, MongoPreparedQuery<E,R>, MongoStoredQuery<E,R>, PreparedQuery<E,R>, SqlPreparedQuery<E,R>, SqlStoredQuery<E,R>
All Known Implementing Classes:
BasicStoredQuery, DefaultBindableParametersPreparedQuery, DefaultBindableParametersStoredQuery, DefaultPreparedQuery, DefaultSqlPreparedQuery, DefaultSqlStoredQuery, DefaultStoredQuery, DummyPreparedQuery, QueryResultStoredQuery

public interface StoredQuery<E,R> extends io.micronaut.core.naming.Named, StoredDataOperation<R>
A stored computed query. This interface represents the
Since:
1.0.0
Author:
graemerocher
  • Field Summary

    Fields inherited from interface io.micronaut.core.annotation.AnnotationSource

    EMPTY
  • Method Summary

    Modifier and Type
    Method
    Description
    default @NonNull Class<?>[]
    The argument types to the method that invokes the query.
    default Optional<Class<?>>
    The type of the ID member of the entity.
    @NonNull String[]
    The query to execute.
    default @NonNull Set<JoinPath>
     
    @NonNull String
    The query to execute.
    The list of query bindings.
    default @NonNull Map<String,Object>
    The parameter binding.
    @NonNull io.micronaut.core.type.Argument<R>
    The query result type.
    @NonNull DataType
     
    @NonNull Class<R>
    The query result type.
    @NonNull Class<E>
    The root entity type.
    boolean
    Does the query have a pageable.
    boolean
     
    boolean
     
    default boolean
    Returns whether the query returns the actual entity or a Data Transfer Object (DTO) project.
    default boolean
     
    default boolean
    In cases where one needs to differentiate between at higher level query format (like JPA-QL) and a lower level format (like SQL).
    default boolean
    Is with an optimistic lock.
    boolean
    Gets an indicator telling whether underlying query is raw query.
    boolean
    Whether the query can be treated as a single result.
    boolean
    Are the placeholders for query set using numeric indices starting from 1.

    Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataProvider

    findAnnotation, findAnnotation, findDeclaredAnnotation, findDeclaredAnnotation, getAnnotationMetadata, getTargetAnnotationMetadata, isAnnotationPresent, isDeclaredAnnotationPresent, synthesize, synthesizeAll, synthesizeAnnotationsByType, synthesizeDeclared, synthesizeDeclared, synthesizeDeclaredAnnotationsByType

    Methods inherited from interface io.micronaut.core.annotation.AnnotationSource

    getAnnotation, getAnnotation, getDeclaredAnnotation, getDeclaredAnnotation, isAnnotationPresent, isDeclaredAnnotationPresent, synthesize, synthesizeDeclared

    Methods inherited from interface io.micronaut.core.naming.Named

    getName
  • Method Details

    • getRootEntity

      @NonNull @NonNull Class<E> getRootEntity()
      The root entity type.
      Returns:
      The root entity type
    • hasPageable

      boolean hasPageable()
      Does the query have a pageable.
      Returns:
      True if it does
    • getQuery

      @NonNull @NonNull String getQuery()
      The query to execute.
      Returns:
      The query to execute
    • getExpandableQueryParts

      @NonNull @NonNull String[] getExpandableQueryParts()
      The query to execute.
      Returns:
      The query to execute
    • getQueryBindings

      List<QueryParameterBinding> getQueryBindings()
      The list of query bindings.
      Returns:
      the query bindings
    • getResultType

      @NonNull @NonNull Class<R> getResultType()
      The query result type. This may differ from the root entity type returned by getRootEntity().
      Returns:
      The query result type
    • getResultArgument

      @NonNull @NonNull io.micronaut.core.type.Argument<R> getResultArgument()
      The query result type. This may differ from the root entity type returned by getRootEntity().
      Specified by:
      getResultArgument in interface StoredDataOperation<E>
      Returns:
      The query result type
    • getResultDataType

      @NonNull @NonNull DataType getResultDataType()
      Returns:
      The result data type.
    • isNative

      default boolean isNative()
      In cases where one needs to differentiate between at higher level query format (like JPA-QL) and a lower level format (like SQL).
      Returns:
      Whether the query is native.
    • useNumericPlaceholders

      boolean useNumericPlaceholders()
      Are the placeholders for query set using numeric indices starting from 1.
      Returns:
      True if they are.
    • isDtoProjection

      default boolean isDtoProjection()
      Returns whether the query returns the actual entity or a Data Transfer Object (DTO) project. Defaults to false.
      Returns:
      Whether the query is a DTO projection query
    • getEntityIdentifierType

      default Optional<Class<?>> getEntityIdentifierType()
      The type of the ID member of the entity.
      Returns:
      The ID type
    • getArgumentTypes

      @NonNull default @NonNull Class<?>[] getArgumentTypes()
      The argument types to the method that invokes the query.
      Returns:
      The argument types
    • isCount

      boolean isCount()
      Returns:
      Is this a count query.
    • getQueryHints

      @NonNull default @NonNull Map<String,Object> getQueryHints()
      The parameter binding. That is the mapping between named query parameters and parameters of the method.
      Returns:
      The parameter binding.
    • getJoinFetchPaths

      @NonNull default @NonNull Set<JoinPath> getJoinFetchPaths()
      Returns:
      The join paths that require a fetch
    • isSingleResult

      boolean isSingleResult()
      Whether the query can be treated as a single result.
      Returns:
      True if it can.
    • hasResultConsumer

      boolean hasResultConsumer()
      Returns:
      Whether a result consumer is present
    • isOptimisticLock

      default boolean isOptimisticLock()
      Is with an optimistic lock.
      Returns:
      the result
    • isRawQuery

      boolean isRawQuery()
      Gets an indicator telling whether underlying query is raw query.
      Returns:
      true if it is raw query
    • isJsonEntity

      default boolean isJsonEntity()
      Returns:
      an indicator telling whether query is handling entities with JSON representation (like Oracle Json View)
      Since:
      4.0.0