Class QConstraints
- java.lang.Object
-
- com.db4o.internal.query.processor.QCon
-
- com.db4o.internal.query.processor.QConstraints
-
- All Implemented Interfaces:
Visitor4,Constraint,Constraints,Unversioned
public class QConstraints extends QCon implements Constraints
Array of constraints for queries. Necessary to be returned to Query#constraints()
-
-
Field Summary
-
Fields inherited from class com.db4o.internal.query.processor.QCon
_children, i_evaluator, i_parent
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancanResolveByFieldIndex()Constraintcontains()Sets the evaluation mode to string contains comparison.ConstraintendsWith(boolean caseSensitive)Sets the evaluation mode to string endsWith comparison.Constraintequal()Used in conjunction withConstraint.smaller()orConstraint.greater()to create constraints like "smaller or equal", "greater or equal".java.lang.ObjectgetObject()Returns the Object the query graph was constrained with to create thisConstraint.Constraintgreater()Sets the evaluation mode to >.Constraintidentity()Sets the evaluation mode to identity comparison.Constraintlike()Sets the evaluation mode to "like" comparison.Constraintnot()Turns on not() comparison.Constraintsmaller()Sets the evaluation mode to <.ConstraintstartsWith(boolean caseSensitive)Sets the evaluation mode to string startsWith comparison.Constraint[]toArray()returns an array of the containedConstraintobjects.-
Methods inherited from class com.db4o.internal.query.processor.QCon
and, byExample, canBeIndexLeaf, canLoadByIndex, childrenCount, container, evaluator, getField, hasChildren, hasJoins, hasObjectInParentPath, hasParent, id, identityID, internalSetProcessedByIndex, iterateChildren, iterateJoins, onSameFieldAs, or, parent, processedByIndex, setCandidates, setProcessedByIndex, streamLock, transaction, visit
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.db4o.query.Constraint
and, byExample, or
-
-
-
-
Method Detail
-
toArray
public Constraint[] toArray()
Description copied from interface:Constraintsreturns an array of the containedConstraintobjects.- Specified by:
toArrayin interfaceConstraints- Returns:
- an array of the contained
Constraintobjects.
-
contains
public Constraint contains()
Description copied from interface:ConstraintSets the evaluation mode to string contains comparison. This only works on strings. The contains comparison is case sensitive. For example:
Pilot pilot = new Pilot("Test Pilot1", 100); container.store(pilot); ... query.constrain(Pilot.class); // All pilots with the name containing "est" will be retrieved query.descend("name").constrain("est").contains();- Specified by:
containsin interfaceConstraint- Overrides:
containsin classQCon- Returns:
- this to allow the chaining of method calls.
- See Also:
like() for case insensitive string comparison
-
equal
public Constraint equal()
Description copied from interface:ConstraintUsed in conjunction withConstraint.smaller()orConstraint.greater()to create constraints like "smaller or equal", "greater or equal". For example:
query.constrain(Pilot.class); query.descend("points").constrain(101).smaller().equal();
will return all pilots with points <= 101.- Specified by:
equalin interfaceConstraint- Overrides:
equalin classQCon- Returns:
- this
Constraintto allow the chaining of method calls.
-
greater
public Constraint greater()
Description copied from interface:ConstraintSets the evaluation mode to >. For example:
query.constrain(Pilot.class); query.descend("points").constrain(101).greater()
will return all pilots with points > 101.- Specified by:
greaterin interfaceConstraint- Overrides:
greaterin classQCon- Returns:
- this
Constraintto allow the chaining of method calls.
-
identity
public Constraint identity()
Description copied from interface:ConstraintSets the evaluation mode to identity comparison. In this case only objects having the same database identity will be included in the result set. For example:
Pilot pilot = new Pilot("Test Pilot1", 100); Car car = new Car("Ferrari", pilot); container.store(car); Car otherCar = new Car("Ferrari", pilot); container.store(otherCar); Query query = container.query(); query.constrain(Car.class); // All cars having pilot with the same database identity // will be retrieved. query.descend("pilot").constrain(pilot).identity();- Specified by:
identityin interfaceConstraint- Overrides:
identityin classQCon- Returns:
- this
Constraintto allow the chaining of method calls.
-
not
public Constraint not()
Description copied from interface:ConstraintTurns on not() comparison. All objects not full filling the constrain condition will be returned. For example:
Pilot pilot = new Pilot("Test Pilot1", 100); container.store(pilot); ... query.constrain(Pilot.class); query.descend("name").constrain("t0").endsWith(true).not();- Specified by:
notin interfaceConstraint- Overrides:
notin classQCon- Returns:
- this
Constraintto allow the chaining of method calls.
-
like
public Constraint like()
Description copied from interface:ConstraintSets the evaluation mode to "like" comparison. This is a contains comparison which is case insensitive. This only works on strings. This mode will include all objects having the constrain expression somewhere inside the string field. For example:
Pilot pilot = new Pilot("Test Pilot1", 100); container.store(pilot); ... query.constrain(Pilot.class); // All pilots with the name containing "est" will be retrieved query.descend("name").constrain("est").like();- Specified by:
likein interfaceConstraint- Overrides:
likein classQCon- Returns:
- this to allow the chaining of method calls.
-
startsWith
public Constraint startsWith(boolean caseSensitive)
Description copied from interface:ConstraintSets the evaluation mode to string startsWith comparison. For example:
Pilot pilot = new Pilot("Test Pilot0", 100); container.store(pilot); ... query.constrain(Pilot.class); query.descend("name").constrain("Test").startsWith(true);- Specified by:
startsWithin interfaceConstraint- Overrides:
startsWithin classQCon- Parameters:
caseSensitive- comparison will be case sensitive if true, case insensitive otherwise- Returns:
- this to allow the chaining of method calls.
-
endsWith
public Constraint endsWith(boolean caseSensitive)
Description copied from interface:ConstraintSets the evaluation mode to string endsWith comparison. For example:
Pilot pilot = new Pilot("Test Pilot0", 100); container.store(pilot); ...
query.constrain(Pilot.class); query.descend("name").constrain("T0").endsWith(false);- Specified by:
endsWithin interfaceConstraint- Overrides:
endsWithin classQCon- Parameters:
caseSensitive- comparison will be case sensitive if true, case insensitive otherwise- Returns:
- this to allow the chaining of method calls.
-
smaller
public Constraint smaller()
Description copied from interface:ConstraintSets the evaluation mode to <. For example:
query.constrain(Pilot.class); query.descend("points").constrain(101).smaller()
will return all pilots with points < 101.- Specified by:
smallerin interfaceConstraint- Overrides:
smallerin classQCon- Returns:
- this
Constraintto allow the chaining of method calls.
-
getObject
public java.lang.Object getObject()
Description copied from interface:ConstraintReturns the Object the query graph was constrained with to create thisConstraint.- Specified by:
getObjectin interfaceConstraint- Overrides:
getObjectin classQCon- Returns:
- Object the constraining object.
-
canResolveByFieldIndex
protected boolean canResolveByFieldIndex()
- Specified by:
canResolveByFieldIndexin classQCon
-
-