org.apache.tools.tar
Class TarUtils

java.lang.Object
  extended by org.apache.tools.tar.TarUtils

public class TarUtils
extends java.lang.Object

This class provides static utility methods to work with byte streams.


Constructor Summary
TarUtils()
           
 
Method Summary
static long computeCheckSum(byte[] buf)
          Compute the checksum of a tar entry header.
static int getCheckSumOctalBytes(long value, byte[] buf, int offset, int length)
          Parse the checksum octal integer from a header buffer.
static int getLongOctalBytes(long value, byte[] buf, int offset, int length)
          Parse an octal long integer from a header buffer.
static int getNameBytes(java.lang.StringBuffer name, byte[] buf, int offset, int length)
          Determine the number of bytes in an entry name.
static int getOctalBytes(long value, byte[] buf, int offset, int length)
          Parse an octal integer from a header buffer.
static java.lang.StringBuffer parseName(byte[] header, int offset, int length)
          Parse an entry name from a header buffer.
static long parseOctal(byte[] header, int offset, int length)
          Parse an octal string from a header buffer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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 java.lang.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(java.lang.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.