|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.util.AbstractCollection org.apache.commons.collections.buffer.BoundedFifoBuffer org.apache.commons.collections.buffer.CircularFifoBuffer
public class CircularFifoBuffer
CircularFifoBuffer is a first in first out buffer with a fixed size that replaces its oldest element if full.
The removal order of a CircularFifoBuffer
is based on the
insertion order; elements are removed in the same order in which they
were added. The iteration order is the same as the removal order.
The add(Object)
, BoundedFifoBuffer.remove()
and BoundedFifoBuffer.get()
operations
all perform in constant time. All other operations perform in linear
time or worse.
Note that this implementation is not synchronized. The following can be
used to provide synchronized access to your CircularFifoBuffer
:
Buffer fifo = BufferUtils.synchronizedBuffer(new CircularFifoBuffer());
This buffer prevents null objects from being added.
This class is Serializable from Commons Collections 3.1.
Constructor Summary | |
---|---|
CircularFifoBuffer()
Constructor that creates a buffer with the default size of 32. |
|
CircularFifoBuffer(java.util.Collection coll)
Constructor that creates a buffer from the specified collection. |
|
CircularFifoBuffer(int size)
Constructor that creates a buffer with the specified size. |
Method Summary | |
---|---|
boolean |
add(java.lang.Object element)
If the buffer is full, the least recently added element is discarded so that a new element can be inserted. |
Methods inherited from class org.apache.commons.collections.buffer.BoundedFifoBuffer |
---|
clear, get, isEmpty, isFull, iterator, maxSize, remove, size |
Methods inherited from class java.util.AbstractCollection |
---|
addAll, contains, containsAll, remove, removeAll, retainAll, toArray, toArray, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.util.Collection |
---|
addAll, contains, containsAll, equals, hashCode, remove, removeAll, retainAll, toArray, toArray |
Methods inherited from interface java.util.Collection |
---|
addAll, contains, containsAll, equals, hashCode, remove, removeAll, retainAll, toArray, toArray |
Constructor Detail |
---|
public CircularFifoBuffer()
public CircularFifoBuffer(int size)
size
- the size of the buffer (cannot be changed)
java.lang.IllegalArgumentException
- if the size is less than 1public CircularFifoBuffer(java.util.Collection coll)
coll
- the collection to copy into the buffer, may not be null
java.lang.NullPointerException
- if the collection is nullMethod Detail |
---|
public boolean add(java.lang.Object element)
add
in interface java.util.Collection
add
in class BoundedFifoBuffer
element
- the element to add
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |