DirectByteArrayOutputStream (Apache Tomcat 11.0.24 API Documentation)
Description: declaration: package: org.apache.catalina.tribes.io, class: DirectByteArrayOutputStream

# Class DirectByteArrayOutputStream

java.lang.Object
java.io.OutputStream
org.apache.catalina.tribes.io.DirectByteArrayOutputStream

All Implemented Interfaces:
  `Closeable, Flushable, AutoCloseable`

public class DirectByteArrayOutputStream extends OutputStream
Byte array output stream that exposes the byte array directly

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DirectByteArrayOutputStream(int size)`
  Construct a new DirectByteArrayOutputStream with the given initial size.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `byte[]`
  `getArray()`
  Get a copy of the bytes written to this stream.
  `byte[]`
  `getArrayDirect()`
  Get the underlying byte array directly without copying.
  `int`
  `size()`
  Get the current number of bytes written to this stream.
  `void`
  `write(int b)`

  ### Methods inherited from class OutputStream

  `close, flush, nullOutputStream, write, write`

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### DirectByteArrayOutputStream

    public DirectByteArrayOutputStream(int size)
    Construct a new DirectByteArrayOutputStream with the given initial size.
    Parameters:
      `size` - Initial size of the internal buffer

- ## Method Details

  - ### write

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

  - ### size

    public int size()
    Get the current number of bytes written to this stream.
    Returns:
      Number of bytes written

  - ### getArrayDirect

    public byte[] getArrayDirect()
    Get the underlying byte array directly without copying.
    Returns:
      Direct byte array reference

  - ### getArray

    public byte[] getArray()
    Get a copy of the bytes written to this stream.
    Returns:
      Copy of the byte array