Package org.apache.cxf.io

# Class AbstractWrappedOutputStream

java.lang.Object
java.io.OutputStream
org.apache.cxf.io.AbstractWrappedOutputStream

All Implemented Interfaces:
  `Closeable`, `Flushable`, `AutoCloseable`

Direct Known Subclasses:
  `AbstractThresholdOutputStream`

public abstract class AbstractWrappedOutputStream extends OutputStream
Provides a convenient hook onFirstWrite() for those needing to wrap an output stream.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected boolean`
  `allowFlush`
  `protected OutputStream`
  `wrappedStream`
  `protected boolean`
  `written`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `AbstractWrappedOutputStream()`
  `protected`
  `AbstractWrappedOutputStream(OutputStream os)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `allowFlush(boolean b)`
  `void`
  `close()`
  `void`
  `flush()`
  `protected void`
  `onFirstWrite()`
  `void`
  `write(byte[] b)`
  `void`
  `write(byte[] b, int off, int len)`
  `void`
  `write(int b)`

  ### Methods inherited from class java.io.OutputStream

  `nullOutputStream`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### wrappedStream

    protected OutputStream wrappedStream

  - ### written

    protected boolean written

  - ### allowFlush

    protected boolean allowFlush

- ## Constructor Details

  - ### AbstractWrappedOutputStream

    protected AbstractWrappedOutputStream()

  - ### AbstractWrappedOutputStream

    protected AbstractWrappedOutputStream(OutputStream os)

- ## Method Details

  - ### write

    public void write(byte[] b, int off, int len) throws IOException
    Overrides:
      `write` in class `OutputStream`
    Throws:
      `IOException`

  - ### onFirstWrite

    protected void onFirstWrite() throws IOException
    Throws:
      `IOException`

  - ### write

    public void write(byte[] b) throws IOException
    Overrides:
      `write` in class `OutputStream`
    Throws:
      `IOException`

  - ### write

    public void write(int b) throws IOException
    Specified by:
      `write` in class `OutputStream`
    Throws:
      `IOException`

  - ### close

    public void close() throws IOException
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`
    Overrides:
      `close` in class `OutputStream`
    Throws:
      `IOException`

  - ### flush

    public void flush() throws IOException
    Specified by:
      `flush` in interface `Flushable`
    Overrides:
      `flush` in class `OutputStream`
    Throws:
      `IOException`

  - ### allowFlush

    public void allowFlush(boolean b)