edu.harvard.hul.ois.jhove.module.pdf
Class PdfFlateInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.FilterInputStream
          extended by edu.harvard.hul.ois.jhove.module.pdf.PdfFlateInputStream
All Implemented Interfaces:
java.io.Closeable

public class PdfFlateInputStream
extends java.io.FilterInputStream

An enhancement of InflaterInputStream to support Predictor and Columns. How complicated does this get? Do I need to read the whole thing before I can "predict" anything?

Author:
Gary McGath

Field Summary
 
Fields inherited from class java.io.FilterInputStream
in
 
Constructor Summary
PdfFlateInputStream(java.io.InputStream is)
          Constructor with null DecodeParms dictionary
PdfFlateInputStream(java.io.InputStream is, PdfDictionary parms)
          Constructor with specified DecodeParms dictionary
 
Method Summary
 int read()
          Reads one byte from the stream.
 int read(byte[] b)
          Reads the specified number of bytes into a buffer.
 int read(byte[] b, int off, int len)
          Reads the specified number of bytes into a buffer with offset and length specified.
 long skip(long n)
           
 
Methods inherited from class java.io.FilterInputStream
available, close, mark, markSupported, reset
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PdfFlateInputStream

public PdfFlateInputStream(java.io.InputStream is)
Constructor with null DecodeParms dictionary

Parameters:
is - InputStream to be inflated

PdfFlateInputStream

public PdfFlateInputStream(java.io.InputStream is,
                           PdfDictionary parms)
Constructor with specified DecodeParms dictionary

Parameters:
is - InputStream to be inflated
parms - DecodeParms dictionary. May be null, in which case this is equivalent to the one-parameter constructor.
Method Detail

read

public int read()
         throws java.io.IOException
Reads one byte from the stream. Returns -1 if end of file is reached.

Overrides:
read in class java.io.FilterInputStream
Throws:
java.io.IOException

read

public int read(byte[] b)
         throws java.io.IOException
Reads the specified number of bytes into a buffer. Returns the number of bytes actually read, or -1 if end of file has been reached.

Overrides:
read in class java.io.FilterInputStream
Throws:
java.io.IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws java.io.IOException
Reads the specified number of bytes into a buffer with offset and length specified. Returns -1 if end of file has been reached. No matter how much is requested, this will only return one row's worth of data at most.

Overrides:
read in class java.io.FilterInputStream
Throws:
java.io.IOException

skip

public long skip(long n)
          throws java.io.IOException
Overrides:
skip in class java.io.FilterInputStream
Throws:
java.io.IOException