org.apache.coyote.http11

## Class Http11OutputBuffer.SocketOutputBuffer

- java.lang.Object
- - org.apache.coyote.http11.Http11OutputBuffer.SocketOutputBuffer

- All Implemented Interfaces:
    HttpOutputBuffer, OutputBuffer
  Enclosing class:
    Http11OutputBuffer

      protected class Http11OutputBuffer.SocketOutputBuffer
      extends Object
      implements HttpOutputBuffer

  This class is an output buffer which will write data to a socket.

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `Http11OutputBuffer.SocketOutputBuffer()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `doWrite(ByteBuffer chunk)` Write chunk.
    `int` | `doWrite(ByteChunk chunk)` Deprecated. Unused. Will be removed in Tomcat 9. Use `doWrite(ByteBuffer)`
    `void` | `end()` Finish writing the current response.
    `void` | `flush()` Flushes any unwritten data to the client.
    `long` | `getBytesWritten()` Bytes written to the underlying socket.

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

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

- - ### Constructor Detail

    - #### Http11OutputBuffer.SocketOutputBuffer

          protected Http11OutputBuffer.SocketOutputBuffer()

  - ### Method Detail

    - #### doWrite

          @Deprecated
          public int doWrite(ByteChunk chunk)
                      throws IOException

      Deprecated. Unused. Will be removed in Tomcat 9. Use `doWrite(ByteBuffer)`
      Write chunk.
      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

    - #### doWrite

          public int doWrite(ByteBuffer chunk)
                      throws IOException

      Write chunk.
      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

    - #### 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

    - #### 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

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