org.apache.commons.collections.buffer
Class SynchronizedBuffer

java.lang.Object
  extended by org.apache.commons.collections.collection.SynchronizedCollection
      extended by org.apache.commons.collections.buffer.SynchronizedBuffer
All Implemented Interfaces:
java.io.Serializable, java.lang.Iterable, java.util.Collection, Buffer
Direct Known Subclasses:
BlockingBuffer, BoundedBuffer

public class SynchronizedBuffer
extends SynchronizedCollection
implements Buffer

Decorates another Buffer to synchronize its behaviour for a multi-threaded environment.

Methods are synchronized, then forwarded to the decorated buffer.

This class is Serializable from Commons Collections 3.1.

Since:
Commons Collections 3.0
Version:
$Revision: 646777 $ $Date: 2008-04-10 13:33:15 +0100 (Thu, 10 Apr 2008) $
Author:
Stephen Colebourne
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apache.commons.collections.collection.SynchronizedCollection
collection, lock
 
Constructor Summary
protected SynchronizedBuffer(Buffer buffer)
          Constructor that wraps (not copies).
protected SynchronizedBuffer(Buffer buffer, java.lang.Object lock)
          Constructor that wraps (not copies).
 
Method Summary
static Buffer decorate(Buffer buffer)
          Factory method to create a synchronized buffer.
 java.lang.Object get()
          Gets the next object from the buffer without removing it.
protected  Buffer getBuffer()
          Gets the buffer being decorated.
 java.lang.Object remove()
          Gets and removes the next object from the buffer.
 
Methods inherited from class org.apache.commons.collections.collection.SynchronizedCollection
add, addAll, clear, contains, containsAll, decorate, equals, 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
 
Methods inherited from interface java.util.Collection
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
 

Constructor Detail

SynchronizedBuffer

protected SynchronizedBuffer(Buffer buffer)
Constructor that wraps (not copies).

Parameters:
buffer - the buffer to decorate, must not be null
Throws:
java.lang.IllegalArgumentException - if the buffer is null

SynchronizedBuffer

protected SynchronizedBuffer(Buffer buffer,
                             java.lang.Object lock)
Constructor that wraps (not copies).

Parameters:
buffer - the buffer to decorate, must not be null
lock - the lock object to use, must not be null
Throws:
java.lang.IllegalArgumentException - if the buffer is null
Method Detail

decorate

public static Buffer decorate(Buffer buffer)
Factory method to create a synchronized buffer.

Parameters:
buffer - the buffer to decorate, must not be null
Returns:
a new synchronized Buffer
Throws:
java.lang.IllegalArgumentException - if buffer is null

getBuffer

protected Buffer getBuffer()
Gets the buffer being decorated.

Returns:
the decorated buffer

get

public java.lang.Object get()
Description copied from interface: Buffer
Gets the next object from the buffer without removing it.

Specified by:
get in interface Buffer
Returns:
the next object in the buffer, which is not removed

remove

public java.lang.Object remove()
Description copied from interface: Buffer
Gets and removes the next object from the buffer.

Specified by:
remove in interface Buffer
Returns:
the next object in the buffer, which is also removed


Copyright © 2001-2008 The Apache Software Foundation. All Rights Reserved.