Class LZMAUtils
- java.lang.Object
-
- org.apache.commons.compress.compressors.lzma.LZMAUtils
-
public class LZMAUtils extends java.lang.Object
Utility code for the lzma compression format.- Since:
- 1.10
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
LZMAUtils.CachedAvailability
-
Field Summary
Fields Modifier and Type Field Description private static LZMAUtils.CachedAvailability
cachedLZMAAvailability
private static FileNameUtil
fileNameUtil
private static byte[]
HEADER_MAGIC
LZMA Header Magic Bytes begin a LZMA file.
-
Constructor Summary
Constructors Modifier Constructor Description private
LZMAUtils()
Private constructor to prevent instantiation of this utility class.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description (package private) static LZMAUtils.CachedAvailability
getCachedLZMAAvailability()
static java.lang.String
getCompressedFilename(java.lang.String fileName)
Maps the given file name to the name that the file should have after compression with lzma.static java.lang.String
getUncompressedFilename(java.lang.String fileName)
Maps the given name of a lzma-compressed file to the name that the file should have after uncompression.private static boolean
internalIsLZMACompressionAvailable()
static boolean
isCompressedFilename(java.lang.String fileName)
Detects common lzma suffixes in the given file name.static boolean
isLZMACompressionAvailable()
Are the classes required to support LZMA compression available?static boolean
matches(byte[] signature, int length)
Checks if the signature matches what is expected for a .lzma file.static void
setCacheLZMAAvailablity(boolean doCache)
Whether to cache the result of the LZMA check.
-
-
-
Field Detail
-
fileNameUtil
private static final FileNameUtil fileNameUtil
-
HEADER_MAGIC
private static final byte[] HEADER_MAGIC
LZMA Header Magic Bytes begin a LZMA file.
-
cachedLZMAAvailability
private static volatile LZMAUtils.CachedAvailability cachedLZMAAvailability
-
-
Method Detail
-
matches
public static boolean matches(byte[] signature, int length)
Checks if the signature matches what is expected for a .lzma file.- Parameters:
signature
- the bytes to checklength
- the number of bytes to check- Returns:
- true if signature matches the .lzma magic bytes, false otherwise
-
isLZMACompressionAvailable
public static boolean isLZMACompressionAvailable()
Are the classes required to support LZMA compression available?- Returns:
- true if the classes required to support LZMA compression are available
-
internalIsLZMACompressionAvailable
private static boolean internalIsLZMACompressionAvailable()
-
isCompressedFilename
public static boolean isCompressedFilename(java.lang.String fileName)
Detects common lzma suffixes in the given file name.- Parameters:
fileName
- name of a file- Returns:
true
if the file name has a common lzma suffix,false
otherwise
-
getUncompressedFilename
public static java.lang.String getUncompressedFilename(java.lang.String fileName)
Maps the given name of a lzma-compressed file to the name that the file should have after uncompression. Any file names with the generic ".lzma" suffix (or any other generic lzma suffix) is mapped to a name without that suffix. If no lzma suffix is detected, then the file name is returned unmapped.- Parameters:
fileName
- name of a file- Returns:
- name of the corresponding uncompressed file
-
getCompressedFilename
public static java.lang.String getCompressedFilename(java.lang.String fileName)
Maps the given file name to the name that the file should have after compression with lzma.- Parameters:
fileName
- name of a file- Returns:
- name of the corresponding compressed file
-
setCacheLZMAAvailablity
public static void setCacheLZMAAvailablity(boolean doCache)
Whether to cache the result of the LZMA check.This defaults to
false
in an OSGi environment andtrue
otherwise.- Parameters:
doCache
- whether to cache the result
-
getCachedLZMAAvailability
static LZMAUtils.CachedAvailability getCachedLZMAAvailability()
-
-