/** * Returns Predicate for '=isnull=' case depending on its arguments. * <p> * NOTE: Filter Expression builder specially for '=isnull=' case. * * @return Returns Predicate for '=isnull=' case depending on its arguments. */ private FilterExpression buildIsNullOperator(Path path, List<String> arguments) { String arg = arguments.get(0); try { boolean wantsNull = CoerceUtil.coerce(arg, boolean.class); if (wantsNull) { return new IsNullPredicate(path); } return new NotNullPredicate(path); } catch (InvalidValueException ignored) { throw new RSQLParseException(String.format("Invalid value for operator =isnull= '%s'", arg)); } } }
/** * Returns Predicate for '=isnull=' case depending on its arguments. * <p> * NOTE: Filter Expression builder specially for '=isnull=' case. * * @return Returns Predicate for '=isnull=' case depending on its arguments. */ private FilterExpression buildIsNullOperator(Path path, List<String> arguments) { String arg = arguments.get(0); try { boolean wantsNull = CoerceUtil.coerce(arg, boolean.class); if (wantsNull) { return new IsNullPredicate(path); } return new NotNullPredicate(path); } catch (InvalidValueException ignored) { throw new RSQLParseException(String.format("Invalid value for operator =isnull= '%s'", arg)); } } }
@Override public FilterPredicate getFilterExpression(Class entityClass, com.yahoo.elide.security.RequestScope requestScope) { Path path = super.getFieldPath(entityClass, requestScope, "getEditor", "editor"); return new NotNullPredicate(path); } }
@Override public FilterExpression getFilterExpression(Class<?> entityClass, RequestScope requestScope) { return new NotNullPredicate(new Path.PathElement(Child.class, Long.class, "id")); } }