package net.toodarkpark.util.comparison; import java.util.*; import org.apache.commons.collections.Predicate; /* * Combine multiple Predicates into one. */ public class AndPredicate implements Predicate { protected Collection qualifiers; private AndPredicate() { super(); qualifiers = null; } public AndPredicate( Collection list ) { this(); qualifiers = list; } public boolean evaluate( Object obj ) { Iterator iterator = qualifiers.iterator(); while( iterator.hasNext() ) { Predicate currentQualif = (Predicate)iterator.next(); // keep comparing until we get a false return value. if( currentQualif.evaluate( obj ) == false ) { return false; } } // we're done comparing; the objects match! return true; } }