Class FilterOptions

java.lang.Object
org.tukaani.xz.FilterOptions
All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
ARMOptions, ARMThumbOptions, DeltaOptions, IA64Options, LZMA2Options, PowerPCOptions, SPARCOptions, X86Options

public abstract class FilterOptions
extends Object
implements Cloneable
Base class for filter-specific options classes.
  • Method Details

    • getEncoderMemoryUsage

      public static int getEncoderMemoryUsage​(FilterOptions[] options)
      Gets how much memory the encoder will need with the given filter chain. This function simply calls getEncoderMemoryUsage() for every filter in the array and returns the sum of the returned values.
    • getDecoderMemoryUsage

      public static int getDecoderMemoryUsage​(FilterOptions[] options)
      Gets how much memory the decoder will need with the given filter chain. This function simply calls getDecoderMemoryUsage() for every filter in the array and returns the sum of the returned values.
    • getEncoderMemoryUsage

      public abstract int getEncoderMemoryUsage()
      Gets how much memory the encoder will need with these options.
    • getOutputStream

      public FinishableOutputStream getOutputStream​(FinishableOutputStream out)
      Gets a raw (no XZ headers) encoder output stream using these options. Raw streams are an advanced feature. In most cases you want to store the compressed data in the .xz container format instead of using a raw stream. To use this filter in a .xz file, pass this object to XZOutputStream.

      This is uses ArrayCache.getDefaultCache() as the ArrayCache.

    • getOutputStream

      public abstract FinishableOutputStream getOutputStream​(FinishableOutputStream out, ArrayCache arrayCache)
      Gets a raw (no XZ headers) encoder output stream using these options and the given ArrayCache. Raw streams are an advanced feature. In most cases you want to store the compressed data in the .xz container format instead of using a raw stream. To use this filter in a .xz file, pass this object to XZOutputStream.
    • getDecoderMemoryUsage

      public abstract int getDecoderMemoryUsage()
      Gets how much memory the decoder will need to decompress the data that was encoded with these options.
    • getInputStream

      public InputStream getInputStream​(InputStream in) throws IOException
      Gets a raw (no XZ headers) decoder input stream using these options.

      This is uses ArrayCache.getDefaultCache() as the ArrayCache.

      Throws:
      IOException
    • getInputStream

      public abstract InputStream getInputStream​(InputStream in, ArrayCache arrayCache) throws IOException
      Gets a raw (no XZ headers) decoder input stream using these options and the given ArrayCache.
      Throws:
      IOException