## org.w3c.jigsaw.ssi
Class DelayedInputStream

    java.lang.Object
      |
      +--java.io.InputStream
            |
            +--org.w3c.jigsaw.ssi.DelayedInputStream

public abstract class DelayedInputStream
extends java.io.InputStream

Used to delay the (perhaps expensive) creation of a real stream until the first access.

Field Summary
`protected java.io.InputStream` `in` The InputStream that data will be really read from.

Constructor Summary
`DelayedInputStream()`

Method Summary
`int` `available()`
`void` `close()`
`protected abstract void` `init()` This method is called on the first access to the stream.
`void` `mark(int readlimit)`
`boolean` `markSupported()`
`int` `read()`
`int` `read(byte[] b)`
`int` `read(byte[] b, int off, int len)`
`void` `reset()`
`long` `skip(long n)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### in

    protected java.io.InputStream in

  The InputStream that data will be really read from.

Constructor Detail

### DelayedInputStream

    public DelayedInputStream()

Method Detail

### init

    protected abstract void init()

  This method is called on the first access to the stream. (Not at construction time.) Should initialize `in` as a valid stream. Must not make it null.

### close

    public final void close()
                     throws java.io.IOException

  Overrides:
    close in class java.io.InputStream

### read

    public final int read()
                   throws java.io.IOException

  Overrides:
    read in class java.io.InputStream

### read

    public final int read(byte[] b,
                          int off,
                          int len)
                   throws java.io.IOException

  Overrides:
    read in class java.io.InputStream

### read

    public final int read(byte[] b)
                   throws java.io.IOException

  Overrides:
    read in class java.io.InputStream

### reset

    public final void reset()
                     throws java.io.IOException

  Overrides:
    reset in class java.io.InputStream

### mark

    public final void mark(int readlimit)

  Overrides:
    mark in class java.io.InputStream

### markSupported

    public final boolean markSupported()

  Overrides:
    markSupported in class java.io.InputStream

### skip

    public final long skip(long n)
                    throws java.io.IOException

  Overrides:
    skip in class java.io.InputStream

### available

    public final int available()
                        throws java.io.IOException

  Overrides:
    available in class java.io.InputStream