Class NonCopyingByteArrayOutputStream

java.lang.Object
java.io.OutputStream
java.io.ByteArrayOutputStream
org.apache.avro.util.NonCopyingByteArrayOutputStream
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable

public class NonCopyingByteArrayOutputStream extends ByteArrayOutputStream
Utility to make data written to an ByteArrayOutputStream directly available as a ByteBuffer.
  • Constructor Details

    • NonCopyingByteArrayOutputStream

      public NonCopyingByteArrayOutputStream(int size)
      Creates a new byte array output stream, with a buffer capacity of the specified size, in bytes.
      Parameters:
      size - the initial size
      Throws:
      IllegalArgumentException - if size is negative
  • Method Details

    • asByteBuffer

      public ByteBuffer asByteBuffer()
      Get the contents of this ByteArrayOutputStream wrapped as a ByteBuffer. This is a shallow copy. Changes to this ByteArrayOutputstream "write through" to the ByteBuffer.
      Returns:
      The contents of this ByteArrayOutputstream wrapped as a ByteBuffer