## org.apache.coyote.http11.filters
Class IdentityInputFilter

    java.lang.Object
      org.apache.coyote.http11.filters.IdentityInputFilter

All Implemented Interfaces:
  InputFilter, InputBuffer

    public class IdentityInputFilter

extends java.lang.Object
implements InputFilter

Identity input filter.

Author:
  Remy Maucherat

Field Summary
`protected InputBuffer` `buffer` Next buffer in the pipeline.
`protected long` `contentLength` Content length.
`protected static ByteChunk` `ENCODING`
`protected static java.lang.String` `ENCODING_NAME`
`protected ByteChunk` `endChunk` Chunk used to read leftover bytes.
`protected long` `remaining` Remaining bytes.

Constructor Summary
`IdentityInputFilter()`

Method Summary
`int` `available()` Amount of bytes still available in a buffer.
`int` `doRead(ByteChunk chunk, Request req)` Read bytes.
`long` `end()` End the current request.
`long` `getContentLength()` Get content length.
`ByteChunk` `getEncodingName()` Return the name of the associated encoding; Here, the value is "identity".
`long` `getRemaining()` Get remaining bytes.
`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)` Read the content length from the request.

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

Field Detail

### ENCODING_NAME

    protected static final java.lang.String ENCODING_NAME

See Also:
  Constant Field Values

### ENCODING

    protected static final ByteChunk ENCODING

### contentLength

    protected long contentLength

  Content length.

### remaining

    protected long remaining

  Remaining bytes.

### buffer

    protected InputBuffer buffer

  Next buffer in the pipeline.

### endChunk

    protected ByteChunk endChunk

  Chunk used to read leftover bytes.

Constructor Detail

### IdentityInputFilter

    public IdentityInputFilter()

Method Detail

### getContentLength

    public long getContentLength()

  Get content length.

### getRemaining

    public long getRemaining()

  Get remaining bytes.

### doRead

    public int doRead(ByteChunk chunk,
                      Request req)
               throws java.io.IOException

  Read bytes.

  Specified by:
    `doRead` in interface `InputFilter`
  Specified by:
    `doRead` in interface `InputBuffer`
  Returns:
    If the filter does request length control, this value is significant; it should be the number of bytes consumed from the buffer, up until the end of the current request body, or the buffer length, whichever is greater. If the filter does not do request body length control, the returned value should be -1.
  Throws:
    `java.io.IOException`

### setRequest

    public void setRequest(Request request)

  Read the content length from the request.

  Specified by:
    `setRequest` in interface `InputFilter`

### end

    public long end()
             throws java.io.IOException

  End the current request.

  Specified by:
    `end` in interface `InputFilter`
  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`

### available

    public int available()

  Amount of bytes still available in a buffer.

  Specified by:
    `available` in interface `InputFilter`

### setBuffer

    public void setBuffer(InputBuffer buffer)

  Set the next buffer in the filter pipeline.

  Specified by:
    `setBuffer` in interface `InputFilter`

### recycle

    public void recycle()

  Make the filter ready to process the next request.

  Specified by:
    `recycle` in interface `InputFilter`

### getEncodingName

    public ByteChunk getEncodingName()

  Return the name of the associated encoding; Here, the value is "identity".

  Specified by:
    `getEncodingName` in interface `InputFilter`

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