org.apache.coyote.http11.filters

## Class VoidOutputFilter

- java.lang.Object
- - org.apache.coyote.http11.filters.VoidOutputFilter

- All Implemented Interfaces:
    OutputFilter, OutputBuffer

      public class VoidOutputFilter
      extends Object
      implements OutputFilter

  Void output filter, which silently swallows bytes written. Used with a 204 status (no content) or a HEAD request.
  Author:
    Remy Maucherat

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `VoidOutputFilter()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `doWrite(ByteChunk chunk, Response res)` Write some bytes.
    `long` | `end()` End the current request.
    `long` | `getBytesWritten()` Bytes written to the underlying socket.
    `void` | `recycle()` Make the filter ready to process the next request.
    `void` | `setBuffer(OutputBuffer buffer)` Set the next buffer in the filter pipeline.
    `void` | `setResponse(Response response)` Some filters need additional parameters from the response.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### VoidOutputFilter

          public VoidOutputFilter()

  - ### Method Detail

    - #### doWrite

          public int doWrite(ByteChunk chunk,
                    Response res)
                      throws IOException

      Write some bytes.
      Specified by:
        `doWrite` in interface `OutputFilter`
      Specified by:
        `doWrite` in interface `OutputBuffer`
      Parameters:
        `chunk` - data to write
        `res` - used to allow buffers that can be shared by multiple responses.
      Returns:
        number of bytes written by the filter
      Throws:
        `IOException`

    - #### getBytesWritten

          public long getBytesWritten()

      Description copied from interface: `OutputBuffer`
      Bytes written to the underlying socket. This includes the effects of chunking, compression, etc.
      Specified by:
        `getBytesWritten` in interface `OutputBuffer`
      Returns:
        Bytes written for the current request

    - #### setResponse

          public void setResponse(Response response)

      Some filters need additional parameters from the response. All the necessary reading can occur in that method, as this method is called after the response header processing is complete.
      Specified by:
        `setResponse` in interface `OutputFilter`

    - #### setBuffer

          public void setBuffer(OutputBuffer buffer)

      Set the next buffer in the filter pipeline.
      Specified by:
        `setBuffer` in interface `OutputFilter`

    - #### recycle

          public void recycle()

      Make the filter ready to process the next request.
      Specified by:
        `recycle` in interface `OutputFilter`

    - #### end

          public long end()
                   throws IOException

      End the current request. It is acceptable to write extra bytes using buffer.doWrite during the execution of this method.
      Specified by:
        `end` in interface `OutputFilter`
      Returns:
        Should return 0 unless the filter does some content length delimitation, in which case the number is the amount of extra bytes or missing bytes, which would indicate an error. Note: It is recommended that extra bytes be swallowed by the filter.
      Throws:
        `IOException`

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