org.apache.commons.collections.functors

Class OnePredicate

Implemented Interfaces:
Predicate, PredicateDecorator, Serializable

public final class OnePredicate
extends java.lang.Object
implements Predicate, PredicateDecorator, Serializable

Predicate implementation that returns true if only one of the predicates return true.
Version:
$Revision: 1.6 $ $Date: 2004/05/31 16:43:17 $
Author:
Stephen Colebourne
Since:
Commons Collections 3.0

Constructor Summary

OnePredicate(Predicate[] predicates)
Constructor that performs no validation.

Method Summary

boolean
evaluate(Object object)
Evaluates the predicate returning true if only one decorated predicate returns true.
static Predicate
getInstance(Collection predicates)
Factory to create the predicate.
static Predicate
getInstance(Predicate[] predicates)
Factory to create the predicate.
Predicate[]
getPredicates()
Gets the predicates, do not modify the array.

Constructor Details

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 Details

evaluate

public boolean evaluate(Object object)
Evaluates the predicate returning true if only one decorated predicate returns true.
Specified by:
evaluate in interface Predicate
Parameters:
object - the input object
Returns:
true if only one decorated predicate returns true

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

getInstance

public static Predicate getInstance(Predicate[] predicates)
Factory to create the predicate.
Parameters:
predicates - the predicates to check, cloned, not null
Returns:
the any predicate

getPredicates

public Predicate[] getPredicates()
Gets the predicates, do not modify the array.
Specified by:
getPredicates in interface PredicateDecorator
Returns:
the predicates
Since:
Commons Collections 3.1

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