Class OnePredicate<T>
- java.lang.Object
-
- org.apache.commons.collections4.functors.AbstractQuantifierPredicate<T>
-
- org.apache.commons.collections4.functors.OnePredicate<T>
-
- All Implemented Interfaces:
java.io.Serializable
,PredicateDecorator<T>
,Predicate<T>
public final class OnePredicate<T> extends AbstractQuantifierPredicate<T>
Predicate implementation that returns true if only one of the predicates return true. If the array of predicates is empty, then this predicate returns false.NOTE: In versions prior to 3.2 an array size of zero or one threw an exception.
- Since:
- 3.0
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description OnePredicate(Predicate<? super T>... predicates)
Constructor that performs no validation.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
evaluate(T object)
Evaluates the predicate returning true if only one decorated predicate returns true.static <T> Predicate<T>
onePredicate(java.util.Collection<? extends Predicate<? super T>> predicates)
Factory to create the predicate.static <T> Predicate<T>
onePredicate(Predicate<? super T>... predicates)
Factory to create the predicate.-
Methods inherited from class org.apache.commons.collections4.functors.AbstractQuantifierPredicate
getPredicates
-
-
-
-
Method Detail
-
onePredicate
public static <T> Predicate<T> onePredicate(Predicate<? super T>... predicates)
Factory to create the predicate.If the array is size zero, the predicate always returns false. If the array is size one, then that predicate is returned.
- Type Parameters:
T
- the type that the predicate queries- Parameters:
predicates
- the predicates to check, cloned, not null- Returns:
- the
any
predicate - Throws:
java.lang.NullPointerException
- if the predicates array is nulljava.lang.NullPointerException
- if any predicate in the array is null
-
onePredicate
public static <T> Predicate<T> onePredicate(java.util.Collection<? extends Predicate<? super T>> predicates)
Factory to create the predicate.- Type Parameters:
T
- the type that the predicate queries- Parameters:
predicates
- the predicates to check, cloned, not null- Returns:
- the
one
predicate - Throws:
java.lang.NullPointerException
- if the predicates array is nulljava.lang.NullPointerException
- if any predicate in the array is null
-
evaluate
public boolean evaluate(T object)
Evaluates the predicate returning true if only one decorated predicate returns true.- Parameters:
object
- the input object- Returns:
- true if only one decorated predicate returns true
-
-