Dart Documentationobjectory_queryObjectoryQueryBuilder

ObjectoryQueryBuilder class

class ObjectoryQueryBuilder extends SelectorBuilder{

 bool paramFetchLinks = false;
 toString() => "ObjectoryQueryBuilder($map)";



 Map get extParamsMap => {'skip': paramSkip, 'limit': paramLimit, 'fetchLinksMode': paramFetchLinks};


 ObjectoryQueryBuilder eq(String fieldName,value) => super.eq(fieldName, value);
 ObjectoryQueryBuilder id(ObjectId value) => super.id(value);
 ObjectoryQueryBuilder ne(String fieldName, value) => super.ne(fieldName, value);
 ObjectoryQueryBuilder gt(String fieldName,value)=>super.gt(fieldName, value);
 ObjectoryQueryBuilder lt(String fieldName,value) => super.lt(fieldName, value);
 ObjectoryQueryBuilder lte(String fieldName,value) => super.lte(fieldName, value);
 ObjectoryQueryBuilder all(String fieldName, List values) => super.all(fieldName, values);
 ObjectoryQueryBuilder nin(String fieldName, List values) => super.nin(fieldName, values);
 ObjectoryQueryBuilder oneFrom(String fieldName, List values) => super.oneFrom(fieldName, values);
 ObjectoryQueryBuilder exists(String fieldName) => super.exists(fieldName);
 ObjectoryQueryBuilder notExists(String fieldName) => super.notExists(fieldName);
 ObjectoryQueryBuilder mod(String fieldName, int value) => super.mod(fieldName, value);
 ObjectoryQueryBuilder match(String fieldName, String pattern,{bool multiLine, bool caseInsensitive, bool dotAll, bool extended})
   => super.match(fieldName, pattern, multiLine: multiLine, caseInsensitive: caseInsensitive, dotAll: dotAll, extended: extended);
 ObjectoryQueryBuilder inRange(String fieldName, min, max, {bool minInclude: true, bool maxInclude: false})
  => super.inRange(fieldName, min, max, minInclude: minInclude, maxInclude: maxInclude);
 ObjectoryQueryBuilder comment(String commentStr) => super.comment(commentStr);
 ObjectoryQueryBuilder explain() => super.explain();
 ObjectoryQueryBuilder snapshot() => super.snapshot();
 ObjectoryQueryBuilder showDiskLoc() => super.showDiskLoc();
 ObjectoryQueryBuilder returnKey() => super.returnKey();
 ObjectoryQueryBuilder jsQuery(String javaScriptCode) => super.jsQuery(javaScriptCode);
 ObjectoryQueryBuilder fields(List<String> fields) => throw new Exception('Not impemented in Objectory');
 ObjectoryQueryBuilder excludeFields(List<String> fields) =>  throw new Exception('Not impemented in Objectory');
 ObjectoryQueryBuilder limit(int limit) => super.limit(limit);
 ObjectoryQueryBuilder skip(int skip) => super.skip(skip);
 ObjectoryQueryBuilder raw(Map rawSelector) => super.raw(rawSelector);
 ObjectoryQueryBuilder within(String fieldName, value) => super.within(fieldName, value);
 ObjectoryQueryBuilder near(String fieldName, var value, [double maxDistance]) => super.near(fieldName, value);
 ObjectoryQueryBuilder sortBy(String fieldName, {bool descending: false}) => super.sortBy(fieldName, descending: descending);
 ObjectoryQueryBuilder and(ObjectoryQueryBuilder other) => super.and(other);
 ObjectoryQueryBuilder or(ObjectoryQueryBuilder other) => super.or(other);

 ObjectoryQueryBuilder fetchLinks() {
   paramFetchLinks = true;
   return this;
 }
 
 ObjectoryQueryBuilder references(String propertyName, PersistentObject model) => eq(propertyName, new DbRef(model.collectionName, model.id));
 ObjectoryQueryBuilder containsReference(String propertyName, PersistentObject model) => oneFrom(propertyName, [new DbRef(model.collectionName, model.id)]);
 
 ObjectoryQueryBuilder clone() {
   var copy = where;
   copy.map = new Map.from(map);
   return copy;
 }
}

Extends

SelectorBuilder > ObjectoryQueryBuilder

Properties

final Map extParamsMap #

Map get extParamsMap => {'skip': paramSkip, 'limit': paramLimit, 'fetchLinksMode': paramFetchLinks};

Map map #

inherited from SelectorBuilder
Map map = {}
bool paramFetchLinks = false

Map paramFields #

inherited from SelectorBuilder
Map paramFields

int paramLimit #

inherited from SelectorBuilder
int paramLimit = 0

int paramSkip #

inherited from SelectorBuilder
int paramSkip = 0

Methods

ObjectoryQueryBuilder all(String fieldName, List values) #

ObjectoryQueryBuilder all(String fieldName, List values) => super.all(fieldName, values);

ObjectoryQueryBuilder and(ObjectoryQueryBuilder other) #

Combine current expression with expression in parameter. See MongoDB doc SelectorBuilder provides implicit and operator for chained queries so these two expression will produce identical MongoDB queries

where.eq('price', 1.99).lt('qty', 20).eq('sale', true);
where.eq('price', 1.99).and(where.lt('qty',20)).and(where.eq('sale', true))

Both these queries would produce json map:

{'\$query': {'\$and': [{'price':1.99},{'qty': {'\$lt': 20 }}, {'sale': true }]}}
docs inherited from SelectorBuilder
ObjectoryQueryBuilder and(ObjectoryQueryBuilder other) => super.and(other);

ObjectoryQueryBuilder clone() #

ObjectoryQueryBuilder clone() {
 var copy = where;
 copy.map = new Map.from(map);
 return copy;
}

ObjectoryQueryBuilder comment(String commentStr) #

ObjectoryQueryBuilder comment(String commentStr) => super.comment(commentStr);

ObjectoryQueryBuilder containsReference(String propertyName, PersistentObject model) #

ObjectoryQueryBuilder containsReference(String propertyName, PersistentObject model) => oneFrom(propertyName, [new DbRef(model.collectionName, model.id)]);

ObjectoryQueryBuilder eq(String fieldName, value) #

ObjectoryQueryBuilder eq(String fieldName,value) => super.eq(fieldName, value);

ObjectoryQueryBuilder excludeFields(List<String> fields) #

ObjectoryQueryBuilder excludeFields(List<String> fields) =>  throw new Exception('Not impemented in Objectory');

ObjectoryQueryBuilder exists(String fieldName) #

ObjectoryQueryBuilder exists(String fieldName) => super.exists(fieldName);

ObjectoryQueryBuilder explain() #

ObjectoryQueryBuilder explain() => super.explain();
ObjectoryQueryBuilder fetchLinks() {
 paramFetchLinks = true;
 return this;
}

ObjectoryQueryBuilder fields(List<String> fields) #

ObjectoryQueryBuilder fields(List<String> fields) => throw new Exception('Not impemented in Objectory');

String getQueryString() #

inherited from SelectorBuilder
String getQueryString(){
 var result = JSON.encode(map);
 result = result.replaceAllMapped(objectIdRegexp, (Match match)=>'ObjectId("${match.group(1)}")');
 return result;
}

ObjectoryQueryBuilder gt(String fieldName, value) #

ObjectoryQueryBuilder gt(String fieldName,value)=>super.gt(fieldName, value);

SelectorBuilder gte(String fieldName, value) #

inherited from SelectorBuilder
SelectorBuilder gte(String fieldName,value){
 _addExpression(fieldName,{"\$gte":value});
 return this;
}

SelectorBuilder hint(String fieldName, {bool descending: false}) #

inherited from SelectorBuilder
SelectorBuilder hint(String fieldName, {bool descending: false}){
 _query;
 if (!map.containsKey("\$hint")){
   map["\$hint"] = new LinkedHashMap();
 }
 int order = 1;
 if (descending){
   order = -1;
 }
 map["\$hint"][fieldName] = order;
 return this;
}

ObjectoryQueryBuilder id(ObjectId value) #

ObjectoryQueryBuilder id(ObjectId value) => super.id(value);

ObjectoryQueryBuilder inRange(String fieldName, min, max, {bool minInclude: true, bool maxInclude: false}) #

ObjectoryQueryBuilder inRange(String fieldName, min, max, {bool minInclude: true, bool maxInclude: false})
=> super.inRange(fieldName, min, max, minInclude: minInclude, maxInclude: maxInclude);

ObjectoryQueryBuilder jsQuery(String javaScriptCode) #

ObjectoryQueryBuilder jsQuery(String javaScriptCode) => super.jsQuery(javaScriptCode);

ObjectoryQueryBuilder limit(int limit) #

ObjectoryQueryBuilder limit(int limit) => super.limit(limit);

ObjectoryQueryBuilder lt(String fieldName, value) #

ObjectoryQueryBuilder lt(String fieldName,value) => super.lt(fieldName, value);

ObjectoryQueryBuilder lte(String fieldName, value) #

ObjectoryQueryBuilder lte(String fieldName,value) => super.lte(fieldName, value);

ObjectoryQueryBuilder match(String fieldName, String pattern, {bool multiLine, bool caseInsensitive, bool dotAll, bool extended}) #

ObjectoryQueryBuilder match(String fieldName, String pattern,{bool multiLine, bool caseInsensitive, bool dotAll, bool extended})
 => super.match(fieldName, pattern, multiLine: multiLine, caseInsensitive: caseInsensitive, dotAll: dotAll, extended: extended);

ObjectoryQueryBuilder mod(String fieldName, int value) #

ObjectoryQueryBuilder mod(String fieldName, int value) => super.mod(fieldName, value);

ObjectoryQueryBuilder ne(String fieldName, value) #

ObjectoryQueryBuilder ne(String fieldName, value) => super.ne(fieldName, value);

ObjectoryQueryBuilder near(String fieldName, value, [double maxDistance]) #

ObjectoryQueryBuilder near(String fieldName, var value, [double maxDistance]) => super.near(fieldName, value);

ObjectoryQueryBuilder nin(String fieldName, List values) #

ObjectoryQueryBuilder nin(String fieldName, List values) => super.nin(fieldName, values);

ObjectoryQueryBuilder notExists(String fieldName) #

ObjectoryQueryBuilder notExists(String fieldName) => super.notExists(fieldName);

ObjectoryQueryBuilder oneFrom(String fieldName, List values) #

ObjectoryQueryBuilder oneFrom(String fieldName, List values) => super.oneFrom(fieldName, values);

ObjectoryQueryBuilder or(ObjectoryQueryBuilder other) #

Combine current expression with expression in parameter by logical operator OR. See MongoDB doc For example inventory.find(where.eq('price', 1.99).and(where.lt('qty',20).or(where.eq('sale', true))));

This query will select all documents in the inventory collection where: the price field value equals 1.99 and either the qty field value is less than 20 or the sale field value is true MongoDB json query from this expression would be

 {'\$query': {'\$and': [{'price':1.99}, {'\$or': [{'qty': {'\$lt': 20 }}, {'sale': true }]}]}}
docs inherited from SelectorBuilder
ObjectoryQueryBuilder or(ObjectoryQueryBuilder other) => super.or(other);

ObjectoryQueryBuilder raw(Map rawSelector) #

ObjectoryQueryBuilder raw(Map rawSelector) => super.raw(rawSelector);

ObjectoryQueryBuilder references(String propertyName, PersistentObject model) #

ObjectoryQueryBuilder references(String propertyName, PersistentObject model) => eq(propertyName, new DbRef(model.collectionName, model.id));

ObjectoryQueryBuilder returnKey() #

ObjectoryQueryBuilder returnKey() => super.returnKey();

ObjectoryQueryBuilder showDiskLoc() #

ObjectoryQueryBuilder showDiskLoc() => super.showDiskLoc();

ObjectoryQueryBuilder skip(int skip) #

ObjectoryQueryBuilder skip(int skip) => super.skip(skip);

ObjectoryQueryBuilder snapshot() #

ObjectoryQueryBuilder snapshot() => super.snapshot();

ObjectoryQueryBuilder sortBy(String fieldName, {bool descending: false}) #

ObjectoryQueryBuilder sortBy(String fieldName, {bool descending: false}) => super.sortBy(fieldName, descending: descending);

dynamic toString() #

Returns a string representation of this object.

docs inherited from Object
toString() => "ObjectoryQueryBuilder($map)";

ObjectoryQueryBuilder within(String fieldName, value) #

ObjectoryQueryBuilder within(String fieldName, value) => super.within(fieldName, value);