Class MongoQueryBuilder

  • All Implemented Interfaces:
    io.micronaut.data.model.query.builder.QueryBuilder

    @Internal
    public final class MongoQueryBuilder
    extends java.lang.Object
    implements io.micronaut.data.model.query.builder.QueryBuilder
    The Mongo query builder.
    Since:
    3.3
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      protected class  MongoQueryBuilder.QueryState
      The state of the query.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String MONGO_DATE_IDENTIFIER  
      static java.lang.String MONGO_ID_FIELD  
      static java.lang.String QUERY_PARAMETER_PLACEHOLDER
      An object with this property is replaced with an actual query parameter at the runtime.
      • Fields inherited from interface io.micronaut.data.model.query.builder.QueryBuilder

        IN_VARIABLES_PATTERN, VARIABLE_PATTERN
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      io.micronaut.data.model.query.builder.QueryResult buildDelete​(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, io.micronaut.data.model.query.QueryModel query)  
      io.micronaut.data.model.query.builder.QueryResult buildInsert​(io.micronaut.core.annotation.AnnotationMetadata repositoryMetadata, io.micronaut.data.model.PersistentEntity entity)  
      io.micronaut.data.model.query.builder.QueryResult buildOrderBy​(io.micronaut.data.model.PersistentEntity entity, io.micronaut.data.model.Sort sort)  
      io.micronaut.data.model.query.builder.QueryResult buildPagination​(io.micronaut.data.model.Pageable pageable)  
      io.micronaut.data.model.query.builder.QueryResult buildQuery​(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, io.micronaut.data.model.query.QueryModel query)  
      io.micronaut.data.model.query.builder.QueryResult buildUpdate​(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, io.micronaut.data.model.query.QueryModel query, java.util.List<java.lang.String> propertiesToUpdate)  
      io.micronaut.data.model.query.builder.QueryResult buildUpdate​(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, io.micronaut.data.model.query.QueryModel query, java.util.Map<java.lang.String,​java.lang.Object> propertiesToUpdate)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface io.micronaut.data.model.query.builder.QueryBuilder

        buildDelete, buildQuery, buildUpdate, buildUpdate, shouldAliasProjections, supportsForUpdate
    • Field Detail

      • QUERY_PARAMETER_PLACEHOLDER

        public static final java.lang.String QUERY_PARAMETER_PLACEHOLDER
        An object with this property is replaced with an actual query parameter at the runtime.
        See Also:
        Constant Field Values
      • MONGO_DATE_IDENTIFIER

        public static final java.lang.String MONGO_DATE_IDENTIFIER
        See Also:
        Constant Field Values
    • Constructor Detail

      • MongoQueryBuilder

        public MongoQueryBuilder()
    • Method Detail

      • buildInsert

        public io.micronaut.data.model.query.builder.QueryResult buildInsert​(io.micronaut.core.annotation.AnnotationMetadata repositoryMetadata,
                                                                             io.micronaut.data.model.PersistentEntity entity)
        Specified by:
        buildInsert in interface io.micronaut.data.model.query.builder.QueryBuilder
      • buildQuery

        public io.micronaut.data.model.query.builder.QueryResult buildQuery​(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata,
                                                                            io.micronaut.data.model.query.QueryModel query)
        Specified by:
        buildQuery in interface io.micronaut.data.model.query.builder.QueryBuilder
      • buildUpdate

        public io.micronaut.data.model.query.builder.QueryResult buildUpdate​(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata,
                                                                             io.micronaut.data.model.query.QueryModel query,
                                                                             java.util.List<java.lang.String> propertiesToUpdate)
        Specified by:
        buildUpdate in interface io.micronaut.data.model.query.builder.QueryBuilder
      • buildUpdate

        public io.micronaut.data.model.query.builder.QueryResult buildUpdate​(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata,
                                                                             io.micronaut.data.model.query.QueryModel query,
                                                                             java.util.Map<java.lang.String,​java.lang.Object> propertiesToUpdate)
        Specified by:
        buildUpdate in interface io.micronaut.data.model.query.builder.QueryBuilder
      • buildDelete

        public io.micronaut.data.model.query.builder.QueryResult buildDelete​(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata,
                                                                             io.micronaut.data.model.query.QueryModel query)
        Specified by:
        buildDelete in interface io.micronaut.data.model.query.builder.QueryBuilder
      • buildOrderBy

        public io.micronaut.data.model.query.builder.QueryResult buildOrderBy​(io.micronaut.data.model.PersistentEntity entity,
                                                                              io.micronaut.data.model.Sort sort)
        Specified by:
        buildOrderBy in interface io.micronaut.data.model.query.builder.QueryBuilder
      • buildPagination

        public io.micronaut.data.model.query.builder.QueryResult buildPagination​(io.micronaut.data.model.Pageable pageable)
        Specified by:
        buildPagination in interface io.micronaut.data.model.query.builder.QueryBuilder