Class LZMAUtils


  • public class LZMAUtils
    extends java.lang.Object
    Utility code for the LZMA compression format.
    Since:
    1.10
    • 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
      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.
      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.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • fileNameUtil

        private static final FileNameUtil fileNameUtil
      • HEADER_MAGIC

        private static final byte[] HEADER_MAGIC
        LZMA Header Magic Bytes begin a LZMA file.
    • Constructor Detail

      • LZMAUtils

        private LZMAUtils()
        Private constructor to prevent instantiation of this utility class.
    • Method Detail

      • 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
        Since:
        1.25.0
      • 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
        Since:
        1.25.0
      • 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
        Since:
        1.25.0
      • 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
      • 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 check
        length - the number of bytes to check
        Returns:
        true if signature matches the .lzma magic bytes, false otherwise