Class XZCompressorInputStream
- java.lang.Object
-
- java.io.InputStream
-
- org.apache.commons.compress.compressors.CompressorInputStream
-
- org.apache.commons.compress.compressors.xz.XZCompressorInputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,InputStreamStatistics
public class XZCompressorInputStream extends CompressorInputStream implements InputStreamStatistics
XZ decompressor.- Since:
- 1.4
-
-
Constructor Summary
Constructors Constructor Description XZCompressorInputStream(java.io.InputStream inputStream)Creates a new input stream that decompresses XZ-compressed data from the specified input stream.XZCompressorInputStream(java.io.InputStream inputStream, boolean decompressConcatenated)Creates a new input stream that decompresses XZ-compressed data from the specified input stream.XZCompressorInputStream(java.io.InputStream inputStream, boolean decompressConcatenated, int memoryLimitInKb)Creates a new input stream that decompresses XZ-compressed data from the specified input stream.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intavailable()voidclose()longgetCompressedCount()Gets the amount of raw or compressed bytes read by the stream.static booleanmatches(byte[] signature, int length)Checks if the signature matches what is expected for a .xz file.intread()intread(byte[] buf, int off, int len)longskip(long n)-
Methods inherited from class org.apache.commons.compress.compressors.CompressorInputStream
getBytesRead, getCount, getUncompressedCount
-
Methods inherited from class java.io.InputStream
mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, transferTo
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.commons.compress.utils.InputStreamStatistics
getUncompressedCount
-
-
-
-
Constructor Detail
-
XZCompressorInputStream
public XZCompressorInputStream(java.io.InputStream inputStream) throws java.io.IOExceptionCreates a new input stream that decompresses XZ-compressed data from the specified input stream. This doesn't support concatenated .xz files.- Parameters:
inputStream- where to read the compressed data- Throws:
java.io.IOException- if the input is not in the .xz format, the input is corrupt or truncated, the .xz headers specify options that are not supported by this implementation, or the underlyinginputStreamthrows an exception
-
XZCompressorInputStream
public XZCompressorInputStream(java.io.InputStream inputStream, boolean decompressConcatenated) throws java.io.IOExceptionCreates a new input stream that decompresses XZ-compressed data from the specified input stream.- Parameters:
inputStream- where to read the compressed datadecompressConcatenated- if true, decompress until the end of the input; if false, stop after the first .xz stream and leave the input position to point to the next byte after the .xz stream- Throws:
java.io.IOException- if the input is not in the .xz format, the input is corrupt or truncated, the .xz headers specify options that are not supported by this implementation, or the underlyinginputStreamthrows an exception
-
XZCompressorInputStream
public XZCompressorInputStream(java.io.InputStream inputStream, boolean decompressConcatenated, int memoryLimitInKb) throws java.io.IOExceptionCreates a new input stream that decompresses XZ-compressed data from the specified input stream.- Parameters:
inputStream- where to read the compressed datadecompressConcatenated- if true, decompress until the end of the input; if false, stop after the first .xz stream and leave the input position to point to the next byte after the .xz streammemoryLimitInKb- memory limit used when reading blocks. If the estimated memory limit is exceeded onread(), aMemoryLimitExceptionis thrown.- Throws:
java.io.IOException- if the input is not in the .xz format, the input is corrupt or truncated, the .xz headers specify options that are not supported by this implementation, or the underlyinginputStreamthrows an exception- Since:
- 1.14
-
-
Method Detail
-
matches
public static boolean matches(byte[] signature, int length)Checks if the signature matches what is expected for a .xz file.- Parameters:
signature- the bytes to checklength- the number of bytes to check- Returns:
- true if signature matches the .xz magic bytes, false otherwise
-
available
public int available() throws java.io.IOException- Overrides:
availablein classjava.io.InputStream- Throws:
java.io.IOException
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.io.InputStream- Throws:
java.io.IOException
-
getCompressedCount
public long getCompressedCount()
Description copied from interface:InputStreamStatisticsGets the amount of raw or compressed bytes read by the stream.- Specified by:
getCompressedCountin interfaceInputStreamStatistics- Returns:
- the amount of raw or compressed bytes read by the stream.
- Since:
- 1.17
-
read
public int read() throws java.io.IOException- Specified by:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
read
public int read(byte[] buf, int off, int len) throws java.io.IOException- Overrides:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
skip
public long skip(long n) throws java.io.IOException- Overrides:
skipin classjava.io.InputStream- Throws:
java.io.IOException
-
-