in src/java/org/apache/fulcrum/intake/validator/IntegerRangeValidator.java [89:158]
public void init(Map<String, ? extends Constraint> paramMap)
throws InvalidMaskException
{
super.init(paramMap);
compareCallback = new CompareCallback<Integer>()
{
/**
* Compare the given values using the compare operation provided
*
* @param compare type of compare operation
* @param thisValue value of this field
* @param refValue value of the reference field
*
* @return the result of the comparison
*/
@Override
public boolean compareValues(Comparison compare, Integer thisValue, Integer refValue)
{
boolean result = true;
switch (compare)
{
case LT:
result = thisValue.compareTo(refValue) < 0;
break;
case LTE:
result = thisValue.compareTo(refValue) <= 0;
break;
case GT:
result = thisValue.compareTo(refValue) > 0;
break;
case GTE:
result = thisValue.compareTo(refValue) >= 0;
break;
}
return result;
}
};
fieldReferences = new ArrayList<FieldReference>(10);
for (Map.Entry<String, ? extends Constraint> entry : paramMap.entrySet())
{
String key = entry.getKey();
Constraint constraint = entry.getValue();
Comparison compare = FieldReference.getComparisonType(key);
if (compare != null)
{
// found matching constraint
FieldReference fieldref = new FieldReference();
fieldref.setComparison(compare);
fieldref.setFieldName(constraint.getValue());
fieldref.setMessage(constraint.getMessage());
fieldReferences.add(fieldref);
}
}
if (fieldReferences.isEmpty())
{
log.warn("No reference field rules have been found.");
}
}