Package org.apache.commons.collections
Class BoundedFifoBuffer
java.lang.Object
java.util.AbstractCollection
org.apache.commons.collections.BoundedFifoBuffer
- All Implemented Interfaces:
Iterable
,Collection
,BoundedCollection
,Buffer
Deprecated.
Moved to buffer subpackage. Due to be removed in v4.0.
The BoundedFifoBuffer is a very efficient implementation of
Buffer that does not alter the size of the buffer at runtime.
The removal order of a BoundedFifoBuffer
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)
, remove()
and 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 BoundedFifoBuffer
:
Buffer fifo = BufferUtils.synchronizedBuffer(new BoundedFifoBuffer());
This buffer prevents null objects from being added.
- Since:
- 2.1
- Version:
- $Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Object[]
Deprecated.private int
Deprecated.private boolean
Deprecated.private int
Deprecated.private final int
Deprecated. -
Constructor Summary
ConstructorsConstructorDescriptionDeprecated.Constructs a newBoundedFifoBuffer
big enough to hold 32 elements.BoundedFifoBuffer
(int size) Deprecated.Constructs a newBoundedFifoBuffer
big enough to hold the specified number of elements.BoundedFifoBuffer
(Collection coll) Deprecated.Constructs a newBoundedFifoBuffer
big enough to hold all of the elements in the specified collection. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Deprecated.Adds the given element to this buffer.void
clear()
Deprecated.Clears this buffer.private int
decrement
(int index) Deprecated.Decrements the internal index.get()
Deprecated.Returns the least recently inserted element in this buffer.private int
increment
(int index) Deprecated.Increments the internal index.boolean
isEmpty()
Deprecated.Returns true if this buffer is empty; false otherwise.boolean
isFull()
Deprecated.Returns true if this collection is full and no new elements can be added.iterator()
Deprecated.Returns an iterator over this buffer's elements.int
maxSize()
Deprecated.Gets the maximum size of the collection (the bound).remove()
Deprecated.Removes the least recently inserted element from this buffer.int
size()
Deprecated.Returns the number of elements stored in the buffer.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, parallelStream, remove, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArray, toArray
-
Field Details
-
m_elements
Deprecated. -
m_start
private int m_startDeprecated. -
m_end
private int m_endDeprecated. -
m_full
private boolean m_fullDeprecated. -
maxElements
private final int maxElementsDeprecated.
-
-
Constructor Details
-
BoundedFifoBuffer
public BoundedFifoBuffer()Deprecated.Constructs a newBoundedFifoBuffer
big enough to hold 32 elements. -
BoundedFifoBuffer
public BoundedFifoBuffer(int size) Deprecated.Constructs a newBoundedFifoBuffer
big enough to hold the specified number of elements.- Parameters:
size
- the maximum number of elements for this fifo- Throws:
IllegalArgumentException
- if the size is less than 1
-
BoundedFifoBuffer
Deprecated.Constructs a newBoundedFifoBuffer
big enough to hold all of the elements in the specified collection. That collection's elements will also be added to the buffer.- Parameters:
coll
- the collection whose elements to add, may not be null- Throws:
NullPointerException
- if the collection is null
-
-
Method Details
-
size
public int size()Deprecated.Returns the number of elements stored in the buffer.- Specified by:
size
in interfaceCollection
- Specified by:
size
in classAbstractCollection
- Returns:
- this buffer's size
-
isEmpty
public boolean isEmpty()Deprecated.Returns true if this buffer is empty; false otherwise.- Specified by:
isEmpty
in interfaceCollection
- Overrides:
isEmpty
in classAbstractCollection
- Returns:
- true if this buffer is empty
-
isFull
public boolean isFull()Deprecated.Returns true if this collection is full and no new elements can be added.- Specified by:
isFull
in interfaceBoundedCollection
- Returns:
true
if the collection is full
-
maxSize
public int maxSize()Deprecated.Gets the maximum size of the collection (the bound).- Specified by:
maxSize
in interfaceBoundedCollection
- Returns:
- the maximum number of elements the collection can hold
-
clear
public void clear()Deprecated.Clears this buffer.- Specified by:
clear
in interfaceCollection
- Overrides:
clear
in classAbstractCollection
-
add
Deprecated.Adds the given element to this buffer.- Specified by:
add
in interfaceCollection
- Overrides:
add
in classAbstractCollection
- Parameters:
element
- the element to add- Returns:
- true, always
- Throws:
NullPointerException
- if the given element is nullBufferOverflowException
- if this buffer is full
-
get
Deprecated.Returns the least recently inserted element in this buffer.- Specified by:
get
in interfaceBuffer
- Returns:
- the least recently inserted element
- Throws:
BufferUnderflowException
- if the buffer is empty
-
remove
Deprecated.Removes the least recently inserted element from this buffer.- Specified by:
remove
in interfaceBuffer
- Returns:
- the least recently inserted element
- Throws:
BufferUnderflowException
- if the buffer is empty
-
increment
private int increment(int index) Deprecated.Increments the internal index.- Parameters:
index
- the index to increment- Returns:
- the updated index
-
decrement
private int decrement(int index) Deprecated.Decrements the internal index.- Parameters:
index
- the index to decrement- Returns:
- the updated index
-
iterator
Deprecated.Returns an iterator over this buffer's elements.- Specified by:
iterator
in interfaceCollection
- Specified by:
iterator
in interfaceIterable
- Specified by:
iterator
in classAbstractCollection
- Returns:
- an iterator over this buffer's elements
-