public class TarBuffer extends Object
You should never have a need to access this class directly. TarBuffers are created by Tar IO Streams.
TarArchive
Modifier and Type | Field and Description |
---|---|
private byte[] |
blockBuffer |
private int |
blockSize |
private int |
currBlkIdx |
private int |
currRecIdx |
private boolean |
debug |
static int |
DEFAULT_BLKSIZE |
static int |
DEFAULT_RCDSIZE |
private InputStream |
inStream |
private OutputStream |
outStream |
private int |
recordSize |
private int |
recsPerBlock |
Constructor and Description |
---|
TarBuffer(InputStream inStream) |
TarBuffer(InputStream inStream,
int blockSize) |
TarBuffer(InputStream inStream,
int blockSize,
int recordSize) |
TarBuffer(OutputStream outStream) |
TarBuffer(OutputStream outStream,
int blockSize) |
TarBuffer(OutputStream outStream,
int blockSize,
int recordSize) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Close the TarBuffer.
|
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[] buf,
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_RCDSIZE
public static final int DEFAULT_BLKSIZE
private InputStream inStream
private OutputStream outStream
private byte[] blockBuffer
private int currBlkIdx
private int currRecIdx
private int blockSize
private int recordSize
private int recsPerBlock
private boolean debug
public TarBuffer(InputStream inStream)
public TarBuffer(InputStream inStream, int blockSize)
public TarBuffer(InputStream inStream, int blockSize, int recordSize)
public TarBuffer(OutputStream outStream)
public TarBuffer(OutputStream outStream, int blockSize)
public TarBuffer(OutputStream outStream, int blockSize, int recordSize)
private void initialize(int blockSize, int recordSize)
public int getBlockSize()
public int getRecordSize()
public void setDebug(boolean debug)
debug
- If true, print debugging output.public boolean isEOFRecord(byte[] record)
record
- The record data to check.public void skipRecord() throws IOException
IOException
public byte[] readRecord() throws IOException
IOException
private boolean readBlock() throws IOException
IOException
public int getCurrentBlockNum()
public int getCurrentRecordNum()
public void writeRecord(byte[] record) throws IOException
record
- The record data to write to the archive.IOException
public void writeRecord(byte[] buf, int offset) throws IOException
buf
- The buffer containing the record data to write.offset
- The offset of the record data within buf.IOException
private void writeBlock() throws IOException
IOException
private void flushBlock() throws IOException
IOException
public void close() throws IOException
IOException
WebARTS Library Licensed Under the GNU - General Public License. Other Libraries licensed under their respective Open Source Licenses