/** * Validates a collection of anything splitable. This implies that it contains <code> * {@link CreditSplit}</code> instances. * * @param splitable_it * @param creditType * @param greaterCummulative * @return boolean is valid? */ public boolean validateCreditSplitable( Iterator<? extends CreditSplitable> splitable_it, InvestigatorCreditType creditType, DecimalHolder greaterCummulative) { if (!splitable_it.hasNext()) { return isCreditSplitTotalValid(greaterCummulative.getValue()); } boolean retval = true; CreditSplitable splitable = splitable_it.next(); info(VALIDATING_MESSAGE, getCreditSplitableName(splitable)); DecimalHolder lesserCummulative = new DecimalHolder(KualiDecimal.ZERO); retval &= validateCreditSplit(splitable.getCreditSplits().iterator(), creditType, lesserCummulative); greaterCummulative.add(lesserCummulative); return retval & validateCreditSplitable(splitable_it, creditType, greaterCummulative); }
/** @see java.lang.Comparable#compareTo(java.lang.Object) */ public int compareTo(DecimalHolder obj) { return value.compareTo(obj.getValue()); }
public void add(DecimalHolder val) { value = value.add(val.getValue()); }