Class GzipParameters

    • Constructor Detail

      • GzipParameters

        public GzipParameters()
    • Method Detail

      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • getBufferSize

        public int getBufferSize()
        Gets size of the buffer used to retrieve compressed data.
        Returns:
        The size of the buffer used to retrieve compressed data.
        Since:
        1.21
        See Also:
        setBufferSize(int)
      • getComment

        public java.lang.String getComment()
        Gets an arbitrary user-defined comment.
        Returns:
        a user-defined comment.
      • getCompressionLevel

        public int getCompressionLevel()
        Gets the compression level.
        Returns:
        the compression level.
        See Also:
        Deflater.NO_COMPRESSION, Deflater.BEST_SPEED, Deflater.DEFAULT_COMPRESSION, Deflater.BEST_COMPRESSION
      • getDeflateStrategy

        public int getDeflateStrategy()
        Gets the deflater strategy.
        Returns:
        the deflater strategy, Deflater.DEFAULT_STRATEGY by default.
        Since:
        1.23
        See Also:
        setDeflateStrategy(int), Deflater.setStrategy(int)
      • getExtraField

        public ExtraField getExtraField()
        Gets the Extra subfields from the header.
        Returns:
        the extra subfields from the header.
        Since:
        1.28.0
      • getFilename

        @Deprecated
        public java.lang.String getFilename()
        Deprecated.
        Gets the file name.
        Returns:
        the file name.
      • getFileName

        public java.lang.String getFileName()
        Gets the file name.
        Returns:
        the file name.
        Since:
        1.25.0
      • getFileNameCharset

        public java.nio.charset.Charset getFileNameCharset()
        Gets the Charset to use for writing file names and comments.

        The default value is GzipUtils.GZIP_ENCODING.

        Returns:
        the Charset to use for writing file names and comments.
        Since:
        1.28.0
      • getHeaderCRC

        public boolean getHeaderCRC()
        Returns if the header CRC is to be added (when writing) or was present (when reading).
        Returns:
        true is header CRC will be added (on write) or was found (after read).
        Since:
        1.28.0
      • getModificationInstant

        public java.time.Instant getModificationInstant()
        Gets the most recent modification time (MTIME) of the original file being compressed.
        Returns:
        the most recent modification time.
        Since:
        1.28.0
      • getModificationTime

        public long getModificationTime()
        Gets the most recent modification time (MTIME) of the original file being compressed, in seconds since 00:00:00 GMT, Jan. 1, 1970.

        The time is in Unix format, for example, seconds since 00:00:00 GMT, Jan. 1, 1970. (Note that this may cause problems for MS-DOS and other systems that use local rather than Universal time.) If the compressed data did not come from a file, MTIME is set to the time at which compression started. MTIME = 0 means no time stamp is available.

        Returns:
        the most recent modification time in seconds since 00:00:00 GMT, Jan. 1, 1970.
      • getOperatingSystem

        public int getOperatingSystem()
        Gets the OS code type.
        Returns:
        the OS code type.
      • getOS

        public GzipParameters.OS getOS()
        Gets the OS type.
        Returns:
        the OS type.
        Since:
        1.28.0
      • getTrailerCrc

        public long getTrailerCrc()
        Gets the trailer CRC value.
        Returns:
        the trailer CRC value.
        Since:
        1.28.0
      • getTrailerISize

        public long getTrailerISize()
        Gets the trailer ISIZE value.
        Returns:
        the trailer ISIZE value.
        Since:
        1.28.0
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • setBufferSize

        public void setBufferSize​(int bufferSize)
        Sets size of the buffer used to retrieve compressed data from Deflater and write to underlying OutputStream.
        Parameters:
        bufferSize - the bufferSize to set. Must be a positive type.
        Since:
        1.21
      • setComment

        public void setComment​(java.lang.String comment)
        Sets an arbitrary user-defined comment.
        Parameters:
        comment - a user-defined comment.
        Throws:
        java.lang.IllegalArgumentException - if the encoded bytes would contain a nul byte '\0' reserved for gzip field termination.
      • setCompressionLevel

        public void setCompressionLevel​(int compressionLevel)
        Sets the compression level.
        Parameters:
        compressionLevel - the compression level (between 0 and 9)
        See Also:
        Deflater.NO_COMPRESSION, Deflater.BEST_SPEED, Deflater.DEFAULT_COMPRESSION, Deflater.BEST_COMPRESSION
      • setDeflateStrategy

        public void setDeflateStrategy​(int deflateStrategy)
        Sets the deflater strategy.
        Parameters:
        deflateStrategy - the new compression strategy
        Since:
        1.23
        See Also:
        Deflater.setStrategy(int)
      • setExtraField

        public void setExtraField​(ExtraField extra)
        Sets the extra subfields. Note that a non-null extra will appear in the gzip header regardless of the presence of subfields, while a null extra will not appear at all.
        Parameters:
        extra - the series of extra sub fields.
        Since:
        1.28.0
      • setFilename

        @Deprecated
        public void setFilename​(java.lang.String fileName)
        Deprecated.
        Sets the name of the compressed file.
        Parameters:
        fileName - the name of the file without the directory path
        Throws:
        java.lang.IllegalArgumentException - if the encoded bytes would contain a nul byte '\0' reserved for gzip field termination.
      • setFileName

        public void setFileName​(java.lang.String fileName)
        Sets the name of the compressed file.
        Parameters:
        fileName - the name of the file without the directory path
        Throws:
        java.lang.IllegalArgumentException - if the encoded bytes would contain a nul byte '\0' reserved for gzip field termination.
      • setHeaderCRC

        public void setHeaderCRC​(boolean headerCRC)
        Establishes the presence of the header flag FLG.FHCRC and its headers CRC16 value.
        Parameters:
        headerCRC - when true, the header CRC16 (actually low 16 buts of a CRC32) is calculated and inserted in the gzip header on write; on read it means the field was present.
        Since:
        1.28.0
      • setModificationInstant

        public void setModificationInstant​(java.time.Instant modificationTime)
        Sets the modification time (MTIME) of the compressed file.
        Parameters:
        modificationTime - the modification time, in milliseconds
        Since:
        1.28.0
      • setModificationTime

        public void setModificationTime​(long modificationTimeSeconds)
        Sets the modification time (MTIME) of the compressed file, in seconds since 00:00:00 GMT, Jan. 1, 1970.

        The time is in Unix format, for example, seconds since 00:00:00 GMT, Jan. 1, 1970. (Note that this may cause problems for MS-DOS and other systems that use local rather than Universal time.) If the compressed data did not come from a file, MTIME is set to the time at which compression started. MTIME = 0 means no time stamp is available.

        Parameters:
        modificationTimeSeconds - the modification time, in seconds.
      • setOperatingSystem

        public void setOperatingSystem​(int operatingSystem)
        Sets the operating system on which the compression took place. The defined values are:
        • 0: FAT file system (MS-DOS, OS/2, NT/Win32)
        • 1: Amiga
        • 2: VMS (or OpenVMS)
        • 3: Unix
        • 4: VM/CMS
        • 5: Atari TOS
        • 6: HPFS file system (OS/2, NT)
        • 7: Macintosh
        • 8: Z-System
        • 9: CP/M
        • 10: TOPS-20
        • 11: NTFS file system (NT)
        • 12: QDOS
        • 13: Acorn RISCOS
        • 255: Unknown
        Parameters:
        operatingSystem - the code of the operating system
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object