private Filter negateIfApplicable(Filter myFilter) { if (negated) { return new NotFilter(myFilter); } return myFilter; }
@Test public void testPresentFilter() { PresentFilter filter = new PresentFilter("foo"); assertThat(filter.encode()).isEqualTo("(foo=*)"); NotFilter notFilter = new NotFilter(new PresentFilter("foo")); assertThat(notFilter.encode()).isEqualTo("(!(foo=*))"); AndFilter andFilter = new AndFilter(); andFilter.and(new PresentFilter("foo")); andFilter.and(new PresentFilter("bar")); assertThat(andFilter.encode()).isEqualTo("(&(foo=*)(bar=*))"); andFilter = new AndFilter(); andFilter.and(new PresentFilter("foo")); andFilter.and(new NotFilter(new PresentFilter("bar"))); assertThat(andFilter.encode()).isEqualTo("(&(foo=*)(!(bar=*)))"); }
private Filter negateIfApplicable(Filter myFilter) { if (negated) { return new NotFilter(myFilter); } return myFilter; }
@Test public void testNotPresentFilter() { NotPresentFilter filter = new NotPresentFilter("foo"); assertThat(filter.encode()).isEqualTo("(!(foo=*))"); NotFilter notFilter = new NotFilter(new NotPresentFilter("foo")); assertThat(notFilter.encode()).isEqualTo("(!(!(foo=*)))"); AndFilter andFilter = new AndFilter(); andFilter.and(new NotPresentFilter("foo")); andFilter.and(new NotPresentFilter("bar")); assertThat(andFilter.encode()).isEqualTo("(&(!(foo=*))(!(bar=*)))"); andFilter = new AndFilter(); andFilter.and(new NotPresentFilter("foo")); andFilter.and(new NotFilter(new NotPresentFilter("bar"))); assertThat(andFilter.encode()).isEqualTo("(&(!(foo=*))(!(!(bar=*))))"); }
private Filter negateIfApplicable(Filter myFilter) { if (negated) { return new NotFilter(myFilter); } return myFilter; }
@Test public void testHardcodedFilter() { HardcodedFilter filter = new HardcodedFilter("(foo=a*b)"); assertThat(filter.encode()).isEqualTo("(foo=a*b)"); NotFilter notFilter = new NotFilter(new HardcodedFilter("(foo=a*b)")); assertThat(notFilter.encode()).isEqualTo("(!(foo=a*b))"); AndFilter andFilter = new AndFilter(); andFilter.and(new HardcodedFilter("(foo=a*b)")); andFilter.and(new HardcodedFilter("(bar=a*b)")); assertThat(andFilter.encode()).isEqualTo("(&(foo=a*b)(bar=a*b))"); andFilter = new AndFilter(); andFilter.and(new HardcodedFilter("(foo=a*b)")); andFilter.and(new NotFilter(new HardcodedFilter("(bar=a*b)"))); assertThat(andFilter.encode()).isEqualTo("(&(foo=a*b)(!(bar=a*b)))"); }
private Filter negateIfApplicable(Filter myFilter) { if (negated) { return new NotFilter(myFilter); } return myFilter; }
@Test public void testEquals() { EqualsFilter filter = new EqualsFilter("a", "b"); NotFilter originalObject = new NotFilter(filter); NotFilter identicalObject = new NotFilter(filter); NotFilter differentObject = new NotFilter(new EqualsFilter("a", "a")); NotFilter subclassObject = new NotFilter(filter) { }; new EqualsTester(originalObject, identicalObject, differentObject, subclassObject); } }
orFilter2.or(new NotFilter(new LikeFilter(contexte, "*"))); filter.and(orFilter2); ApplicationAttributMapper applicationAttributMapper = new ApplicationAttributMapper();
@Override public Object visit(Operation<?> expr, Void context) { Operator operator = expr.getOperator(); if (operator == Ops.EQ) { return new EqualsFilter(attribute(expr), value(expr)); } else if (operator == Ops.AND) { return new AndFilter().and(handle(expr.getArg(0))).and(handle(expr.getArg(1))); } else if (operator == Ops.OR) { return new OrFilter().or(handle(expr.getArg(0))).or(handle(expr.getArg(1))); } else if (operator == Ops.NOT) { return new NotFilter(handle(expr.getArg(0))); } else if (operator == Ops.LIKE) { return new LikeFilter(attribute(expr), value(expr)); } else if (operator == Ops.STARTS_WITH || operator == Ops.STARTS_WITH_IC) { return new LikeFilter(attribute(expr), value(expr) + "*"); } else if (operator == Ops.ENDS_WITH || operator == Ops.ENDS_WITH_IC) { return new LikeFilter(attribute(expr), "*" + value(expr)); } else if (operator == Ops.STRING_CONTAINS || operator == Ops.STRING_CONTAINS_IC) { return new LikeFilter(attribute(expr), "*" + value(expr) + "*"); } else if (operator == Ops.IS_NOT_NULL) { return new PresentFilter(attribute(expr)); } else if (operator == Ops.IS_NULL) { return new NotFilter(new PresentFilter(attribute(expr))); } else if (operator == Ops.GOE) { return new GreaterThanOrEqualsFilter(attribute(expr), value(expr)); } else if (operator == Ops.LOE) { return new LessThanOrEqualsFilter(attribute(expr), value(expr)); } throw new UnsupportedOperationException("Unsupported operator " + operator.toString()); }