Class TarUtils


  • public class TarUtils
    extends Object
    This class provides static utility methods to work with byte streams.
    • Constructor Detail

      • TarUtils

        public TarUtils()
    • Method Detail

      • parseOctal

        public static long parseOctal​(byte[] header,
                                      int offset,
                                      int length)
        Parse an octal string from a header buffer. This is used for the file permission mode value.
        Parameters:
        header - The header buffer from which to parse.
        offset - The offset into the buffer from which to parse.
        length - The number of header bytes to parse.
        Returns:
        The long value of the octal string.
      • parseName

        public static StringBuffer parseName​(byte[] header,
                                             int offset,
                                             int length)
        Parse an entry name from a header buffer.
        Parameters:
        header - The header buffer from which to parse.
        offset - The offset into the buffer from which to parse.
        length - The number of header bytes to parse.
        Returns:
        The header's entry name.
      • getNameBytes

        public static int getNameBytes​(StringBuffer name,
                                       byte[] buf,
                                       int offset,
                                       int length)
        Determine the number of bytes in an entry name.
        Parameters:
        name - The header name from which to parse.
        buf - The buffer from which to parse.
        offset - The offset into the buffer from which to parse.
        length - The number of header bytes to parse.
        Returns:
        The number of bytes in a header's entry name.
      • getOctalBytes

        public static int getOctalBytes​(long value,
                                        byte[] buf,
                                        int offset,
                                        int length)
        Parse an octal integer from a header buffer.
        Parameters:
        value - The header value
        buf - The buffer from which to parse.
        offset - The offset into the buffer from which to parse.
        length - The number of header bytes to parse.
        Returns:
        The integer value of the octal bytes.
      • getLongOctalBytes

        public static int getLongOctalBytes​(long value,
                                            byte[] buf,
                                            int offset,
                                            int length)
        Parse an octal long integer from a header buffer.
        Parameters:
        value - The header value
        buf - The buffer from which to parse.
        offset - The offset into the buffer from which to parse.
        length - The number of header bytes to parse.
        Returns:
        The long value of the octal bytes.
      • getCheckSumOctalBytes

        public static int getCheckSumOctalBytes​(long value,
                                                byte[] buf,
                                                int offset,
                                                int length)
        Parse the checksum octal integer from a header buffer.
        Parameters:
        value - The header value
        buf - The buffer from which to parse.
        offset - The offset into the buffer from which to parse.
        length - The number of header bytes to parse.
        Returns:
        The integer value of the entry's checksum.
      • computeCheckSum

        public static long computeCheckSum​(byte[] buf)
        Compute the checksum of a tar entry header.
        Parameters:
        buf - The tar entry's header buffer.
        Returns:
        The computed checksum.