|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.ejdb.driver.EJDBQueryBuilder
public class EJDBQueryBuilder
Query/BSON builder is used to create EJDB queries. EJDBQueryBuilder can be used to construct BSON objects as well as queries.
Nested Class Summary | |
---|---|
class |
EJDBQueryBuilder.Constraint
Find constraint for specified field |
class |
EJDBQueryBuilder.OrderBy
Sorting rules for query results |
Constructor Summary | |
---|---|
|
EJDBQueryBuilder()
|
|
EJDBQueryBuilder(BSONObject query,
java.util.List<BSONObject> queryOrs,
BSONObject hints)
|
protected |
EJDBQueryBuilder(EJDBQueryBuilder parent,
BSONObject query)
|
Method Summary | |
---|---|
protected EJDBQueryBuilder |
addHint(java.lang.String name,
java.lang.Object value)
Adds pair name->value to hints BSON object. |
protected EJDBQueryBuilder |
addOperation(java.lang.String field,
java.lang.Object value,
boolean replace)
Adds query restrintions in main query object. |
protected void |
addToBSON(BSONObject out,
java.lang.String field,
java.lang.Object value)
|
EJDBQueryBuilder |
addToSet(java.lang.String field,
java.lang.Object value)
Atomically adds value to the array field only if value not in the array already. |
EJDBQueryBuilder |
addToSetAll(java.lang.String field,
java.util.Collection<java.lang.Object> values)
Atomically performs set union with values in val for specified array field. |
EJDBQueryBuilder |
addToSetAll(java.lang.String field,
java.lang.Object... values)
Atomically performs set union with values in val for specified array field. |
protected void |
checkHintsAvailable()
Checks hints section allowed. |
EJDBQueryBuilder |
dropAll()
In-place record removal operation. |
EJDBQueryBuilder |
elementMatch(java.lang.String field)
Element match construction |
EJDBQueryBuilder |
excludeField(java.lang.String field)
Sets fields to be excluded from resulting objects. |
EJDBQueryBuilder.Constraint |
field(java.lang.String field)
Adds constraint for field |
EJDBQueryBuilder |
field(java.lang.String field,
java.lang.Object value)
Adds field equality restriction. |
BSONObject |
getMainQuery()
Returns main BSON query object |
BSONObject[] |
getOrQueries()
Returns BSON objects for additional OR queries |
BSONObject |
getQueryHints()
Returns BSON hints object |
EJDBQueryBuilder |
inc(java.lang.String field,
java.lang.Number inc)
Increment specified field. |
EJDBQueryBuilder |
includeField(java.lang.String field)
Sets fields to be included in resulting objects. |
EJDBQueryBuilder |
join(java.lang.String fpath,
java.lang.String collname)
Make collection join for select queries. |
EJDBQueryBuilder |
or()
Add OR joined query restrictions. |
EJDBQueryBuilder.OrderBy |
orderBy()
Resturs return sorting rules control object |
EJDBQueryBuilder |
pull(java.lang.String field,
java.lang.Object value)
Atomically removes all occurrences of value from field, if field is an array. |
EJDBQueryBuilder |
pullAll(java.lang.String field,
java.util.Collection<java.lang.Object> values)
Atomically performs set substraction of values for specified array field. |
EJDBQueryBuilder |
pullAll(java.lang.String field,
java.lang.Object... values)
Atomically performs set substraction of values for specified array field. |
EJDBQueryBuilder |
set(java.lang.String field,
java.lang.Object value)
Set specified fiels to value query.set(field1, value1).set(field2, value2); // -> { ..., $set : {field1 : value1, field2 : value2}} |
EJDBQueryBuilder |
setFieldIncluded(java.lang.String field,
boolean incldue)
Sets fields to be included or exluded in resulting objects. |
EJDBQueryBuilder |
setMaxResults(int maxResults)
Sets max number of records in the result set. |
EJDBQueryBuilder |
setOffset(int offset)
Sets number of skipped records in the result set. |
EJDBQueryBuilder |
upsert(java.lang.String field,
java.lang.Object value)
Atomic upsert. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public EJDBQueryBuilder()
public EJDBQueryBuilder(BSONObject query, java.util.List<BSONObject> queryOrs, BSONObject hints)
protected EJDBQueryBuilder(EJDBQueryBuilder parent, BSONObject query)
Method Detail |
---|
public BSONObject getMainQuery()
public BSONObject[] getOrQueries()
public BSONObject getQueryHints()
protected EJDBQueryBuilder addOperation(java.lang.String field, java.lang.Object value, boolean replace)
field
- field pathvalue
- field valuereplace
- if true
all other restrictions will be replaces, otherwise trying to add restrictions for fieldprotected void addToBSON(BSONObject out, java.lang.String field, java.lang.Object value)
protected void checkHintsAvailable() throws EJDBException
EJDBException
- if hints section if not allowed for current EJDBQueryBuilder objectprotected EJDBQueryBuilder addHint(java.lang.String name, java.lang.Object value) throws EJDBException
EJDBException
- if hints section if not allowed for current EJDBQueryBuilder objectpublic EJDBQueryBuilder field(java.lang.String field, java.lang.Object value)
query.field(field, value); // -> {field : value}
public EJDBQueryBuilder.Constraint field(java.lang.String field)
public EJDBQueryBuilder elementMatch(java.lang.String field)
public EJDBQueryBuilder or() throws EJDBException
OR
joined query restrictions.
EJDBException
- if or section if not allowed for current EJDBQueryBuilder object (in ElementMatch-query, for example)public EJDBQueryBuilder set(java.lang.String field, java.lang.Object value)
query.set(field1, value1).set(field2, value2); // -> { ..., $set : {field1 : value1, field2 : value2}}
public EJDBQueryBuilder upsert(java.lang.String field, java.lang.Object value)
$set
operation, otherwise new record will be inserted with field specified by value.
query.field(field, value).upsert(field, value); // -> {field : value, $upsert : {field : value}}
public EJDBQueryBuilder inc(java.lang.String field, java.lang.Number inc)
query.int(field1, value1).int(field2, value2); // -> { ..., $int : {field1 : value1, field2 : value2}}
public EJDBQueryBuilder dropAll()
query.field("name", "andy").dropAll()
public EJDBQueryBuilder addToSet(java.lang.String field, java.lang.Object value)
public EJDBQueryBuilder addToSetAll(java.lang.String field, java.lang.Object... values)
set union
with values in val for specified array field.
public EJDBQueryBuilder addToSetAll(java.lang.String field, java.util.Collection<java.lang.Object> values)
set union
with values in val for specified array field.
public EJDBQueryBuilder pull(java.lang.String field, java.lang.Object value)
public EJDBQueryBuilder pullAll(java.lang.String field, java.lang.Object... values)
set substraction
of values for specified array field.
public EJDBQueryBuilder pullAll(java.lang.String field, java.util.Collection<java.lang.Object> values)
set substraction
of values for specified array field.
public EJDBQueryBuilder join(java.lang.String fpath, java.lang.String collname)
public EJDBQueryBuilder setMaxResults(int maxResults)
public EJDBQueryBuilder setOffset(int offset)
public EJDBQueryBuilder setFieldIncluded(java.lang.String field, boolean incldue)
$orderby
clause it will be forced to include in resulting records.
public EJDBQueryBuilder includeField(java.lang.String field)
$orderby
clause it will be forced to include in resulting records.
public EJDBQueryBuilder excludeField(java.lang.String field)
$orderby
clause it will be forced to include in resulting records.
public EJDBQueryBuilder.OrderBy orderBy()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |