opendap.dap
Class HeaderInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.FilterInputStream
          extended by opendap.dap.HeaderInputStream
All Implemented Interfaces:
java.io.Closeable

public class HeaderInputStream
extends java.io.FilterInputStream

The HeaderInputStream filters the input to only read lines of text until the "Data:" line. This is required because overzealous buffering in the DDSParser will read the data as well as the DDS otherwise.

Version:
$Revision: 23881 $
Author:
jehamby
See Also:
DConnect

Field Summary
 
Fields inherited from class java.io.FilterInputStream
in
 
Constructor Summary
HeaderInputStream(java.io.InputStream in)
          Construct a new HeaderInputStream.
 
Method Summary
 int available()
          Return the number of bytes in the buffer.
 boolean markSupported()
          Returns that we don't support the mark() and reset() methods.
 int read()
          Reads a single byte of data
 int read(byte[] b, int off, int len)
          Reads up to len bytes of data from this input stream into an array of bytes.
 long skip(long n)
          Skips over and discards n bytes of data from the input stream.
 
Methods inherited from class java.io.FilterInputStream
close, mark, read, reset
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HeaderInputStream

public HeaderInputStream(java.io.InputStream in)
Construct a new HeaderInputStream.

Method Detail

available

public int available()
Return the number of bytes in the buffer.

Overrides:
available in class java.io.FilterInputStream

markSupported

public boolean markSupported()
Returns that we don't support the mark() and reset() methods.

Overrides:
markSupported in class java.io.FilterInputStream

read

public int read()
         throws java.io.IOException
Reads a single byte of data

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 up to len bytes of data from this input stream into an array of bytes. This method blocks until some input is available.

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

skip

public long skip(long n)
Skips over and discards n bytes of data from the input stream.

Overrides:
skip in class java.io.FilterInputStream