org.apache.commons.collections.bag

Class PredicatedSortedBag

public class PredicatedSortedBag extends PredicatedBag implements SortedBag

Decorates another SortedBag to validate that additions match a specified predicate.

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

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

SortedBag bag = PredicatedSortedBag.decorate(new TreeBag(), NotNullPredicate.INSTANCE);

This class is Serializable from Commons Collections 3.1.

Since: Commons Collections 3.0

Version: $Revision: 155406 $ $Date: 2005-02-26 12:55:26 +0000 (Sat, 26 Feb 2005) $

Author: Stephen Colebourne Paul Jack

Constructor Summary
protected PredicatedSortedBag(SortedBag bag, Predicate predicate)
Constructor that wraps (not copies).
Method Summary
Comparatorcomparator()
static SortedBagdecorate(SortedBag bag, Predicate predicate)
Factory method to create a predicated (validating) bag.
Objectfirst()
protected SortedBaggetSortedBag()
Gets the decorated sorted bag.
Objectlast()

Constructor Detail

PredicatedSortedBag

protected PredicatedSortedBag(SortedBag bag, Predicate predicate)
Constructor that wraps (not copies).

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

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

Throws: IllegalArgumentException if bag or predicate is null IllegalArgumentException if the bag contains invalid elements

Method Detail

comparator

public Comparator comparator()

decorate

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

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

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

Returns: a new predicated SortedBag

Throws: IllegalArgumentException if bag or predicate is null IllegalArgumentException if the bag contains invalid elements

first

public Object first()

getSortedBag

protected SortedBag getSortedBag()
Gets the decorated sorted bag.

Returns: the decorated bag

last

public Object last()
Copyright © 2001-2008 Apache Software Foundation. All Rights Reserved.