Class LZMACompressorInputStream

    • Constructor Summary

      Constructors 
      Constructor Description
      LZMACompressorInputStream​(java.io.InputStream inputStream)
      Creates a new input stream that decompresses LZMA-compressed data from the specified input stream.
      LZMACompressorInputStream​(java.io.InputStream inputStream, int memoryLimitInKb)
      Creates a new input stream that decompresses LZMA-compressed data from the specified input stream.
    • Constructor Detail

      • LZMACompressorInputStream

        public LZMACompressorInputStream​(java.io.InputStream inputStream)
                                  throws java.io.IOException
        Creates a new input stream that decompresses LZMA-compressed data from the specified input stream.
        Parameters:
        inputStream - where to read the compressed data
        Throws:
        java.io.IOException - if the input is not in the .lzma format, the input is corrupt or truncated, the .lzma headers specify sizes that are not supported by this implementation, or the underlying inputStream throws an exception
      • LZMACompressorInputStream

        public LZMACompressorInputStream​(java.io.InputStream inputStream,
                                         int memoryLimitInKb)
                                  throws java.io.IOException
        Creates a new input stream that decompresses LZMA-compressed data from the specified input stream.
        Parameters:
        inputStream - where to read the compressed data
        memoryLimitInKb - calculated memory use threshold. Throws MemoryLimitException if calculate memory use is above this threshold
        Throws:
        java.io.IOException - if the input is not in the .lzma format, the input is corrupt or truncated, the .lzma headers specify sizes that are not supported by this implementation, or the underlying inputStream throws an exception
        Since:
        1.14
    • Method Detail

      • read

        public int read()
                 throws java.io.IOException
        Specified by:
        read in class java.io.InputStream
        Throws:
        java.io.IOException
      • read

        public int read​(byte[] buf,
                        int off,
                        int len)
                 throws java.io.IOException
        Overrides:
        read in class java.io.InputStream
        Throws:
        java.io.IOException
      • skip

        public long skip​(long n)
                  throws java.io.IOException
        Overrides:
        skip in class java.io.InputStream
        Throws:
        java.io.IOException
      • available

        public int available()
                      throws java.io.IOException
        Overrides:
        available in class java.io.InputStream
        Throws:
        java.io.IOException
      • close

        public void close()
                   throws java.io.IOException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.InputStream
        Throws:
        java.io.IOException
      • getCompressedCount

        public long getCompressedCount()
        Specified by:
        getCompressedCount in interface InputStreamStatistics
        Returns:
        the amount of raw or compressed bytes read by the stream
        Since:
        1.17
      • matches

        public static boolean matches​(byte[] signature,
                                      int length)
        Checks if the signature matches what is expected for an lzma file.
        Parameters:
        signature - the bytes to check
        length - the number of bytes to check
        Returns:
        true, if this stream is an lzma compressed stream, false otherwise
        Since:
        1.10