Class MongoQueryBuilder
- java.lang.Object
-
- io.micronaut.data.document.model.query.builder.MongoQueryBuilder
-
- All Implemented Interfaces:
QueryBuilder
@Internal public final class MongoQueryBuilder extends java.lang.Object implements QueryBuilder
The Mongo query builder.- Since:
- 3.3
- Author:
- Denis Stepanov
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classMongoQueryBuilder.QueryStateThe state of the query.
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringMONGO_DATE_IDENTIFIERstatic java.lang.StringMONGO_OBJECT_ID_IDENTIFIERstatic java.lang.StringQUERY_PARAMETER_PLACEHOLDERAn 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
-
-
Constructor Summary
Constructors Constructor Description MongoQueryBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description QueryResultbuildDelete(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, QueryModel query)Encode the given query into the encoded query instance.QueryResultbuildInsert(io.micronaut.core.annotation.AnnotationMetadata repositoryMetadata, PersistentEntity entity)Builds an insert statement for the given entity.QueryResultbuildOrderBy(PersistentEntity entity, Sort sort)Encode the given query into the encoded query instance.QueryResultbuildPagination(Pageable pageable)Encode the pageable.QueryResultbuildQuery(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, QueryModel query)Encode the given query for the passed annotation metadata and query.QueryResultbuildUpdate(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, QueryModel query, java.util.List<java.lang.String> propertiesToUpdate)Encode the given query into the encoded query instance.QueryResultbuildUpdate(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, QueryModel query, java.util.Map<java.lang.String,java.lang.Object> propertiesToUpdate)Encode the given query into the encoded query instance.-
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
-
MONGO_OBJECT_ID_IDENTIFIER
public static final java.lang.String MONGO_OBJECT_ID_IDENTIFIER
- See Also:
- Constant Field Values
-
-
Method Detail
-
buildInsert
public QueryResult buildInsert(io.micronaut.core.annotation.AnnotationMetadata repositoryMetadata, PersistentEntity entity)
Description copied from interface:QueryBuilderBuilds an insert statement for the given entity.- Specified by:
buildInsertin interfaceQueryBuilder- Parameters:
repositoryMetadata- The repository annotation metadataentity- The entity- Returns:
- The insert statement or null if the implementation doesn't require insert statements
-
buildQuery
public QueryResult buildQuery(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, QueryModel query)
Description copied from interface:QueryBuilderEncode the given query for the passed annotation metadata and query.- Specified by:
buildQueryin interfaceQueryBuilder- Parameters:
annotationMetadata- The annotation metadataquery- The query model- Returns:
- The query result
-
buildUpdate
public QueryResult buildUpdate(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, QueryModel query, java.util.List<java.lang.String> propertiesToUpdate)
Description copied from interface:QueryBuilderEncode the given query into the encoded query instance.- Specified by:
buildUpdatein interfaceQueryBuilder- Parameters:
annotationMetadata- The annotation metadataquery- The querypropertiesToUpdate- The property names to update- Returns:
- The encoded query
-
buildUpdate
public QueryResult buildUpdate(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, QueryModel query, java.util.Map<java.lang.String,java.lang.Object> propertiesToUpdate)
Description copied from interface:QueryBuilderEncode the given query into the encoded query instance.- Specified by:
buildUpdatein interfaceQueryBuilder- Parameters:
annotationMetadata- The annotation metadataquery- The querypropertiesToUpdate- The property names to update- Returns:
- The encoded query
-
buildDelete
public QueryResult buildDelete(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, QueryModel query)
Description copied from interface:QueryBuilderEncode the given query into the encoded query instance.- Specified by:
buildDeletein interfaceQueryBuilder- Parameters:
annotationMetadata- The annotation metadataquery- The query- Returns:
- The encoded query
-
buildOrderBy
public QueryResult buildOrderBy(PersistentEntity entity, Sort sort)
Description copied from interface:QueryBuilderEncode the given query into the encoded query instance.- Specified by:
buildOrderByin interfaceQueryBuilder- Parameters:
entity- The root entitysort- The sort- Returns:
- The encoded query
-
buildPagination
public QueryResult buildPagination(Pageable pageable)
Description copied from interface:QueryBuilderEncode the pageable.- Specified by:
buildPaginationin interfaceQueryBuilder- Parameters:
pageable- The pageable- Returns:
- The encoded query
-
-