org.apache.commons.collections.buffer
Class PredicatedBuffer<E>
java.lang.Object
org.apache.commons.collections.collection.AbstractCollectionDecorator<E>
org.apache.commons.collections.collection.AbstractSerializableCollectionDecorator<E>
org.apache.commons.collections.collection.PredicatedCollection<E>
org.apache.commons.collections.buffer.PredicatedBuffer<E>
- All Implemented Interfaces:
- Serializable, Iterable<E>, Collection<E>, Buffer<E>
public class PredicatedBuffer<E>
- extends PredicatedCollection<E>
- implements Buffer<E>
Decorates another Buffer
to validate that additions
match a specified predicate.
This buffer exists to provide validation for the decorated buffer.
It is normally created to decorate an empty buffer.
If an object cannot be added to the buffer, an IllegalArgumentException is thrown.
One usage would be to ensure that no null entries are added to the buffer.
Buffer buffer = PredicatedBuffer.decorate(new UnboundedFifoBuffer(), NotNullPredicate.INSTANCE);
This class is Serializable from Commons Collections 3.1.
- Since:
- Commons Collections 3.0
- Version:
- $Revision: 1.1.1.1 $ $Date: 2005/05/23 04:33:53 $
- Author:
- Stephen Colebourne, Matt Hall, John Watkinson, Paul Jack
- See Also:
- Serialized Form
Method Summary |
static
|
decorate(Buffer<E> buffer,
Predicate<? super E> predicate)
Factory method to create a predicated (validating) buffer. |
E |
get()
Gets the next object from the buffer without removing it. |
protected Buffer<E> |
getBuffer()
Gets the buffer being decorated. |
E |
remove()
Gets and removes the next object from the buffer. |
Methods inherited from class org.apache.commons.collections.collection.AbstractCollectionDecorator |
clear, contains, containsAll, equals, getCollection, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toString |
Methods inherited from interface java.util.Collection |
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray |
PredicatedBuffer
protected PredicatedBuffer(Buffer<E> buffer,
Predicate<? super E> predicate)
- Constructor that wraps (not copies).
If there are any elements already in the collection being decorated, they
are validated.
- Parameters:
buffer
- the buffer to decorate, must not be nullpredicate
- the predicate to use for validation, must not be null
- Throws:
IllegalArgumentException
- if buffer or predicate is null
IllegalArgumentException
- if the buffer contains invalid elements
decorate
public static <E> Buffer<E> decorate(Buffer<E> buffer,
Predicate<? super E> predicate)
- Factory method to create a predicated (validating) buffer.
If there are any elements already in the buffer being decorated, they
are validated.
- Parameters:
buffer
- the buffer to decorate, must not be nullpredicate
- the predicate to use for validation, must not be null
- Returns:
- a new predicated Buffer
- Throws:
IllegalArgumentException
- if buffer or predicate is null
IllegalArgumentException
- if the buffer contains invalid elements
getBuffer
protected Buffer<E> getBuffer()
- Gets the buffer being decorated.
- Returns:
- the decorated buffer
get
public E get()
- Description copied from interface:
Buffer
- Gets the next object from the buffer without removing it.
- Specified by:
get
in interface Buffer<E>
- Returns:
- the next object in the buffer, which is not removed
remove
public E remove()
- Description copied from interface:
Buffer
- Gets and removes the next object from the buffer.
- Specified by:
remove
in interface Buffer<E>
- Returns:
- the next object in the buffer, which is also removed
Copyright © 2005-2005 Apache Software Foundation, Matt Hall, John Watkinson. All Rights Reserved.