## org.apache.commons.collections.buffer
Class TransformedBuffer

    java.lang.Object
      org.apache.commons.collections.collection.AbstractCollectionDecorator
          org.apache.commons.collections.collection.AbstractSerializableCollectionDecorator
              org.apache.commons.collections.collection.TransformedCollection
                  org.apache.commons.collections.buffer.TransformedBuffer

All Implemented Interfaces:
  Buffer, Collection, Serializable

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: 1.6 $ $Date: 2004/06/03 22:02:13 $
Author:
  Stephen Colebourne
See Also:
  Serialized Form

Field Summary

Fields inherited from class org.apache.commons.collections.collection.TransformedCollection
`transformer`

Fields inherited from class org.apache.commons.collections.collection.AbstractCollectionDecorator
`collection`

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

Method Summary
`static Buffer` `decorate(Buffer buffer, Transformer transformer)` Factory method to create a transforming buffer.
`Object` `get()` Gets the next object from the buffer without removing it.
`protected Buffer` `getBuffer()` Gets the decorated buffer.
`Object` `remove()` Gets and removes the next object from the buffer.

Methods inherited from class org.apache.commons.collections.collection.TransformedCollection
`add, addAll, decorate, transform, transform`

Methods inherited from class org.apache.commons.collections.collection.AbstractCollectionDecorator
`clear, contains, containsAll, equals, getCollection, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface java.util.Collection
`add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray`

Constructor Detail

### 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 Detail

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

Copyright © 2001-2005 Apache Software Foundation. All Rights Reserved.