@Override public Object getProperty(Object object, QName name) throws Exception { Not not = (Not) object; if (OGC.spatialOps.equals(name) && not.getFilter() instanceof BinarySpatialOperator) { return not.getFilter(); } if (OGC.logicOps.equals(name) && not.getFilter() instanceof BinaryLogicOperator) { return not.getFilter(); } if (OGC.comparisonOps.equals(name) && not.getFilter() instanceof BinaryComparisonOperator) { return not.getFilter(); } if (OGC.comparisonOps.equals(name) && not.getFilter() instanceof PropertyIsNull) { return not.getFilter(); } return null; } }
public Object visit(Not filter, Object data) { Filter child = filter.getFilter(); if (child != null) { data = child.accept(this, data); } return data; }
public Object visit(Not filter, Object data) { if (data == null) return data; Filter child = filter.getFilter(); if (child != null) { data = child.accept(this, data); } return data; }
/** * Sets <code>extraData</code> to Boolean.FALSE to revert the truth value of the spatial filter * contained, if any. */ @Override public Object visit(Not filter, Object extraData) { Boolean truth = Boolean.FALSE; Filter negated = filter.getFilter(); return negated.accept(this, truth); } }
public Object visit(Not filter, Object data) { Filter child = filter.getFilter(); if (child != null) { data = child.accept(this, data); } return data; }
public Object visit(Not filter, Object data) { Filter child = filter.getFilter(); if (child != null) { children.add(child); data = child.accept(this, data); } return data; } },
public static Object buildNot(FilterVisitor filterToCQL, Not filter, Object extraData) { StringBuilder output = asStringBuilder(extraData); output.append("NOT ("); filter.getFilter().accept(filterToCQL, output); output.append(")"); return output; }
/** * Write the SQL for a Not filter * * @param filter the filter to visit * @param extraData extra data (unused by this method) */ public Object visit(Not filter, Object extraData) { try { if (filter.getFilter() instanceof PropertyIsNull) { Expression expr = ((PropertyIsNull) filter.getFilter()).getExpression(); expr.accept(this, extraData); out.write(" IS NOT NULL "); } else { out.write("NOT ("); filter.getFilter().accept(this, extraData); out.write(")"); } return extraData; } catch (IOException e) { throw new RuntimeException(IO_ERROR, e); } }
public Object visit(Not filter, Object arg1) { Filter unrolled = (Filter) filter.getFilter().accept(this, null); unrolled = ff.not(unrolled); return unrolled; }
private Filter translateOr(Or filter) throws IllegalFilterException { if (!(filter instanceof Or)) { return filter; } // a|b == ~~(a|b) negative introduction // ~(a|b) == (~a + ~b) modus ponens // ~~(a|b) == ~(~a + ~b) substitution // a|b == ~(~a + ~b) negative simpilification Iterator i = filter.getChildren().iterator(); List translated = new ArrayList(); while (i.hasNext()) { Filter f = (Filter) i.next(); if (f instanceof Not) { // simplify it Not logic = (Not) f; Filter next = logic.getFilter(); translated.add(next); } else { translated.add(ff.not(f)); } } Filter and = ff.and(translated); return ff.not(and); }
public Object visit(Not filter, Object extraData) { start("Not"); filter.getFilter().accept(this, extraData); end("Not"); return extraData; }
public Object visit(Not filter, Object extraData) { ScalarCapabilities scalar = capabilities.getScalarCapabilities(); if (scalar == null || !scalar.hasLogicalOperators()) { return false; } return (Boolean) filter.getFilter().accept(this, null); }
@Override public Object visit(Not filter, Object extraData) { BasicDBObject output = asDBObject(extraData); BasicDBObject expr = (BasicDBObject) filter.getFilter().accept(this, null); output.put("$not", expr); return output; }
public Object visit(Not filter, Object extraData) { return getFactory(extraData).not((Filter) filter.getFilter().accept(this, extraData)); }
public void testParse() throws Exception { FilterMockData.not(document, document); Not not = (Not) parse(); assertNotNull(not.getFilter()); }
public void testParse() throws Exception { FilterMockData.not(document, document); Not not = (Not) parse(); assertNotNull(not.getFilter()); }
/** * @see org.geotools.xml.schema.Type#encode(org.geotools.xml.schema.Element, * java.lang.Object, org.geotools.xml.PrintHandler, java.util.Map) */ public void encode(Element element, Object value, PrintHandler output, Map hints) throws IOException, OperationNotSupportedException { if (!canEncode(element, value, hints)) { return; } Not lf = (Not) value; output.startElement(element.getNamespace(), element.getName(), null); encodeFilter(lf.getFilter(), output, hints); output.endElement(element.getNamespace(), element.getName()); } }
public void testNotFilter() { // set GEOT-1566 PropertyIsLike like = fac.like(fac.property("stringProperty"), "ab*"); Not not = fac.not(like); DuplicatingFilterVisitor visitor = new DuplicatingFilterVisitor(fac); Not clone = (Not) not.accept(visitor, null); assertEquals(not, clone); assertNotSame(not, clone); assertNotSame(like, clone.getFilter()); }