| java.lang.Object org.apache.commons.collections.BufferUtils
BufferUtils | public class BufferUtils (Code) | | Provides utility methods and decorators for
Buffer instances.
since: Commons Collections 2.1 version: $Revision: 348808 $ $Date: 2005-11-24 21:35:09 +0000 (Thu, 24 Nov 2005) $ author: Paul Jack author: Stephen Colebourne |
Constructor Summary | |
public | BufferUtils() BufferUtils should not normally be instantiated. |
EMPTY_BUFFER | final public static Buffer EMPTY_BUFFER(Code) | | An empty unmodifiable buffer.
|
BufferUtils | public BufferUtils()(Code) | | BufferUtils should not normally be instantiated.
|
blockingBuffer | public static Buffer blockingBuffer(Buffer buffer)(Code) | | Returns a synchronized buffer backed by the given buffer that will
block on
Buffer.get and
Buffer.remove operations.
If the buffer is empty, then the
Buffer.get and
Buffer.remove operations will block until new elements
are added to the buffer, rather than immediately throwing a
BufferUnderflowException .
Parameters: buffer - the buffer to synchronize, must not be null a blocking buffer backed by that buffer throws: IllegalArgumentException - if the Buffer is null |
blockingBuffer | public static Buffer blockingBuffer(Buffer buffer, long timeoutMillis)(Code) | | Returns a synchronized buffer backed by the given buffer that will
block on
Buffer.get and
Buffer.remove operations
until timeout expires. If the buffer is empty, then the
Buffer.get and
Buffer.remove operations will block
until new elements are added to the buffer, rather than immediately
throwing a BufferUnderflowException .
Parameters: buffer - the buffer to synchronize, must not be null Parameters: timeoutMillis - the timeout value in milliseconds, zero or less for no timeout a blocking buffer backed by that buffer throws: IllegalArgumentException - if the Buffer is null since: Commons Collections 3.2 |
boundedBuffer | public static Buffer boundedBuffer(Buffer buffer, int maximumSize)(Code) | | Returns a synchronized buffer backed by the given buffer that will
block on
Buffer.add(Object) and
Buffer.addAll(java.util.Collection) until enough object(s) are
removed from the buffer to allow the object(s) to be added and still
maintain the maximum size.
Parameters: buffer - the buffer to make bounded, must not be null Parameters: maximumSize - the maximum size a bounded buffer backed by the given buffer throws: IllegalArgumentException - if the given buffer is null since: Commons Collections 3.2 |
boundedBuffer | public static Buffer boundedBuffer(Buffer buffer, int maximumSize, long timeoutMillis)(Code) | | Returns a synchronized buffer backed by the given buffer that will
block on
Buffer.add(Object) and
Buffer.addAll(java.util.Collection) until enough object(s) are
removed from the buffer to allow the object(s) to be added and still
maintain the maximum size or the timeout expires.
Parameters: buffer - the buffer to make bounded, must not be null Parameters: maximumSize - the maximum size Parameters: timeoutMillis - the timeout value in milliseconds, zero or less for no timeout a bounded buffer backed by the given buffer throws: IllegalArgumentException - if the given buffer is null since: Commons Collections 3.2 |
predicatedBuffer | public static Buffer predicatedBuffer(Buffer buffer, Predicate predicate)(Code) | | Returns a predicated (validating) buffer backed by the given buffer.
Only objects that pass the test in the given predicate can be added to the buffer.
Trying to add an invalid object results in an IllegalArgumentException.
It is important not to use the original buffer after invoking this method,
as it is a backdoor for adding invalid objects.
Parameters: buffer - the buffer to predicate, must not be null Parameters: predicate - the predicate used to evaluate new elements, must not be null a predicated buffer throws: IllegalArgumentException - if the Buffer or Predicate is null |
synchronizedBuffer | public static Buffer synchronizedBuffer(Buffer buffer)(Code) | | Returns a synchronized buffer backed by the given buffer.
Much like the synchronized collections returned by
java.util.Collections , you must manually synchronize on
the returned buffer's iterator to avoid non-deterministic behavior:
Buffer b = BufferUtils.synchronizedBuffer(myBuffer);
synchronized (b) {
Iterator i = b.iterator();
while (i.hasNext()) {
process (i.next());
}
}
Parameters: buffer - the buffer to synchronize, must not be null a synchronized buffer backed by that buffer throws: IllegalArgumentException - if the Buffer is null |
transformedBuffer | public static Buffer transformedBuffer(Buffer buffer, Transformer transformer)(Code) | | Returns a transformed buffer backed by the given buffer.
Each object is passed through the transformer as it is added to the
Buffer. It is important not to use the original buffer after invoking this
method, as it is a backdoor for adding untransformed objects.
Parameters: buffer - the buffer to predicate, must not be null Parameters: transformer - the transformer for the buffer, must not be null a transformed buffer backed by the given buffer throws: IllegalArgumentException - if the Buffer or Transformer is null |
typedBuffer | public static Buffer typedBuffer(Buffer buffer, Class type)(Code) | | Returns a typed buffer backed by the given buffer.
Only elements of the specified type can be added to the buffer.
Parameters: buffer - the buffer to predicate, must not be null Parameters: type - the type to allow into the buffer, must not be null a typed buffer throws: IllegalArgumentException - if the buffer or type is null |
unmodifiableBuffer | public static Buffer unmodifiableBuffer(Buffer buffer)(Code) | | Returns an unmodifiable buffer backed by the given buffer.
Parameters: buffer - the buffer to make unmodifiable, must not be null an unmodifiable buffer backed by that buffer throws: IllegalArgumentException - if the Buffer is null |
|
|