public class TarBuffer
extends java.lang.Object
You should never have a need to access this class directly. TarBuffers are created by Tar IO Streams.
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_BLOCKSIZE |
static int |
DEFAULT_RECORDSIZE |
private byte[] |
m_blockBuffer |
private int |
m_blockSize |
private int |
m_currBlkIdx |
private int |
m_currRecIdx |
private boolean |
m_debug |
private java.io.InputStream |
m_input |
private java.io.OutputStream |
m_output |
private int |
m_recordSize |
private int |
m_recsPerBlock |
Constructor and Description |
---|
TarBuffer(java.io.InputStream input) |
TarBuffer(java.io.InputStream input,
int blockSize) |
TarBuffer(java.io.InputStream input,
int blockSize,
int recordSize) |
TarBuffer(java.io.OutputStream output) |
TarBuffer(java.io.OutputStream output,
int blockSize) |
TarBuffer(java.io.OutputStream output,
int blockSize,
int recordSize) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Close the TarBuffer.
|
protected void |
debug(java.lang.String message) |
private void |
flushBlock()
Flush the current data block if it has any data in it.
|
int |
getBlockSize()
Get the TAR Buffer's block size.
|
int |
getCurrentBlockNum()
Get the current block number, zero based.
|
int |
getCurrentRecordNum()
Get the current record number, within the current block, zero based.
|
int |
getRecordSize()
Get the TAR Buffer's record size.
|
private void |
initialize(int blockSize,
int recordSize)
Initialization common to all constructors.
|
boolean |
isEOFRecord(byte[] record)
Determine if an archive record indicate End of Archive.
|
private boolean |
readBlock() |
byte[] |
readRecord()
Read a record from the input stream and return the data.
|
void |
setDebug(boolean debug)
Set the debugging flag for the buffer.
|
void |
skipRecord()
Skip over a record on the input stream.
|
private void |
writeBlock()
Write a TarBuffer block to the archive.
|
void |
writeRecord(byte[] record)
Write an archive record to the archive.
|
void |
writeRecord(byte[] buffer,
int offset)
Write an archive record to the archive, where the record may be inside of
a larger array buffer.
|
public static final int DEFAULT_RECORDSIZE
public static final int DEFAULT_BLOCKSIZE
private byte[] m_blockBuffer
private int m_blockSize
private int m_currBlkIdx
private int m_currRecIdx
private boolean m_debug
private java.io.InputStream m_input
private java.io.OutputStream m_output
private int m_recordSize
private int m_recsPerBlock
public TarBuffer(java.io.InputStream input)
public TarBuffer(java.io.InputStream input, int blockSize)
public TarBuffer(java.io.InputStream input, int blockSize, int recordSize)
public TarBuffer(java.io.OutputStream output)
public TarBuffer(java.io.OutputStream output, int blockSize)
public TarBuffer(java.io.OutputStream output, int blockSize, int recordSize)
public void setDebug(boolean debug)
debug
- If true, print debugging output.public int getBlockSize()
public int getCurrentBlockNum()
public int getCurrentRecordNum()
public int getRecordSize()
public boolean isEOFRecord(byte[] record)
record
- The record data to check.public void close() throws java.io.IOException
java.io.IOException
public byte[] readRecord() throws java.io.IOException
java.io.IOException
- Description of Exceptionpublic void skipRecord() throws java.io.IOException
java.io.IOException
public void writeRecord(byte[] record) throws java.io.IOException
record
- The record data to write to the archive.java.io.IOException
public void writeRecord(byte[] buffer, int offset) throws java.io.IOException
buffer
- The buffer containing the record data to write.offset
- The offset of the record data within buf.java.io.IOException
private void flushBlock() throws java.io.IOException
java.io.IOException
private void initialize(int blockSize, int recordSize)
private boolean readBlock() throws java.io.IOException
java.io.IOException
private void writeBlock() throws java.io.IOException
java.io.IOException
- Description of Exceptionprotected void debug(java.lang.String message)