MultiLockFairBlockingQueue.ItemFuture (Apache Tomcat 11.0.24 API Documentation)
Description: declaration: package: org.apache.tomcat.jdbc.pool, class: MultiLockFairBlockingQueue, class: ItemFuture

# Class MultiLockFairBlockingQueue.ItemFuture<T>

java.lang.Object
org.apache.tomcat.jdbc.pool.MultiLockFairBlockingQueue.ItemFuture<T>

Type Parameters:
  `T` - the item type

All Implemented Interfaces:
  `Future<T>`

Enclosing class:
  `MultiLockFairBlockingQueue<E>`

protected class MultiLockFairBlockingQueue.ItemFuture<T> extends Object implements Future<T>
Future for an item in the queue.

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface Future

  `Future.State`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected boolean`
  `canceled`
  Whether cancelled.
  `protected T`
  `item`
  The item.
  `protected MultiLockFairBlockingQueue<E>.ExchangeCountDownLatch<T>`
  `latch`
  The latch.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ItemFuture(MultiLockFairBlockingQueue<E>.ExchangeCountDownLatch<T> latch)`
  Constructor.
  `ItemFuture(T item)`
  Constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `cancel(boolean mayInterruptIfRunning)`
  `T`
  `get()`
  `T`
  `get(long timeout, TimeUnit unit)`
  `boolean`
  `isCancelled()`
  `boolean`
  `isDone()`

  ### Methods inherited from class Object

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

  ### Methods inherited from interface Future

  `exceptionNow, resultNow, state`

- ## Field Details

  - ### item

    protected volatile T item
    The item.

  - ### latch

    protected volatile MultiLockFairBlockingQueue<E>.ExchangeCountDownLatch<T> latch
    The latch.

  - ### canceled

    protected volatile boolean canceled
    Whether cancelled.

- ## Constructor Details

  - ### ItemFuture

    public ItemFuture(T item)
    Constructor.
    Parameters:
      `item` - the item

  - ### ItemFuture

    public ItemFuture(MultiLockFairBlockingQueue<E>.ExchangeCountDownLatch<T> latch)
    Constructor.
    Parameters:
      `latch` - the latch

- ## Method Details

  - ### cancel

    public boolean cancel(boolean mayInterruptIfRunning)
    Specified by:
      `cancel` in interface `Future<T>`

  - ### get

    public T get() throws InterruptedException, ExecutionException
    Specified by:
      `get` in interface `Future<T>`
    Throws:
      `InterruptedException`
      `ExecutionException`

  - ### get

    public T get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException
    Specified by:
      `get` in interface `Future<T>`
    Throws:
      `InterruptedException`
      `ExecutionException`
      `TimeoutException`

  - ### isCancelled

    public boolean isCancelled()
    Specified by:
      `isCancelled` in interface `Future<T>`

  - ### isDone

    public boolean isDone()
    Specified by:
      `isDone` in interface `Future<T>`