org.apache.coyote.ajp

## Class AjpProcessor.SocketInputBuffer

- java.lang.Object
- - org.apache.coyote.ajp.AjpProcessor.SocketInputBuffer

- All Implemented Interfaces:
    InputBuffer
  Enclosing class:
    AjpProcessor

      protected class AjpProcessor.SocketInputBuffer
      extends Object
      implements InputBuffer

  This class is an input buffer which will read its data from an input stream.

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `AjpProcessor.SocketInputBuffer()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `available()` Obtain an estimate of the number of bytes that can be read without blocking.
    `int` | `doRead(ApplicationBufferHandler handler)` Read from the input stream into the ByteBuffer provided by the ApplicationBufferHandler.
    `int` | `doRead(ByteChunk chunk)` Deprecated. Unused. Will be removed in Tomcat 9. Use `doRead(ApplicationBufferHandler)`

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

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

- - ### Constructor Detail

    - #### AjpProcessor.SocketInputBuffer

          protected AjpProcessor.SocketInputBuffer()

  - ### Method Detail

    - #### doRead

          @Deprecated
          public int doRead(ByteChunk chunk)
                     throws IOException

      Deprecated. Unused. Will be removed in Tomcat 9. Use `doRead(ApplicationBufferHandler)`
      Description copied from interface: `InputBuffer`
      Read from the input stream into the given buffer. IMPORTANT: the current model assumes that the protocol will 'own' the buffer and return a pointer to it in ByteChunk (i.e. the param will have chunk.getBytes()==null before call, and the result after the call).
      Specified by:
        `doRead` in interface `InputBuffer`
      Parameters:
        `chunk` - The buffer to read data into.
      Returns:
        The number of bytes that have been added to the buffer or -1 for end of stream
      Throws:
        `IOException` - If an I/O error occurs reading from the input stream

    - #### doRead

          public int doRead(ApplicationBufferHandler handler)
                     throws IOException

      Description copied from interface: `InputBuffer`
      Read from the input stream into the ByteBuffer provided by the ApplicationBufferHandler. IMPORTANT: the current model assumes that the protocol will 'own' the ByteBuffer and return a pointer to it.
      Specified by:
        `doRead` in interface `InputBuffer`
      Parameters:
        `handler` - ApplicationBufferHandler that provides the buffer to read data into.
      Returns:
        The number of bytes that have been added to the buffer or -1 for end of stream
      Throws:
        `IOException` - If an I/O error occurs reading from the input stream

    - #### available

          public int available()

      Description copied from interface: `InputBuffer`
      Obtain an estimate of the number of bytes that can be read without blocking. Typically, this will be the number of available bytes known to be buffered.
      Specified by:
        `available` in interface `InputBuffer`
      Returns:
        The number of bytes that can be read without blocking

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