com.noelios.restlet.application
Class RangeInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.FilterInputStream
          extended by com.noelios.restlet.application.RangeInputStream
All Implemented Interfaces:
java.io.Closeable

public class RangeInputStream
extends java.io.FilterInputStream

Filters an input stream to expose only a given range.

Author:
Jerome Louvel

Field Summary
 
Fields inherited from class java.io.FilterInputStream
in
 
Constructor Summary
protected RangeInputStream(java.io.InputStream in, long totalSize, Range range)
          Constructs a stream exposing only a range of a given source stream.
 
Method Summary
 int available()
           
 void mark(int readlimit)
           
 int read()
           
 int read(byte[] b, int off, int len)
           
 
Methods inherited from class java.io.FilterInputStream
close, markSupported, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RangeInputStream

protected RangeInputStream(java.io.InputStream in,
                           long totalSize,
                           Range range)
Constructs a stream exposing only a range of a given source stream.

Parameters:
in - The source input stream.
totalSize - The total size of the source stream.
range - The range to satisfy.
Method Detail

available

public int available()
              throws java.io.IOException
Overrides:
available in class java.io.FilterInputStream
Throws:
java.io.IOException

mark

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

read

public int read()
         throws java.io.IOException
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
Overrides:
read in class java.io.FilterInputStream
Throws:
java.io.IOException


Copyright © 2005-2008 Noelios Technologies.