Class TransformedBuffer

All Implemented Interfaces:
Serializable, Iterable, Collection, Buffer

public class TransformedBuffer extends TransformedCollection implements Buffer
Decorates another Buffer to transform objects that are added.

The add methods are affected by this class. Thus objects must be removed or searched for using their transformed form. For example, if the transformation converts Strings to Integers, you must use the Integer form to remove objects.

This class is Serializable from Commons Collections 3.1.

Since:
Commons Collections 3.0
Version:
$Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
Author:
Stephen Colebourne
See Also:
  • Constructor Details

    • TransformedBuffer

      protected TransformedBuffer(Buffer buffer, Transformer transformer)
      Constructor that wraps (not copies).

      If there are any elements already in the buffer being decorated, they are NOT transformed.

      Parameters:
      buffer - the buffer to decorate, must not be null
      transformer - the transformer to use for conversion, must not be null
      Throws:
      IllegalArgumentException - if buffer or transformer is null
  • Method Details

    • decorate

      public static Buffer decorate(Buffer buffer, Transformer transformer)
      Factory method to create a transforming buffer.

      If there are any elements already in the buffer being decorated, they are NOT transformed.

      Parameters:
      buffer - the buffer to decorate, must not be null
      transformer - the transformer to use for conversion, must not be null
      Returns:
      a new transformed Buffer
      Throws:
      IllegalArgumentException - if buffer or transformer is null
    • getBuffer

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

      public 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 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