org.apache.commons.compress.compressors.lz4

## Class BlockLZ4CompressorOutputStream

- java.lang.Object
- - java.io.OutputStream
  - - org.apache.commons.compress.compressors.CompressorOutputStream
    - - org.apache.commons.compress.compressors.lz4.BlockLZ4CompressorOutputStream

- All Implemented Interfaces:
    Closeable, Flushable, AutoCloseable

      public class BlockLZ4CompressorOutputStream
      extends CompressorOutputStream

  CompressorOutputStream for the LZ4 block format.
  Since:
    1.14
  See Also:
    LZ4 Block Format Description
  This class is not thread-safe

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BlockLZ4CompressorOutputStream(OutputStream os)` Creates a new LZ4 output stream.
    `BlockLZ4CompressorOutputStream(OutputStream os, Parameters params)` Creates a new LZ4 output stream.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()`
    `static Parameters.Builder` | `createParameterBuilder()` Returns a builder correctly configured for the LZ4 algorithm.
    `void` | `finish()` Compresses all remaining data and writes it to the stream, doesn't close the underlying stream.
    `void` | `prefill(byte[] data, int off, int len)` Adds some initial data to fill the window with.
    `void` | `write(byte[] data, int off, int len)`
    `void` | `write(int b)`

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

      `flush, write`

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

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

- - ### Constructor Detail

    - #### BlockLZ4CompressorOutputStream

          public BlockLZ4CompressorOutputStream(OutputStream os)

      Creates a new LZ4 output stream.
      Parameters:
        `os` - An OutputStream to read compressed data from

    - #### BlockLZ4CompressorOutputStream

          public BlockLZ4CompressorOutputStream(OutputStream os,
                                                Parameters params)

      Creates a new LZ4 output stream.
      Parameters:
        `os` - An OutputStream to read compressed data from
        `params` - The parameters to use for LZ77 compression.

  - ### Method Detail

    - #### createParameterBuilder

          public static Parameters.Builder createParameterBuilder()

      Returns a builder correctly configured for the LZ4 algorithm.
      Returns:
        a builder correctly configured for the LZ4 algorithm

    - #### close

          public void close()
                     throws IOException

      Specified by:
        `close` in interface `Closeable`
      Specified by:
        `close` in interface `AutoCloseable`
      Overrides:
        `close` in class `OutputStream`
      Throws:
        `IOException`

    - #### finish

          public void finish()
                      throws IOException

      Compresses all remaining data and writes it to the stream, doesn't close the underlying stream.
      Throws:
        `IOException` - if an error occurs

    - #### prefill

          public void prefill(byte[] data,
                              int off,
                              int len)

      Adds some initial data to fill the window with.
      Parameters:
        `data` - the data to fill the window with.
        `off` - offset of real data into the array
        `len` - amount of data
      Throws:
        `IllegalStateException` - if the stream has already started to write data
      See Also:
        `LZ77Compressor.prefill(byte[])`

    - #### write

          public void write(byte[] data,
                            int off,
                            int len)
                     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`

Copyright © 2002–2022 The Apache Software Foundation. All rights reserved.