Interface SessionOutputBuffer

All Known Implementing Classes:
SessionOutputBufferImpl

public interface SessionOutputBuffer
Session output buffer for non-blocking HTTP/1.1 connections.

This interface facilitates intermediate buffering of output data streamed out to a destination channel and provides provides methods for writing lines of text.

Since:
4.0
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Returns available space in the buffer.
    int
    Makes an attempt to flush the content of this buffer to the given destination WritableByteChannel.
    boolean
    Determines if the buffer contains data.
    int
    Returns the length of this buffer.
    void
    Copies content of the source buffer into this buffer.
    void
    Reads a sequence of bytes from the source channel into this buffer.
    void
    Copies content of the source buffer into this buffer as one line of text including a line delimiter.
  • Method Details

    • hasData

      boolean hasData()
      Determines if the buffer contains data.
      Returns:
      true if there is data in the buffer, false otherwise.
    • capacity

      int capacity()
      Returns available space in the buffer.
      Returns:
      available space.
    • length

      int length()
      Returns the length of this buffer.
      Returns:
      buffer length.
    • flush

      int flush(WritableByteChannel channel) throws IOException
      Makes an attempt to flush the content of this buffer to the given destination WritableByteChannel.
      Parameters:
      channel - the destination channel.
      Returns:
      The number of bytes written, possibly zero.
      Throws:
      IOException - in case of an I/O error.
    • write

      void write(ByteBuffer src)
      Copies content of the source buffer into this buffer. The capacity of the destination will be expanded in order to accommodate the entire content of the source buffer.
      Parameters:
      src - the source buffer.
    • write

      void write(ReadableByteChannel src) throws IOException
      Reads a sequence of bytes from the source channel into this buffer.
      Parameters:
      src - the source channel.
      Throws:
      IOException
    • writeLine

      void writeLine(CharArrayBuffer src) throws CharacterCodingException
      Copies content of the source buffer into this buffer as one line of text including a line delimiter. The capacity of the destination will be expanded in order to accommodate the entire content of the source buffer.

      The choice of a char encoding and line delimiter sequence is up to the specific implementations of this interface.

      Parameters:
      src - the source buffer.
      Throws:
      CharacterCodingException