org.apache.commons.collections.set

Class PredicatedSet

Implemented Interfaces:
Collection, Serializable, Set
Known Direct Subclasses:
PredicatedSortedSet

public class PredicatedSet
extends PredicatedCollection
implements Set

Decorates another Set to validate that all additions match a specified predicate.

This set exists to provide validation for the decorated set. It is normally created to decorate an empty set. If an object cannot be added to the set, an IllegalArgumentException is thrown.

One usage would be to ensure that no null entries are added to the set.

Set set = PredicatedSet.decorate(new HashSet(), NotNullPredicate.INSTANCE);

This class is Serializable from Commons Collections 3.1.

Version:
$Revision: 1.6 $ $Date: 2004/06/03 22:02:13 $
Authors:
Stephen Colebourne
Paul Jack
Since:
Commons Collections 3.0

Field Summary

Fields inherited from class org.apache.commons.collections.collection.PredicatedCollection

predicate

Fields inherited from class org.apache.commons.collections.collection.AbstractCollectionDecorator

collection

Constructor Summary

PredicatedSet(Set set, Predicate predicate)
Constructor that wraps (not copies).

Method Summary

static Set
decorate(Set set, Predicate predicate)
Factory method to create a predicated (validating) set.
protected Set
getSet()
Gets the set being decorated.

Methods inherited from class org.apache.commons.collections.collection.PredicatedCollection

add, addAll, decorate, validate

Methods inherited from class org.apache.commons.collections.collection.AbstractCollectionDecorator

add, addAll, clear, contains, containsAll, equals, getCollection, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toString

Constructor Details

PredicatedSet

protected PredicatedSet(Set set,
                        Predicate predicate)
Constructor that wraps (not copies).

If there are any elements already in the set being decorated, they are validated.

Parameters:
set - the set to decorate, must not be null
predicate - the predicate to use for validation, must not be null

Method Details

decorate

public static Set decorate(Set set,
                           Predicate predicate)
Factory method to create a predicated (validating) set.

If there are any elements already in the set being decorated, they are validated.

Parameters:
set - the set to decorate, must not be null
predicate - the predicate to use for validation, must not be null

getSet

protected Set getSet()
Gets the set being decorated.
Returns:
the decorated set

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