@Override public boolean passesFilter(FiltrationItem item) { Object value = item.getFiltrationProperty(getPropertyId()); switch (getCompareType()) { case Equals: return ( null == this.value ) ? ( null == value ) : this.value.equals(value); case GreaterThan: return compareValue(value) > 0; case LessThan: return compareValue(value) < 0; case GreaterOrEqual: return compareValue(value) >= 0; case LessOrEqual: return compareValue(value) <= 0; } // all cases should have been processed above return false; }
@SuppressWarnings({"unchecked", "rawtypes"}) protected int compareValue(Object value1) { if (null == value) { return null == value1 ? 0 : -1; } else if (null == value1) { return 1; } else if (getValue() instanceof Comparable && value1.getClass().isAssignableFrom(getValue().getClass())) { return -( (Comparable) getValue() ).compareTo(value1); } throw new IllegalArgumentException("Could not compare the arguments: " + value1 + ", " + getValue()); } }
public boolean interpret(WhereClause clause, CompareFilter filter) { String paramName = getParamName(); String operator = null; switch (filter.getCompareType()) { case Equals: operator = "="; break; case GreaterOrEqual: operator = ">="; break; case GreaterThan: operator = ">"; break; case LessOrEqual: operator = "<="; break; case LessThan: operator = "<"; break; } String jpql = "e." + filter.getPropertyId() + operator + ":" + paramName; clause.appendStatement(jpql); clause.appendParameter(paramName, filter.getValue()); return true; } }
public boolean interpret(WhereClause clause, CompareFilter filter) { String paramName = getParamName(); String operator = null; switch (filter.getCompareType()) { case Equals: operator = "="; break; case GreaterOrEqual: operator = ">="; break; case GreaterThan: operator = ">"; break; case LessOrEqual: operator = "<="; break; case LessThan: operator = "<"; break; } String jpql = "e." + filter.getPropertyId() + operator + ":" + paramName; clause.appendStatement(jpql); clause.appendParameter(paramName, filter.getValue()); return true; } }
switch(cf.getCompareType()) { case Equals: return cf.getPropertyId() + ":" +cf.getValue(); return cf.getPropertyId() + ":[" + cf.getValue() + " TO " + Long.MAX_VALUE + "]"; case GreaterThan: return cf.getPropertyId() + ":{" + cf.getValue() + " TO " + Long.MAX_VALUE + "}"; case LessOrEqual: return cf.getPropertyId() + ":[0 TO " + cf.getValue() + "]"; case LessThan: return cf.getPropertyId() + "{0 TO " + cf.getValue() + "}";
@Override public boolean passesFilter(FiltrationItem item) { Object value = item.getFiltrationProperty(getPropertyId()); switch (getCompareType()) { case Equals: return ( null == this.value ) ? ( null == value ) : this.value.equals(value); case GreaterThan: return compareValue(value) > 0; case LessThan: return compareValue(value) < 0; case GreaterOrEqual: return compareValue(value) >= 0; case LessOrEqual: return compareValue(value) <= 0; } // all cases should have been processed above return false; }
@SuppressWarnings({"unchecked", "rawtypes"}) protected int compareValue(Object value1) { if (null == value) { return null == value1 ? 0 : -1; } else if (null == value1) { return 1; } else if (getValue() instanceof Comparable && value1.getClass().isAssignableFrom(getValue().getClass())) { return -( (Comparable) getValue() ).compareTo(value1); } throw new IllegalArgumentException("Could not compare the arguments: " + value1 + ", " + getValue()); } }
switch (cf.getCompareType()) { case Equals: return new TermQuery(new Term(cf.getPropertyId(), cf.getValue().toString()));