| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjava.io.InputStream
java.io.FilterInputStream
org.apache.tools.tar.TarInputStream
public class TarInputStream
The TarInputStream reads a UNIX tar archive as an InputStream. methods are provided to position at each successive entry in the archive, and the read each entry as a normal input stream using read().
| Field Summary | |
|---|---|
| protected  TarBuffer | buffer | 
| protected  TarEntry | currEntry | 
| protected  boolean | debug | 
| protected  long | entryOffset | 
| protected  long | entrySize | 
| protected  boolean | hasHitEOF | 
| protected  byte[] | oneBufThis contents of this array is not used at all in this class, it is only here to avoid repreated object creation during calls to the no-arg read method. | 
| protected  byte[] | readBuf | 
| Fields inherited from class java.io.FilterInputStream | 
|---|
| in | 
| Constructor Summary | |
|---|---|
| TarInputStream(java.io.InputStream is)Constructor for TarInputStream. | |
| TarInputStream(java.io.InputStream is,
               int blockSize)Constructor for TarInputStream. | |
| TarInputStream(java.io.InputStream is,
               int blockSize,
               int recordSize)Constructor for TarInputStream. | |
| TarInputStream(java.io.InputStream is,
               int blockSize,
               int recordSize,
               java.lang.String encoding)Constructor for TarInputStream. | |
| TarInputStream(java.io.InputStream is,
               int blockSize,
               java.lang.String encoding)Constructor for TarInputStream. | |
| TarInputStream(java.io.InputStream is,
               java.lang.String encoding)Constructor for TarInputStream. | |
| Method Summary | |
|---|---|
|  int | available()Get the available data that can be read from the current entry in the archive. | 
|  boolean | canReadEntryData(TarEntry te)Whether this class is able to read the given entry. | 
|  void | close()Closes this stream. | 
|  void | copyEntryContents(java.io.OutputStream out)Copies the contents of the current tar archive entry directly into an output stream. | 
| protected  byte[] | getLongNameData()Get the next entry in this tar archive as longname data. | 
|  TarEntry | getNextEntry()Get the next entry in this tar archive. | 
|  int | getRecordSize()Get the record size being used by this stream's TarBuffer. | 
|  void | mark(int markLimit)Since we do not support marking just yet, we do nothing. | 
|  boolean | markSupported()Since we do not support marking just yet, we return false. | 
|  int | read()Reads a byte from the current tar archive entry. | 
|  int | read(byte[] buf,
     int offset,
     int numToRead)Reads bytes from the current tar archive entry. | 
|  void | reset()Since we do not support marking just yet, we do nothing. | 
|  void | setDebug(boolean debug)Sets the debugging flag. | 
|  long | skip(long numToSkip)Skip bytes in the input buffer. | 
| Methods inherited from class java.io.FilterInputStream | 
|---|
| read | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
protected boolean debug
protected boolean hasHitEOF
protected long entrySize
protected long entryOffset
protected byte[] readBuf
protected TarBuffer buffer
protected TarEntry currEntry
protected byte[] oneBuf
| Constructor Detail | 
|---|
public TarInputStream(java.io.InputStream is)
is - the input stream to use
public TarInputStream(java.io.InputStream is,
                      java.lang.String encoding)
is - the input stream to useencoding - name of the encoding to use for file names
public TarInputStream(java.io.InputStream is,
                      int blockSize)
is - the input stream to useblockSize - the block size to use
public TarInputStream(java.io.InputStream is,
                      int blockSize,
                      java.lang.String encoding)
is - the input stream to useblockSize - the block size to useencoding - name of the encoding to use for file names
public TarInputStream(java.io.InputStream is,
                      int blockSize,
                      int recordSize)
is - the input stream to useblockSize - the block size to userecordSize - the record size to use
public TarInputStream(java.io.InputStream is,
                      int blockSize,
                      int recordSize,
                      java.lang.String encoding)
is - the input stream to useblockSize - the block size to userecordSize - the record size to useencoding - name of the encoding to use for file names| Method Detail | 
|---|
public void setDebug(boolean debug)
debug - True to turn on debugging.
public void close()
           throws java.io.IOException
close in interface java.io.Closeableclose in class java.io.FilterInputStreamjava.io.IOException - on errorpublic int getRecordSize()
public int available()
              throws java.io.IOException
available in class java.io.FilterInputStreamjava.io.IOException - for signature
public long skip(long numToSkip)
          throws java.io.IOException
skip in class java.io.FilterInputStreamnumToSkip - The number of bytes to skip.
java.io.IOException - on errorpublic boolean markSupported()
markSupported in class java.io.FilterInputStreampublic void mark(int markLimit)
mark in class java.io.FilterInputStreammarkLimit - The limit to mark.public void reset()
reset in class java.io.FilterInputStream
public TarEntry getNextEntry()
                      throws java.io.IOException
java.io.IOException - on error
protected byte[] getLongNameData()
                          throws java.io.IOException
java.io.IOException - on error
public int read()
         throws java.io.IOException
read in class java.io.FilterInputStreamjava.io.IOException - on error
public int read(byte[] buf,
                int offset,
                int numToRead)
         throws java.io.IOException
read in class java.io.FilterInputStreambuf - The buffer into which to place bytes read.offset - The offset at which to place bytes read.numToRead - The number of bytes to read.
java.io.IOException - on error
public void copyEntryContents(java.io.OutputStream out)
                       throws java.io.IOException
out - The OutputStream into which to write the entry's data.
java.io.IOException - on errorpublic boolean canReadEntryData(TarEntry te)
May return false if the current entry is a sparse file.
| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||