org.apache.commons.collections
public class BufferUtils extends Object
Since: Commons Collections 2.1
Version: $Revision: 348808 $ $Date: 2005-11-24 21:35:09 +0000 (Thu, 24 Nov 2005) $
Field Summary | |
---|---|
static Buffer | EMPTY_BUFFER
An empty unmodifiable buffer. |
Constructor Summary | |
---|---|
BufferUtils()BufferUtils should not normally be instantiated. |
Method Summary | |
---|---|
static Buffer | blockingBuffer(Buffer buffer) |
static Buffer | blockingBuffer(Buffer buffer, long timeoutMillis) |
static Buffer | boundedBuffer(Buffer buffer, int maximumSize) |
static Buffer | boundedBuffer(Buffer buffer, int maximumSize, long timeoutMillis) |
static Buffer | predicatedBuffer(Buffer buffer, Predicate predicate)
Returns a predicated (validating) buffer backed by the given buffer.
|
static Buffer | synchronizedBuffer(Buffer buffer)
Returns a synchronized buffer backed by the given buffer.
|
static Buffer | transformedBuffer(Buffer buffer, Transformer transformer)
Returns a transformed buffer backed by the given buffer.
|
static Buffer | typedBuffer(Buffer buffer, Class type)
Returns a typed buffer backed by the given buffer.
|
static Buffer | unmodifiableBuffer(Buffer buffer)
Returns an unmodifiable buffer backed by the given buffer.
|
BufferUtils
should not normally be instantiated.BufferUnderflowException
.
Parameters: buffer the buffer to synchronize, must not be null
Returns: a blocking buffer backed by that buffer
Throws: IllegalArgumentException if the Buffer is null
timeout
expires. If the buffer is empty, then the
get and 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 timeoutMillis the timeout value in milliseconds, zero or less for no timeout
Returns: a blocking buffer backed by that buffer
Throws: IllegalArgumentException if the Buffer is null
Since: Commons Collections 3.2
Parameters: buffer the buffer to make bounded, must not be null maximumSize the maximum size
Returns: a bounded buffer backed by the given buffer
Throws: IllegalArgumentException if the given buffer is null
Since: Commons Collections 3.2
Parameters: buffer the buffer to make bounded, must not be null maximumSize the maximum size timeoutMillis the timeout value in milliseconds, zero or less for no timeout
Returns: a bounded buffer backed by the given buffer
Throws: IllegalArgumentException if the given buffer is null
Since: Commons Collections 3.2
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 predicate the predicate used to evaluate new elements, must not be null
Returns: a predicated buffer
Throws: IllegalArgumentException if the Buffer or Predicate is null
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
Returns: a synchronized buffer backed by that buffer
Throws: IllegalArgumentException if the Buffer is null
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 transformer the transformer for the buffer, must not be null
Returns: a transformed buffer backed by the given buffer
Throws: IllegalArgumentException if the Buffer or Transformer is null
Only elements of the specified type can be added to the buffer.
Parameters: buffer the buffer to predicate, must not be null type the type to allow into the buffer, must not be null
Returns: a typed buffer
Throws: IllegalArgumentException if the buffer or type is null
Parameters: buffer the buffer to make unmodifiable, must not be null
Returns: an unmodifiable buffer backed by that buffer
Throws: IllegalArgumentException if the Buffer is null