## org.apache.http.nio.util
Class SimpleOutputBuffer

    java.lang.Object
      org.apache.http.nio.util.ExpandableBuffer
          org.apache.http.nio.util.SimpleOutputBuffer

All Implemented Interfaces:
  BufferInfo, ContentOutputBuffer

    @NotThreadSafe
    public class SimpleOutputBuffer

extends ExpandableBuffer
implements ContentOutputBuffer

Basic implementation of the `ContentOutputBuffer` interface.

This class is not thread safe.

Since:
  4.0

Field Summary

Fields inherited from class org.apache.http.nio.util.ExpandableBuffer
`buffer, INPUT_MODE, OUTPUT_MODE`

Constructor Summary
`SimpleOutputBuffer(int buffersize, ByteBufferAllocator allocator)`

Method Summary
`void` `flush()`
`int` `produceContent(ContentEncoder encoder)` Writes content from this buffer to the given `ContentEncoder`.
`void` `reset()` Resets the buffer by clearing its state and stored content.
`void` `shutdown()`
`void` `write(byte[] b)`
`void` `write(byte[] b, int off, int len)` Writes `len` bytes from the specified byte array starting at offset `off` to this buffer.
`void` `write(int b)` Writes the specified byte to this buffer.
`void` `writeCompleted()` Indicates the content has been fully written.

Methods inherited from class org.apache.http.nio.util.ExpandableBuffer
`available, capacity, clear, ensureCapacity, expand, getMode, hasData, length, setInputMode, setOutputMode, toString`

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

Constructor Detail

### SimpleOutputBuffer

    public SimpleOutputBuffer(int buffersize,
                              ByteBufferAllocator allocator)

Method Detail

### produceContent

    public int produceContent(ContentEncoder encoder)
                       throws IOException

  Description copied from interface: `ContentOutputBuffer`
  Writes content from this buffer to the given `ContentEncoder`.

  Specified by:
    `produceContent` in interface `ContentOutputBuffer`
  Parameters:
    `encoder` - content encoder.
  Returns:
    number of bytes written.
  Throws:
    `IOException` - in case of an I/O error.

### write

    public void write(byte[] b,
                      int off,
                      int len)
               throws IOException

  Description copied from interface: `ContentOutputBuffer`
  Writes `len` bytes from the specified byte array starting at offset `off` to this buffer.

  If `off` is negative, or `len` is negative, or `off+len` is greater than the length of the array `b`, this method can throw a runtime exception. The exact type of runtime exception thrown by this method depends on implementation.

  Specified by:
    `write` in interface `ContentOutputBuffer`
  Parameters:
    `b` - the data.
    `off` - the start offset in the data.
    `len` - the number of bytes to write.
  Throws:
    `IOException` - if an I/O error occurs.

### write

    public void write(byte[] b)
               throws IOException

  Throws:
    `IOException`

### write

    public void write(int b)
               throws IOException

  Description copied from interface: `ContentOutputBuffer`
  Writes the specified byte to this buffer.

  Specified by:
    `write` in interface `ContentOutputBuffer`
  Parameters:
    `b` - the `byte`.
  Throws:
    `IOException` - if an I/O error occurs.

### reset

    public void reset()

  Description copied from interface: `ContentOutputBuffer`
  Resets the buffer by clearing its state and stored content.

  Specified by:
    `reset` in interface `ContentOutputBuffer`

### flush

    public void flush()

  Specified by:
    `flush` in interface `ContentOutputBuffer`

### writeCompleted

    public void writeCompleted()

  Description copied from interface: `ContentOutputBuffer`
  Indicates the content has been fully written.

  Specified by:
    `writeCompleted` in interface `ContentOutputBuffer`

### shutdown

    public void shutdown()

Copyright © 2005-2013 The Apache Software Foundation. All Rights Reserved.