Class PredicatedBuffer
- java.lang.Object
-
- org.apache.commons.collections.collection.AbstractCollectionDecorator
-
- org.apache.commons.collections.collection.AbstractSerializableCollectionDecorator
-
- org.apache.commons.collections.collection.PredicatedCollection
-
- org.apache.commons.collections.buffer.PredicatedBuffer
-
- All Implemented Interfaces:
Serializable
,Iterable
,Collection
,Buffer
public class PredicatedBuffer extends PredicatedCollection implements Buffer
Decorates anotherBuffer
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: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
- Author:
- Stephen Colebourne, Paul Jack
- See Also:
- Serialized Form
-
-
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
Constructors Modifier Constructor Description protected
PredicatedBuffer(Buffer buffer, Predicate predicate)
Constructor that wraps (not copies).
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Buffer
decorate(Buffer buffer, Predicate predicate)
Factory method to create a predicated (validating) buffer.Object
get()
Gets the next object from the buffer without removing it.protected Buffer
getBuffer()
Gets the buffer being decorated.Object
remove()
Gets and removes the next object from the buffer.-
Methods inherited from class org.apache.commons.collections.collection.PredicatedCollection
add, addAll, decorate, validate
-
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 class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Constructor Detail
-
PredicatedBuffer
protected PredicatedBuffer(Buffer buffer, Predicate 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 nullIllegalArgumentException
- if the buffer contains invalid elements
-
-
Method Detail
-
decorate
public static Buffer decorate(Buffer buffer, Predicate 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 nullIllegalArgumentException
- if the buffer contains invalid elements
-
getBuffer
protected Buffer getBuffer()
Gets the buffer being decorated.- Returns:
- the decorated buffer
-
get
public Object get()
Description copied from interface:Buffer
Gets the next object from the buffer without removing it.
-
-