org.apache.xmlbeans.impl.common
Class PushedInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by org.apache.xmlbeans.impl.common.PushedInputStream
All Implemented Interfaces:
java.io.Closeable
Direct Known Subclasses:
ReaderInputStream

public abstract class PushedInputStream
extends java.io.InputStream


Field Summary
protected  byte[] buf
           
protected  int marklimit
           
protected  int markpos
           
protected  java.io.OutputStream outputStream
           
protected  int readpos
           
protected  int writepos
           
 
Constructor Summary
PushedInputStream()
           
PushedInputStream(int size)
           
 
Method Summary
 int available()
           
protected abstract  void fill(int requestedBytes)
          Called when more bytes need to be written into this stream (as an OutputStream).
 java.io.OutputStream getOutputStream()
          Returns the linked output stream.
 void mark(int readlimit)
           
 boolean markSupported()
           
 int read()
           
 int read(byte[] b, int off, int len)
          Read characters into a portion of an array, reading from the underlying stream at most once if necessary.
 void reset()
           
 long skip(long n)
           
 
Methods inherited from class java.io.InputStream
close, read
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

buf

protected byte[] buf

writepos

protected int writepos

readpos

protected int readpos

markpos

protected int markpos

marklimit

protected int marklimit

outputStream

protected java.io.OutputStream outputStream
Constructor Detail

PushedInputStream

public PushedInputStream()

PushedInputStream

public PushedInputStream(int size)
Method Detail

fill

protected abstract void fill(int requestedBytes)
                      throws java.io.IOException
Called when more bytes need to be written into this stream (as an OutputStream). This method must write at least one byte if the stream is not ended, and it must not write any bytes if the stream has already ended.

Throws:
java.io.IOException

getOutputStream

public final java.io.OutputStream getOutputStream()
Returns the linked output stream. This is the output stream that must be written to whenever the fill method is called.


read

public int read()
         throws java.io.IOException
Specified by:
read in class java.io.InputStream
Throws:
java.io.IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws java.io.IOException
Read characters into a portion of an array, reading from the underlying stream at most once if necessary.

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

skip

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

available

public int available()
Overrides:
available in class java.io.InputStream

mark

public void mark(int readlimit)
Overrides:
mark in class java.io.InputStream

reset

public void reset()
           throws java.io.IOException
Overrides:
reset in class java.io.InputStream
Throws:
java.io.IOException

markSupported

public boolean markSupported()
Overrides:
markSupported in class java.io.InputStream