com.planetj.servlet.filter.compression
Class CompressingServletInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by javax.servlet.ServletInputStream
          extended by com.planetj.servlet.filter.compression.CompressingServletInputStream
All Implemented Interfaces:
java.io.Closeable

final class CompressingServletInputStream
extends javax.servlet.ServletInputStream

Implementation of ServletInputStream which will decompress data read from it.

Since:
1.6
Author:
Sean Owen

Field Summary
private  boolean closed
           
private  java.io.InputStream compressingStream
           
 
Constructor Summary
CompressingServletInputStream(java.io.InputStream rawStream, CompressingStreamFactory compressingStreamFactory, CompressingFilterContext context)
           
 
Method Summary
 int available()
           
private  void checkClosed()
           
 void close()
           
 void mark(int readlimit)
           
 boolean markSupported()
           
 int read()
           
 int read(byte[] b)
           
 int read(byte[] b, int offset, int length)
           
 void reset()
           
 long skip(long n)
           
 java.lang.String toString()
           
 
Methods inherited from class javax.servlet.ServletInputStream
readLine
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

compressingStream

private final java.io.InputStream compressingStream

closed

private boolean closed
Constructor Detail

CompressingServletInputStream

CompressingServletInputStream(java.io.InputStream rawStream,
                              CompressingStreamFactory compressingStreamFactory,
                              CompressingFilterContext context)
                        throws java.io.IOException
Throws:
java.io.IOException
Method Detail

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

read

public int read(byte[] b,
                int offset,
                int length)
         throws java.io.IOException
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()
              throws java.io.IOException
Overrides:
available in class java.io.InputStream
Throws:
java.io.IOException

close

public void close()
           throws java.io.IOException
Specified by:
close in interface java.io.Closeable
Overrides:
close in class java.io.InputStream
Throws:
java.io.IOException

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

checkClosed

private void checkClosed()

toString

@NotNull
public java.lang.String toString()
Overrides:
toString in class java.lang.Object