private FieldEnd<? extends Query<T>> field(String field, boolean validate) { return new FieldEndImpl<QueryImpl<T>>(this, field, this, validate); }
public T exists() { return addCrit(FilterOperator.EXISTS, true); }
public T near(double x, double y, double radius, boolean spherical) { return addGeoCrit(spherical ? FilterOperator.NEAR_SPHERE : FilterOperator.NEAR, new double[]{x, y}, opts("$maxDistance", radius)); }
public T near(double x, double y, boolean spherical) { return addGeoCrit(spherical ? FilterOperator.NEAR_SPHERE : FilterOperator.NEAR, new double[]{x, y}, null); }
public T near(double x, double y, double radius) { return near(x, y, radius, false); }
public T notIn(Iterable<?> vals) { return this.hasNoneOf(vals); }
public T in(Iterable<?> vals) { return this.hasAnyOf(vals); }
public T within(double x, double y, double radius) { return within(x, y, radius, false); }
public T within(double x, double y, double radius, boolean spherical) { return addGeoCrit(spherical ? FilterOperator.WITHIN_CIRCLE_SPHERE : FilterOperator.WITHIN_CIRCLE, new Object[]{new double[]{x, y}, radius}, null); }
public T near(double x, double y) { return near(x, y, false); }
public T sizeEq(int val) { return addCrit(FilterOperator.SIZE, val); }
private FieldEnd<? extends CriteriaContainer> criteria(String field, boolean validateName) { return new FieldEndImpl<CriteriaContainerImpl>(this.query, field, this, validateName); }
public T within(double x1, double y1, double x2, double y2) { return addGeoCrit(FilterOperator.WITHIN_BOX, new double[][]{new double[]{x1, y1}, new double[]{x2, y2}}, null); }
public T doesNotExist() { return addCrit(FilterOperator.EXISTS, false); }
private FieldEnd<? extends CriteriaContainerImpl> criteria(String field, boolean validate) { CriteriaContainerImpl container = new CriteriaContainerImpl(this, CriteriaJoin.AND); this.add(container); return new FieldEndImpl<CriteriaContainerImpl>(this, field, container, validate); }
public T notEqual(Object val) { return addCrit(FilterOperator.NOT_EQUAL, val); }
public T equal(Object val) { return addCrit(FilterOperator.EQUAL, val); }
public T hasThisOne(Object val) { return addCrit(FilterOperator.EQUAL, val); }
public T greaterThanOrEq(Object val) { Assert.parametersNotNull("val", val); return addCrit(FilterOperator.GREATER_THAN_OR_EQUAL, val); }
public T hasThisElement(Object val) { Assert.parametersNotNull("val", val); return addCrit(FilterOperator.ELEMENT_MATCH, val); }