org.apache.commons.collections.functors

Class OnePredicate

public final class OnePredicate extends Object implements Predicate, PredicateDecorator, Serializable

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: Commons Collections 3.0

Version: $Revision: 406071 $ $Date: 2006-05-13 11:44:37 +0100 (Sat, 13 May 2006) $

Author: Stephen Colebourne Matt Benson

Constructor Summary
OnePredicate(Predicate[] predicates)
Constructor that performs no validation.
Method Summary
booleanevaluate(Object object)
Evaluates the predicate returning true if only one decorated predicate returns true.
static PredicategetInstance(Predicate[] predicates)
Factory to create the predicate.
static PredicategetInstance(Collection predicates)
Factory to create the predicate.
Predicate[]getPredicates()
Gets the predicates, do not modify the array.

Constructor Detail

OnePredicate

public OnePredicate(Predicate[] predicates)
Constructor that performs no validation. Use getInstance if you want that.

Parameters: predicates the predicates to check, not cloned, not null

Method Detail

evaluate

public boolean evaluate(Object 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

getInstance

public static Predicate getInstance(Predicate[] 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.

Parameters: predicates the predicates to check, cloned, not null

Returns: the any predicate

Throws: IllegalArgumentException if the predicates array is null IllegalArgumentException if any predicate in the array is null

getInstance

public static Predicate getInstance(Collection predicates)
Factory to create the predicate.

Parameters: predicates the predicates to check, cloned, not null

Returns: the one predicate

Throws: IllegalArgumentException if the predicates array is null IllegalArgumentException if any predicate in the array is null

getPredicates

public Predicate[] getPredicates()
Gets the predicates, do not modify the array.

Returns: the predicates

Since: Commons Collections 3.1

Copyright © 2001-2008 Apache Software Foundation. All Rights Reserved.