@Override public Object getFiltrationProperty(String propertyId) { String preparedId = capitalize(propertyId); Method method = null; for (String type : GETTERTYPES) { method = lookupGetterMethod(type + preparedId); if (method != null) { break; } } if (method != null) { return invoke(method); } return null; }
@Override public boolean passesFilter(FiltrationItem item) { Object value = item.getFiltrationProperty(this.getPropertyId()); int comparedToStart = compareValues(startValue, value); int comparedToEnd = compareValues(endValue, value); return comparedToStart >= 0 && comparedToEnd <= 0; }
@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; }
@Override public boolean passesFilter(FiltrationItem item) { Object value = item.getFiltrationProperty(getPropertyId()); if (!(value instanceof String)) { // We can only handle strings return false; } String colValue = (String) value; String pattern = getValue().replace("%", ".*"); if (isCaseSensitive()) { return colValue.matches(pattern); } return colValue.toUpperCase().matches(pattern.toUpperCase()); } }
@Override public boolean passesFilter(FiltrationItem filterItem) { Object value = filterItem.getFiltrationProperty(getPropertyId()); return null == value; }
@Override public boolean passesFilter(FiltrationItem item) { if(item == null) { return false; } for(Filter filter : getFilters()) { if(!filter.passesFilter(item)) { return false; } } return true; }
@Override public boolean passesFilter(FiltrationItem item) { if(item == null) { return false; } for(Filter filter : getFilters()) { if(filter.passesFilter(item)) { return true; } } return false; } }
public boolean interpret(WhereClause clause, ContainsFilter filter) { if (filter.getValue() == null) { return false; } String paramName = getParamName(); String jpql = ":" + paramName + " in elements(e." + filter.getPropertyId() + ")"; clause.appendStatement(jpql); clause.appendParameter(paramName, filter.getValue()); return true; } }
@Override public boolean passesFilter(FiltrationItem item) { Object o = item.getFiltrationProperty(super.getPropertyId()); if(o instanceof Collection) { return ((Collection)o).contains(value); } else { return false; } }
private List<BEANTYPE> filterList(List<BEANTYPE> list, Filter filter) { List<BEANTYPE> filtered = new ArrayList(); for (BEANTYPE e : list) { FiltrationItem fi = new BeanFiltrationItem(e); if (filter.passesFilter(fi)) { filtered.add(e); } } return filtered; }
@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; }
@Override public Object getFiltrationProperty(String propertyId) { String preparedId = capitalize(propertyId); Method method = null; for (String type : GETTERTYPES) { method = lookupGetterMethod(type + preparedId); if (method != null) { break; } } if (method != null) { return invoke(method); } return null; }
public boolean interpret(WhereClause clause, IsNullFilter filter) { clause.appendStatement("e." + filter.getPropertyId() + " IS NULL"); return true; }
@Override public boolean passesFilter(FiltrationItem item) { if(item == null) { return false; } for(Filter filter : getFilters()) { if(!filter.passesFilter(item)) { return false; } } return true; }
@Override public boolean passesFilter(FiltrationItem item) { if(item == null) { return false; } for(Filter filter : getFilters()) { if(filter.passesFilter(item)) { return true; } } return false; } }
@Override public boolean passesFilter(FiltrationItem item) { Object value = item.getFiltrationProperty(this.getPropertyId()); int comparedToStart = compareValues(startValue, value); int comparedToEnd = compareValues(endValue, value); return comparedToStart >= 0 && comparedToEnd <= 0; }
public boolean interpret(WhereClause clause, ContainsFilter filter) { if (filter.getValue() == null) { return false; } String paramName = getParamName(); String jpql = ":" + paramName + " in elements(e." + filter.getPropertyId() + ")"; clause.appendStatement(jpql); clause.appendParameter(paramName, filter.getValue()); return true; } }
@Override public boolean passesFilter(FiltrationItem item) { Object o = item.getFiltrationProperty(super.getPropertyId()); if(o instanceof Collection) { return ((Collection)o).contains(value); } else { return false; } }
public boolean interpret(WhereClause clause, IsNullFilter filter) { clause.appendStatement("e." + filter.getPropertyId() + " IS NULL"); return true; }
@Override public boolean passesFilter(FiltrationItem filterItem) { Object value = filterItem.getFiltrationProperty(getPropertyId()); return null == value; }