## org.apache.coyote.http11
Interface InputFilter

All Superinterfaces:
  InputBuffer

All Known Implementing Classes:
  BufferedInputFilter, ChunkedInputFilter, IdentityInputFilter, 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-2003 Apache Software Foundation. All Rights Reserved.