Package org.apache.tomcat.jni

## Class Poll

- java.lang.Object
- - org.apache.tomcat.jni.Poll

-     @Deprecated
      public class Poll
      extends java.lang.Object

  Deprecated.
  The scope of the APR/Native Library will be reduced in Tomcat 10.1.x / Tomcat Native 2.x onwards to only include those components required to provide OpenSSL integration with the NIO and NIO2 connectors.
  Poll
  Author:
    Mladen Turk

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `APR_NO_DESC` | Deprecated. Used in apr_pollfd_t to determine what the apr_descriptor is apr_datatype_e enum
    `static int` | `APR_POLL_FILE` | Deprecated. descriptor refers to a socket
    `static int` | `APR_POLL_LASTDESC` | Deprecated. descriptor refers to a file
    `static int` | `APR_POLL_SOCKET` | Deprecated. nothing here
    `static int` | `APR_POLLERR` | Deprecated. Pending error
    `static int` | `APR_POLLHUP` | Deprecated. Hangup occurred
    `static int` | `APR_POLLIN` | Deprecated. Can read without blocking
    `static int` | `APR_POLLNVAL` | Deprecated. Descriptor invalid
    `static int` | `APR_POLLOUT` | Deprecated. Can write without blocking
    `static int` | `APR_POLLPRI` | Deprecated. Priority data available
    `static int` | `APR_POLLSET_THREADSAFE` | Deprecated. Adding or Removing a Descriptor is thread safe

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Poll()` | Deprecated.

  - ### Method Summary

    All Methods Static Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static int` | `add​(long pollset, long sock, int reqevents)` | Deprecated. Add a socket to a pollset with the default timeout.
    `static int` | `addWithTimeout​(long pollset, long sock, int reqevents, long timeout)` | Deprecated. Add a socket to a pollset with a specific timeout.
    `static long` | `create​(int size, long p, int flags, long ttl)` | Deprecated. Setup a pollset object.
    `static int` | `destroy​(long pollset)` | Deprecated. Destroy a pollset object
    `static long` | `getTtl​(long pollset)` | Deprecated. Get the socket time to live.
    `static int` | `interrupt​(long pollset)` | Deprecated. Make poll() return.
    `static int` | `maintain​(long pollset, long[] descriptors, boolean remove)` | Deprecated. Maintain on the descriptor(s) in a pollset
    `static int` | `poll​(long pollset, long timeout, long[] descriptors, boolean remove)` | Deprecated. Block for activity on the descriptor(s) in a pollset
    `static int` | `pollset​(long pollset, long[] descriptors)` | Deprecated. Return all descriptor(s) in a pollset
    `static int` | `remove​(long pollset, long sock)` | Deprecated. Remove a descriptor from a pollset
    `static void` | `setTtl​(long pollset, long ttl)` | Deprecated. Set the socket time to live.
    `static boolean` | `wakeable​(long pollset)` | Deprecated. Check if interrupt() is allowed.

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

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

- - ### Field Detail

    - #### APR_POLLIN

          public static final int APR_POLLIN

      Deprecated.
      Can read without blocking
      See Also:
        Constant Field Values

    - #### APR_POLLPRI

          public static final int APR_POLLPRI

      Deprecated.
      Priority data available
      See Also:
        Constant Field Values

    - #### APR_POLLOUT

          public static final int APR_POLLOUT

      Deprecated.
      Can write without blocking
      See Also:
        Constant Field Values

    - #### APR_POLLERR

          public static final int APR_POLLERR

      Deprecated.
      Pending error
      See Also:
        Constant Field Values

    - #### APR_POLLHUP

          public static final int APR_POLLHUP

      Deprecated.
      Hangup occurred
      See Also:
        Constant Field Values

    - #### APR_POLLNVAL

          public static final int APR_POLLNVAL

      Deprecated.
      Descriptor invalid
      See Also:
        Constant Field Values

    - #### APR_POLLSET_THREADSAFE

          public static final int APR_POLLSET_THREADSAFE

      Deprecated.
      Adding or Removing a Descriptor is thread safe
      See Also:
        Constant Field Values

    - #### APR_NO_DESC

          public static final int APR_NO_DESC

      Deprecated.
      Used in apr_pollfd_t to determine what the apr_descriptor is apr_datatype_e enum
      See Also:
        Constant Field Values

    - #### APR_POLL_SOCKET

          public static final int APR_POLL_SOCKET

      Deprecated.
      nothing here
      See Also:
        Constant Field Values

    - #### APR_POLL_FILE

          public static final int APR_POLL_FILE

      Deprecated.
      descriptor refers to a socket
      See Also:
        Constant Field Values

    - #### APR_POLL_LASTDESC

          public static final int APR_POLL_LASTDESC

      Deprecated.
      descriptor refers to a file
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Poll

          public Poll()

      Deprecated.

  - ### Method Detail

    - #### create

          public static long create​(int size,
                                    long p,
                                    int flags,
                                    long ttl)
                             throws Error

      Deprecated.
      Setup a pollset object. If flags equals APR_POLLSET_THREADSAFE, then a pollset is created on which it is safe to make concurrent calls to apr_pollset_add(), apr_pollset_remove() and apr_pollset_poll() from separate threads. This feature is only supported on some platforms; the apr_pollset_create() call will fail with APR_ENOTIMPL on platforms where it is not supported.
      Parameters:
        `size` - The maximum number of descriptors that this pollset can hold
        `p` - The pool from which to allocate the pollset
        `flags` - Optional flags to modify the operation of the pollset.
        `ttl` - Maximum time to live for a particular socket.
      Returns:
        The pointer in which to return the newly created object
      Throws:
        `Error` - Pollset creation failed

    - #### destroy

          public static int destroy​(long pollset)

      Deprecated.
      Destroy a pollset object
      Parameters:
        `pollset` - The pollset to destroy
      Returns:
        the operation status

    - #### add

          public static int add​(long pollset,
                                long sock,
                                int reqevents)

      Deprecated.
      Add a socket to a pollset with the default timeout.
      Parameters:
        `pollset` - The pollset to which to add the socket
        `sock` - The sockets to add
        `reqevents` - requested events
      Returns:
        the operation status

    - #### addWithTimeout

          public static int addWithTimeout​(long pollset,
                                           long sock,
                                           int reqevents,
                                           long timeout)

      Deprecated.
      Add a socket to a pollset with a specific timeout.
      Parameters:
        `pollset` - The pollset to which to add the socket
        `sock` - The sockets to add
        `reqevents` - requested events
        `timeout` - requested timeout in microseconds (-1 for infinite)
      Returns:
        the operation status

    - #### remove

          public static int remove​(long pollset,
                                   long sock)

      Deprecated.
      Remove a descriptor from a pollset
      Parameters:
        `pollset` - The pollset from which to remove the descriptor
        `sock` - The socket to remove
      Returns:
        the operation status

    - #### poll

          public static int poll​(long pollset,
                                 long timeout,
                                 long[] descriptors,
                                 boolean remove)

      Deprecated.
      Block for activity on the descriptor(s) in a pollset
      Parameters:
        `pollset` - The pollset to use
        `timeout` - Timeout in microseconds
        `descriptors` - Array of signaled descriptors (output parameter) The descriptor array must be two times the size of pollset. and are populated as follows:

             descriptors[2n + 0] -> returned events
             descriptors[2n + 1] -> socket

        `remove` - Remove signaled descriptors from pollset
      Returns:
        Number of signaled descriptors (output parameter) or negative APR error code.

    - #### maintain

          public static int maintain​(long pollset,
                                     long[] descriptors,
                                     boolean remove)

      Deprecated.
      Maintain on the descriptor(s) in a pollset
      Parameters:
        `pollset` - The pollset to use
        `descriptors` - Array of signaled descriptors (output parameter) The descriptor array must be the size of pollset. and are populated as follows:

             descriptors[n] -> socket

        `remove` - Remove signaled descriptors from pollset
      Returns:
        Number of signaled descriptors (output parameter) or negative APR error code.

    - #### setTtl

          public static void setTtl​(long pollset,
                                    long ttl)

      Deprecated.
      Set the socket time to live.
      Parameters:
        `pollset` - The pollset to use
        `ttl` - Timeout in microseconds

    - #### getTtl

          public static long getTtl​(long pollset)

      Deprecated.
      Get the socket time to live.
      Parameters:
        `pollset` - The pollset to use
      Returns:
        Timeout in microseconds

    - #### pollset

          public static int pollset​(long pollset,
                                    long[] descriptors)

      Deprecated.
      Return all descriptor(s) in a pollset
      Parameters:
        `pollset` - The pollset to use
        `descriptors` - Array of descriptors (output parameter) The descriptor array must be two times the size of pollset. and are populated as follows:

             descriptors[2n + 0] -> returned events
             descriptors[2n + 1] -> socket

      Returns:
        Number of descriptors (output parameter) in the Poll or negative APR error code.

    - #### interrupt

          public static int interrupt​(long pollset)

      Deprecated.
      Make poll() return.
      Parameters:
        `pollset` - The pollset to use
      Returns:
        Negative APR error code

    - #### wakeable

          public static boolean wakeable​(long pollset)

      Deprecated.
      Check if interrupt() is allowed.
      Parameters:
        `pollset` - The pollset to use
      Returns:
        `true` if `interrupt(long)` is allowed, else `false`