org.apache.tomcat.jdbc.pool

## Class ConnectionPool.ConnectionFuture

- java.lang.Object
- - org.apache.tomcat.jdbc.pool.ConnectionPool.ConnectionFuture

- All Implemented Interfaces:
    Runnable, Future<Connection>
  Enclosing class:
    ConnectionPool

      protected class ConnectionPool.ConnectionFuture
      extends Object
      implements Future<Connection>, Runnable

  Tread safe wrapper around a future for the regular queue This one retrieves the pooled connection object and performs the initialization according to interceptors and validation rules. This class is thread safe and is cancellable
  Author:
    fhanik

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ConnectionPool.ConnectionFuture(Future<PooledConnection> pcf)`
    `ConnectionPool.ConnectionFuture(PooledConnection pc)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `cancel(boolean mayInterruptIfRunning)`
    `Connection` | `get()`
    `Connection` | `get(long timeout, TimeUnit unit)`
    `boolean` | `isCancelled()`
    `boolean` | `isDone()`
    `void` | `run()` run method to be executed when cancelled by an executor

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

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

- - ### Constructor Detail

    - #### ConnectionPool.ConnectionFuture

          public ConnectionPool.ConnectionFuture(Future<PooledConnection> pcf)

    - #### ConnectionPool.ConnectionFuture

          public ConnectionPool.ConnectionFuture(PooledConnection pc)
                                          throws SQLException

      Throws:
        `SQLException`

  - ### Method Detail

    - #### cancel

          public boolean cancel(boolean mayInterruptIfRunning)

      Specified by:
        `cancel` in interface `Future<Connection>`

    - #### get

          public Connection get()
                         throws InterruptedException,
                                ExecutionException

      Specified by:
        `get` in interface `Future<Connection>`
      Throws:
        `InterruptedException`
        `ExecutionException`

    - #### get

          public Connection get(long timeout,
                       TimeUnit unit)
                         throws InterruptedException,
                                ExecutionException,
                                TimeoutException

      Specified by:
        `get` in interface `Future<Connection>`
      Throws:
        `InterruptedException`
        `ExecutionException`
        `TimeoutException`

    - #### isCancelled

          public boolean isCancelled()

      Specified by:
        `isCancelled` in interface `Future<Connection>`

    - #### isDone

          public boolean isDone()

      Specified by:
        `isDone` in interface `Future<Connection>`

    - #### run

          public void run()

      run method to be executed when cancelled by an executor
      Specified by:
        `run` in interface `Runnable`

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