org.apache.commons.collections
Interface Buffer

All Superinterfaces:
Collection, Iterable
All Known Implementing Classes:
ArrayStack

public interface Buffer
extends Collection

Defines a collection that allows objects to be removed in some well-defined order.

The removal order can be based on insertion order (eg, a FIFO queue or a LIFO stack), on access order (eg, an LRU cache), on some arbitrary comparator (eg, a priority queue) or on any other well-defined ordering.

Note that the removal order is not necessarily the same as the iteration order. A Buffer implementation may have equivalent removal and iteration orders, but this is not required.

This interface does not specify any behavior for Object.equals(Object) and Object.hashCode() methods. It is therefore possible for a Buffer implementation to also also implement List, Set or Bag.

Note: this class should be bytecode-identical to the version in commons collections. This is required to allow backwards compability with both previous versions of BeanUtils and also allow coexistance with both collections 2.1 and 3.0.

Since:
Commons Collections 2.1
Version:
$Revision: 555824 $ $Date: 2007-07-13 01:27:15 +0100 (Fri, 13 Jul 2007) $
Author:
Avalon, Berin Loritsch, Paul Jack, Stephen Colebourne

Method Summary
 Object get()
          Gets the next object from the buffer without removing it.
 Object remove()
          Gets and removes the next object from the buffer.
 
Methods inherited from interface java.util.Collection
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
 

Method Detail

remove

Object remove()
Gets and removes the next object from the buffer.

Returns:
the next object in the buffer, which is also removed
Throws:
BufferUnderflowException - if the buffer is already empty

get

Object get()
Gets the next object from the buffer without removing it.

Returns:
the next object in the buffer, which is not removed
Throws:
BufferUnderflowException - if the buffer is empty


Copyright © 2000-2009 The Apache Software Foundation. All Rights Reserved.