Package 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 java.lang.Object
    implements HttpOutputBuffer

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

### Constructor Summary

Constructors
`protected` `SocketOutputBuffer()`

### Method Summary

All Methods Instance Methods Concrete Methods Deprecated Methods
`int` `doWrite​(java.nio.ByteBuffer chunk)` Write chunk.
`int` `doWrite​(ByteChunk chunk)` Deprecated. Unused.
`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

#### SocketOutputBuffer

    protected SocketOutputBuffer()

### Method Detail

#### doWrite

    @Deprecated
    public int doWrite​(ByteChunk chunk)
                throws java.io.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:
  `java.io.IOException` - an underlying I/O error occurred

#### doWrite

    public int doWrite​(java.nio.ByteBuffer chunk)
                throws java.io.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:
  `java.io.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 java.io.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:
  `java.io.IOException` - If an I/O error occurs while writing to the client

#### flush

    public void flush()
               throws java.io.IOException

Description copied from interface: `HttpOutputBuffer`
Flushes any unwritten data to the client.

Specified by:
  `flush` in interface `HttpOutputBuffer`
Throws:
  `java.io.IOException` - If an I/O error occurs while flushing