Class VoidOutputFilter

java.lang.Object
org.apache.coyote.http11.filters.VoidOutputFilter
All Implemented Interfaces:
HttpOutputBuffer, 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 Details

    • VoidOutputFilter

      public VoidOutputFilter()
  • Method Details

    • doWrite

      public int doWrite(ByteBuffer chunk) throws IOException
      Description copied from interface: OutputBuffer
      Write the given data to the response. The caller owns the chunks.
      Specified by:
      doWrite in interface OutputBuffer
      Parameters:
      chunk - data to write
      Returns:
      The number of bytes written which may be less than available in the input chunk
      Throws:
      IOException - an underlying I/O error occurred
    • 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)
      Description copied from interface: OutputFilter
      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
      Parameters:
      response - The response to associate with this OutputFilter
    • setBuffer

      public void setBuffer(HttpOutputBuffer buffer)
      Description copied from interface: OutputFilter
      Set the next buffer in the filter pipeline.
      Specified by:
      setBuffer in interface OutputFilter
      Parameters:
      buffer - The next buffer instance
    • flush

      public void flush() throws IOException
      Description copied from interface: HttpOutputBuffer
      Flushes any unwritten data to the client.
      Specified by:
      flush in interface HttpOutputBuffer
      Throws:
      IOException - If an I/O error occurs while flushing
    • recycle

      public void recycle()
      Description copied from interface: OutputFilter
      Make the filter ready to process the next request.
      Specified by:
      recycle in interface OutputFilter
    • end

      public void end() throws IOException
      Description copied from interface: HttpOutputBuffer
      Finish writing the current response. It is acceptable to write extra bytes using OutputBuffer.doWrite(java.nio.ByteBuffer) during the execution of this method.
      Specified by:
      end in interface HttpOutputBuffer
      Throws:
      IOException - If an I/O error occurs while writing to the client