org.apache.commons.collections.list

Class PredicatedList

public class PredicatedList extends PredicatedCollection implements List

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

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

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

List list = PredicatedList.decorate(new ArrayList(), 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

Nested Class Summary
protected classPredicatedList.PredicatedListIterator
Inner class Iterator for the PredicatedList
Constructor Summary
protected PredicatedList(List list, Predicate predicate)
Constructor that wraps (not copies).
Method Summary
voidadd(int index, Object object)
booleanaddAll(int index, Collection coll)
static Listdecorate(List list, Predicate predicate)
Factory method to create a predicated (validating) list.
Objectget(int index)
protected ListgetList()
Gets the list being decorated.
intindexOf(Object object)
intlastIndexOf(Object object)
ListIteratorlistIterator()
ListIteratorlistIterator(int i)
Objectremove(int index)
Objectset(int index, Object object)
ListsubList(int fromIndex, int toIndex)

Constructor Detail

PredicatedList

protected PredicatedList(List list, Predicate predicate)
Constructor that wraps (not copies).

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

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

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

Method Detail

add

public void add(int index, Object object)

addAll

public boolean addAll(int index, Collection coll)

decorate

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

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

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

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

get

public Object get(int index)

getList

protected List getList()
Gets the list being decorated.

Returns: the decorated list

indexOf

public int indexOf(Object object)

lastIndexOf

public int lastIndexOf(Object object)

listIterator

public ListIterator listIterator()

listIterator

public ListIterator listIterator(int i)

remove

public Object remove(int index)

set

public Object set(int index, Object object)

subList

public List subList(int fromIndex, int toIndex)
Copyright © 2001-2008 Apache Software Foundation. All Rights Reserved.