Class ChunkedOutputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable

    public class ChunkedOutputStream
    extends java.io.FilterOutputStream
    OutputStream which breaks larger output blocks into chunks. Native code may need to copy the input array; if the write buffer is very large this can cause OOME.
    Since:
    2.5
    • Field Summary

      • Fields inherited from class java.io.FilterOutputStream

        out
    • Constructor Summary

      Constructors 
      Constructor Description
      ChunkedOutputStream​(java.io.OutputStream stream)
      Creates a new stream that uses a chunk size of DEFAULT_CHUNK_SIZE.
      ChunkedOutputStream​(java.io.OutputStream stream, int chunkSize)
      Creates a new stream that uses the specified chunk size.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void write​(byte[] data, int srcOffset, int length)
      Writes the data buffer in chunks to the underlying stream
      • Methods inherited from class java.io.FilterOutputStream

        close, flush, write, write
      • 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
    • Constructor Detail

      • ChunkedOutputStream

        public ChunkedOutputStream​(java.io.OutputStream stream,
                                   int chunkSize)
        Creates a new stream that uses the specified chunk size.
        Parameters:
        stream - the stream to wrap
        chunkSize - the chunk size to use; must be a positive number.
        Throws:
        java.lang.IllegalArgumentException - if the chunk size is <= 0
      • ChunkedOutputStream

        public ChunkedOutputStream​(java.io.OutputStream stream)
        Creates a new stream that uses a chunk size of DEFAULT_CHUNK_SIZE.
        Parameters:
        stream - the stream to wrap
    • Method Detail

      • write

        public void write​(byte[] data,
                          int srcOffset,
                          int length)
                   throws java.io.IOException
        Writes the data buffer in chunks to the underlying stream
        Overrides:
        write in class java.io.FilterOutputStream
        Parameters:
        data - the data to write
        srcOffset - the offset
        length - the length of data to write
        Throws:
        java.io.IOException - if an I/O error occurs.