org.apache.coyote.http11
Interface InputFilter

All Superinterfaces:
InputBuffer
All Known Implementing Classes:
BufferedInputFilter, ChunkedInputFilter, IdentityInputFilter, SavedRequestInputFilter, VoidInputFilter

public interface InputFilter
extends InputBuffer

Input filter interface.

Author:
Remy Maucherat

Method Summary
 int doRead(ByteChunk chunk, Request unused)
          Read bytes.
 long end()
          End the current request.
 ByteChunk getEncodingName()
          Get the name of the encoding handled by this filter.
 void recycle()
          Make the filter ready to process the next request.
 void setBuffer(InputBuffer buffer)
          Set the next buffer in the filter pipeline.
 void setRequest(Request request)
          Some filters need additional parameters from the request.
 

Method Detail

doRead

public int doRead(ByteChunk chunk,
                  Request unused)
           throws java.io.IOException
Read bytes.

Specified by:
doRead in interface InputBuffer
Returns:
Number of bytes read.
Throws:
java.io.IOException

setRequest

public void setRequest(Request request)
Some filters need additional parameters from the request. All the necessary reading can occur in that method, as this method is called after the request header processing is complete.


recycle

public void recycle()
Make the filter ready to process the next request.


getEncodingName

public ByteChunk getEncodingName()
Get the name of the encoding handled by this filter.


setBuffer

public void setBuffer(InputBuffer buffer)
Set the next buffer in the filter pipeline.


end

public long end()
         throws java.io.IOException
End the current request.

Returns:
0 is the expected return value. A positive value indicates that too many bytes were read. This method is allowed to use buffer.doRead to consume extra bytes. The result of this method can't be negative (if an error happens, an IOException should be thrown instead).
Throws:
java.io.IOException


Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.