Package adams.core.io

Class XzUtils


  • public class XzUtils
    extends Object
    Helper class for xz related operations.
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    • Constructor Detail

      • XzUtils

        public XzUtils()
    • Method Detail

      • decompress

        public static String decompress​(File archiveFile,
                                        int buffer)
        Decompresses the specified archive to a file without the ".xz" extension.
        Parameters:
        archiveFile - the archive file to decompress
        buffer - the buffer size to use
        Returns:
        the error message, null if everything OK
      • decompress

        public static String decompress​(File archiveFile,
                                        int buffer,
                                        File outputFile)
        Decompresses the specified archive.
        Parameters:
        archiveFile - the archive file to decompress
        buffer - the buffer size to use
        outputFile - the destination file
        Returns:
        the error message, null if everything OK
      • compress

        public static String compress​(File inputFile,
                                      int buffer)
        Compresses the specified file to a file with the ".xz" extension.
        Parameters:
        inputFile - the file to compress
        buffer - the buffer size to use
        Returns:
        the error message, null if everything OK
      • compress

        public static String compress​(File inputFile,
                                      int buffer,
                                      File outputFile)
        Compresses the specified file. Does not remove the input file.
        Parameters:
        inputFile - the file to compress
        buffer - the buffer size to use
        outputFile - the destination file (the archive)
        Returns:
        the error message, null if everything OK
      • compress

        public static String compress​(File inputFile,
                                      int buffer,
                                      File outputFile,
                                      boolean removeInput)
        Compresses the specified file.
        Parameters:
        inputFile - the file to compress
        buffer - the buffer size to use
        outputFile - the destination file (the archive)
        removeInput - whether to remove the input file
        Returns:
        the error message, null if everything OK
      • compress

        public static byte[] compress​(byte[] input)
        Compresses the specified bytes using xz.
        Parameters:
        input - the bytes to compress
        Returns:
        the compressed bytes, null in case of error
      • compress

        public static byte[] compress​(byte[] input,
                                      MessageCollection errors)
        Compresses the specified bytes using xz.
        Parameters:
        input - the bytes to compress
        Returns:
        the compressed bytes, null in case of error
      • decompress

        public static byte[] decompress​(byte[] input,
                                        int buffer)
        Decompresses the specified xz compressed bytes.
        Parameters:
        input - the compressed bytes
        buffer - the buffer size to use
        Returns:
        the decompressed bytes, null in case of error
      • decompress

        public static byte[] decompress​(byte[] input,
                                        int buffer,
                                        MessageCollection errors)
        Decompresses the specified xz compressed bytes.
        Parameters:
        input - the compressed bytes
        buffer - the buffer size to use
        errors - for collecting errors
        Returns:
        the decompressed bytes, null in case of error
      • isXzCompressed

        public static boolean isXzCompressed​(File file)
        Checks whether the file is xz compressed. See: https://tukaani.org/xz/xz-file-format.txt
        Parameters:
        file - the file to inspect
        Returns:
        true if gzip
      • isXzCompressed

        public static boolean isXzCompressed​(byte[] data)
        Checks whether the array is xz compressed. See: https://tukaani.org/xz/xz-file-format.txt
        Parameters:
        data - the data to inspect
        Returns:
        true if gzip