org.apache.commons.collections.buffer

Class SynchronizedBuffer

Implemented Interfaces:
Buffer, Collection, Serializable
Known Direct Subclasses:
BlockingBuffer

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.

Version:
$Revision: 1.6 $ $Date: 2004/06/03 22:02:13 $
Author:
Stephen Colebourne
Since:
Commons Collections 3.0

Field Summary

Fields inherited from class org.apache.commons.collections.collection.SynchronizedCollection

collection, lock

Constructor Summary

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

Method Summary

static Buffer
decorate(Buffer buffer)
Factory method to create a synchronized 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.SynchronizedCollection

add, addAll, clear, contains, containsAll, decorate, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toString

Constructor Details

SynchronizedBuffer

protected SynchronizedBuffer(Buffer buffer)
Constructor that wraps (not copies).
Parameters:
buffer - the buffer to decorate, must not be null

SynchronizedBuffer

protected SynchronizedBuffer(Buffer buffer,
                             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

Method Details

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

get

public Object get()
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

getBuffer

protected Buffer getBuffer()
Gets the buffer being decorated.
Returns:
the decorated buffer

remove

public Object remove()
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-2006 Apache Software Foundation. All Rights Reserved.