Package adams.core.io

Class ZstdUtils


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

      • ZstdUtils

        public ZstdUtils()
    • Method Detail

      • decompress

        public static String decompress​(File archiveFile,
                                        int buffer)
        Decompresses the specified archive to a file without the ".zst" 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 ".zst" 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 zstd.
        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 zstd.
        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 zstd 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 zstd 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
      • isZstdCompressed

        public static boolean isZstdCompressed​(File file)
        Checks whether the file is Zstd compressed. See: https://en.wikipedia.org/wiki/Zstandard
        Parameters:
        file - the file to inspect
        Returns:
        true if gzip
      • isZstdCompressed

        public static boolean isZstdCompressed​(byte[] data)
        Checks whether the array is Zstd compressed. See: https://en.wikipedia.org/wiki/Zstandard
        Parameters:
        data - the data to inspect
        Returns:
        true if gzip