net.sf.zipme
Class GZIPInputStream

java.lang.Object
  extended byjava.io.InputStream
      extended bynet.sf.zipme.InflaterInputStream
          extended bynet.sf.zipme.GZIPInputStream

public class GZIPInputStream
extends InflaterInputStream

This filter stream is used to decompress a "GZIP" format stream. The "GZIP" format is described in RFC 1952.

Since:
JDK 1.1

Field Summary
protected  CRC32 crc
          The CRC-32 checksum value for uncompressed data.
protected  boolean eos
          Indicates whether or not the end of the stream has been reached.
static int GZIP_MAGIC
          The magic number found at the start of a GZIP stream.
 
Fields inherited from class net.sf.zipme.InflaterInputStream
buf, in, inf, len
 
Constructor Summary
GZIPInputStream(java.io.InputStream in)
          Creates a GZIPInputStream with the default buffer size.
GZIPInputStream(java.io.InputStream in, int size)
          Creates a GZIPInputStream with the specified buffer size.
 
Method Summary
 void close()
          Closes the input stream.
 int read(byte[] buf, int offset, int len)
          Reads in GZIP-compressed data and stores it in uncompressed form into an array of bytes.
 
Methods inherited from class net.sf.zipme.InflaterInputStream
available, fill, mark, markSupported, read, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

GZIP_MAGIC

public static final int GZIP_MAGIC
The magic number found at the start of a GZIP stream.

See Also:
Constant Field Values

crc

protected CRC32 crc
The CRC-32 checksum value for uncompressed data.


eos

protected boolean eos
Indicates whether or not the end of the stream has been reached.

Constructor Detail

GZIPInputStream

public GZIPInputStream(java.io.InputStream in)
                throws java.io.IOException
Creates a GZIPInputStream with the default buffer size.

Parameters:
in - The stream to read compressed data from (in GZIP format).
Throws:
java.io.IOException - if an error occurs during an I/O operation.

GZIPInputStream

public GZIPInputStream(java.io.InputStream in,
                       int size)
                throws java.io.IOException
Creates a GZIPInputStream with the specified buffer size.

Parameters:
in - The stream to read compressed data from (in GZIP format).
size - The size of the buffer to use.
Throws:
java.io.IOException - if an error occurs during an I/O operation.
java.lang.IllegalArgumentException - if size is less than or equal to 0.
Method Detail

close

public void close()
           throws java.io.IOException
Closes the input stream.

Overrides:
close in class InflaterInputStream
Throws:
java.io.IOException - if an error occurs during an I/O operation.

read

public int read(byte[] buf,
                int offset,
                int len)
         throws java.io.IOException
Reads in GZIP-compressed data and stores it in uncompressed form into an array of bytes. The method will block until either enough input data becomes available or the compressed stream reaches its end.

Overrides:
read in class InflaterInputStream
Parameters:
buf - the buffer into which the uncompressed data will be stored.
offset - the offset indicating where in buf the uncompressed data should be placed.
len - the number of uncompressed bytes to be read.
Throws:
java.io.IOException