A base class for Query implementations that create BSON queries based on MongoDB query format. See https://docs.mongodb.com/manual/tutorial/query-documents/
Modifiers | Name | Description |
---|---|---|
protected interface |
BsonQuery.OperatorHandler |
Handles query operators when reading BSON |
protected interface |
BsonQuery.ProjectionHandler |
Handles a projection |
protected interface |
BsonQuery.QueryHandler |
Handles an individual criterion |
Modifiers | Name | Description |
---|---|---|
static java.lang.String |
AND_OPERATOR |
|
static java.lang.String |
AVERAGE_OPERATOR |
|
static org.bson.codecs.EncoderContext |
ENCODER_CONTEXT |
|
static java.lang.String |
EQ_OPERATOR |
|
static java.lang.String |
EXISTS_OPERATOR |
|
static java.lang.String |
GROUP_OPERATOR |
|
static java.lang.String |
GTE_OPERATOR |
|
static java.lang.String |
GT_OPERATOR |
|
static java.lang.String |
ID_REFERENCE_SUFFIX |
|
static java.lang.String |
IN_OPERATOR |
|
static java.lang.String |
LTE_OPERATOR |
|
static java.lang.String |
LT_OPERATOR |
|
static java.lang.String |
MATCH_OPERATOR |
|
static java.lang.String |
MAX_OPERATOR |
|
static java.lang.String |
MIN_OPERATOR |
|
static java.lang.String |
NE_OPERATOR |
|
static java.lang.String |
NIN_OPERATOR |
|
static java.lang.String |
NOR_OPERATOR |
|
static java.lang.String |
NOT_OPERATOR |
|
static java.lang.String |
OR_OPERATOR |
|
static java.lang.String |
PROJECT_OPERATOR |
|
static java.lang.String |
REGEX_OPERATOR |
|
static java.lang.String |
SIZE_OPERATOR |
|
static java.lang.String |
SORT_OPERATOR |
|
static java.lang.String |
SUM_OPERATOR |
|
static java.lang.String |
WHERE_OPERATOR |
|
protected static java.util.Map<java.lang.Class, ProjectionHandler> |
groupByProjectionHandlers |
|
protected static java.util.Map<java.lang.String, OperatorHandler> |
operatorHandlers |
|
protected static java.util.Map<java.lang.Class, ProjectionHandler> |
projectProjectionHandlers |
|
protected static java.util.Map<java.lang.Class, QueryHandler> |
queryHandlers |
Fields inherited from class | Fields |
---|---|
class Query |
criteria, entity, fetchStrategies, lockResult, max, offset, orderBy, projections, queryCache, session, uniqueResult |
Constructor and description |
---|
protected BsonQuery
(Session session, PersistentEntity entity) |
protected BsonQuery
(PersistentEntity entity) |
Type Params | Return Type | Name and description |
---|---|---|
|
static org.bson.Document |
createBsonQuery(org.bson.codecs.configuration.CodecRegistry registry, PersistentEntity entity, java.util.List<Criterion> criteria) Creates a new query for the given registry, entity and criteria |
|
static org.bson.Document |
createBsonQuery(org.bson.codecs.configuration.CodecRegistry registry, PersistentEntity entity, Junction junction) Creates a new query for the given registry, entity and criteria |
|
protected static java.util.List<java.lang.Object> |
getInListQueryValues(PersistentEntity entity, In in) Get the list of native values to use in the query. |
|
protected static org.bson.Document |
getOrCreatePropertyQuery(org.bson.Document query, java.lang.String propertyName) |
|
protected static java.lang.String |
getPropertyName(PersistentEntity entity, PropertyNameCriterion criterion) |
|
protected static java.lang.String |
getPropertyName(PersistentEntity entity, java.lang.String propertyName) |
<T> |
static DetachedCriteria<T> |
parse(java.lang.Class<T> type, org.bson.BsonReader queryReader) Parse a query from a BsonReader into a DetachedCriteria |
|
protected static void |
populateBsonQuery(EmbeddedQueryEncoder queryEncoder, org.bson.Document query, java.util.List<Criterion> criteria, PersistentEntity entity) |
|
protected static void |
populateBsonQuery(EmbeddedQueryEncoder queryEncoder, org.bson.Document query, Junction criteria, PersistentEntity entity) |
|
protected static java.lang.Object |
readBsonValue(org.bson.BsonReader queryReader, org.bson.BsonType bsonType) |
Methods inherited from class | Name |
---|---|
class Query |
add, add, allEq, and, between, cache, clone, conjunction, createQuery, disjunction, eq, executeQuery, fetchStrategy, firstResult, flushBeforeQuery, ge, getCriteria, getEntity, getOrderBy, getSession, gt, gte, idEq, ilike, in, isEmpty, isNotEmpty, isNotNull, isNull, join, le, like, list, lock, lock, lt, lte, max, maxResults, negation, offset, or, order, patternToRegex, projections, resolveIdIfEntity, rlike, select, setUniqueResult, singleResult |
class java.lang.Object |
java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() |
Creates a new query for the given registry, entity and criteria
registry
- The registryentity
- The entitycriteria
- The criteriaCreates a new query for the given registry, entity and criteria
registry
- The registryentity
- The entityjunction
- The junctionGet the list of native values to use in the query. This converts entities to ids and other types to their persisted types.
entity
- The entityin
- The criterionParse a query from a BsonReader into a DetachedCriteria
type
- The entity typequeryReader
- The query reader
- The entity concrete type