|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.commons.compress.archivers.tar.TarBuffer
public class TarBuffer
The TarBuffer class implements the tar archive concept of a buffered input stream. This concept goes back to the days of blocked tape drives and special io devices. In the Java universe, the only real function that this class performs is to ensure that files have the correct "block" size, or other tars will complain.
You should never have a need to access this class directly. TarBuffers are created by Tar IO Streams.
Field Summary | |
---|---|
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 Summary | |
---|---|
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)
|
Method Summary | |
---|---|
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. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
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
Constructor Detail |
---|
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)
Method Detail |
---|
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)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |