org.apache.tomcat.dbcp.dbcp

## Class PoolingDriver

- java.lang.Object
- - org.apache.tomcat.dbcp.dbcp.PoolingDriver

- All Implemented Interfaces:
    java.sql.Driver

      public class PoolingDriver
      extends java.lang.Object
      implements java.sql.Driver

  A `Driver` implementation that obtains `Connection`s from a registered `ObjectPool`.
  Author:
    Rodney Waldhoff, Dirk Verbeeck

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static java.util.HashMap<java.lang.String,ObjectPool<? extends java.sql.Connection>>` | `_pools` The map of registered pools.
    `protected static int` | `MAJOR_VERSION`
    `protected static int` | `MINOR_VERSION`
    `protected static java.lang.String` | `URL_PREFIX` My URL prefix
    `protected static int` | `URL_PREFIX_LEN`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PoolingDriver()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `acceptsURL(java.lang.String url)`
    `void` | `closePool(java.lang.String name)`
    `java.sql.Connection` | `connect(java.lang.String url, java.util.Properties info)`
    `ObjectPool<? extends java.sql.Connection>` | `getConnectionPool(java.lang.String name)`
    `int` | `getMajorVersion()`
    `int` | `getMinorVersion()`
    `java.util.logging.Logger` | `getParentLogger()`
    `ObjectPool<? extends java.sql.Connection>` | `getPool(java.lang.String name)` Deprecated. This will be removed in a future version of DBCP.
    `java.lang.String[]` | `getPoolNames()`
    `java.sql.DriverPropertyInfo[]` | `getPropertyInfo(java.lang.String url, java.util.Properties info)`
    `void` | `invalidateConnection(java.sql.Connection conn)` Invalidates the given connection.
    `static boolean` | `isAccessToUnderlyingConnectionAllowed()` Returns the value of the accessToUnderlyingConnectionAllowed property.
    `boolean` | `jdbcCompliant()`
    `void` | `registerPool(java.lang.String name, ObjectPool<? extends java.sql.Connection> pool)`
    `static void` | `setAccessToUnderlyingConnectionAllowed(boolean allow)` Sets the value of the accessToUnderlyingConnectionAllowed property.

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

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

- - ### Field Detail

    - #### _pools

          protected static final java.util.HashMap<java.lang.String,ObjectPool<? extends java.sql.Connection>> _pools

      The map of registered pools.

    - #### URL_PREFIX

          protected static final java.lang.String URL_PREFIX

      My URL prefix
      See Also:
        Constant Field Values

    - #### URL_PREFIX_LEN

          protected static final int URL_PREFIX_LEN

    - #### MAJOR_VERSION

          protected static final int MAJOR_VERSION

      See Also:
        Constant Field Values

    - #### MINOR_VERSION

          protected static final int MINOR_VERSION

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### PoolingDriver

          public PoolingDriver()

  - ### Method Detail

    - #### isAccessToUnderlyingConnectionAllowed

          public static boolean isAccessToUnderlyingConnectionAllowed()

      Returns the value of the accessToUnderlyingConnectionAllowed property.
      Returns:
        true if access to the underlying is allowed, false otherwise.

    - #### setAccessToUnderlyingConnectionAllowed

          public static void setAccessToUnderlyingConnectionAllowed(boolean allow)

      Sets the value of the accessToUnderlyingConnectionAllowed property. It controls if the PoolGuard allows access to the underlying connection. (Default: false)
      Parameters:
        `allow` - Access to the underlying connection is granted when true.

    - #### getPool

          @Deprecated
          public ObjectPool<? extends java.sql.Connection> getPool(java.lang.String name)

      Deprecated. This will be removed in a future version of DBCP.
      WARNING: This method throws DbcpExceptions (RuntimeExceptions) and will be replaced by the protected getConnectionPool method.

    - #### getConnectionPool

          public ObjectPool<? extends java.sql.Connection> getConnectionPool(java.lang.String name)
                                                                      throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### registerPool

          public void registerPool(java.lang.String name,
                          ObjectPool<? extends java.sql.Connection> pool)

    - #### closePool

          public void closePool(java.lang.String name)
                         throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getPoolNames

          public java.lang.String[] getPoolNames()

    - #### acceptsURL

          public boolean acceptsURL(java.lang.String url)
                             throws java.sql.SQLException

      Specified by:
        `acceptsURL` in interface `java.sql.Driver`
      Throws:
        `java.sql.SQLException`

    - #### connect

          public java.sql.Connection connect(java.lang.String url,
                                    java.util.Properties info)
                                      throws java.sql.SQLException

      Specified by:
        `connect` in interface `java.sql.Driver`
      Throws:
        `java.sql.SQLException`

    - #### invalidateConnection

          public void invalidateConnection(java.sql.Connection conn)
                                    throws java.sql.SQLException

      Invalidates the given connection.
      Parameters:
        `conn` - connection to invalidate
      Throws:
        `java.sql.SQLException` - if the connection is not a `PoolGuardConnectionWrapper` or an error occurs invalidating the connection
      Since:
        1.2.2

    - #### getMajorVersion

          public int getMajorVersion()

      Specified by:
        `getMajorVersion` in interface `java.sql.Driver`

    - #### getMinorVersion

          public int getMinorVersion()

      Specified by:
        `getMinorVersion` in interface `java.sql.Driver`

    - #### jdbcCompliant

          public boolean jdbcCompliant()

      Specified by:
        `jdbcCompliant` in interface `java.sql.Driver`

    - #### getPropertyInfo

          public java.sql.DriverPropertyInfo[] getPropertyInfo(java.lang.String url,
                                                      java.util.Properties info)

      Specified by:
        `getPropertyInfo` in interface `java.sql.Driver`

    - #### getParentLogger

          public java.util.logging.Logger getParentLogger()
                                                   throws java.sql.SQLFeatureNotSupportedException

      Specified by:
        `getParentLogger` in interface `java.sql.Driver`
      Throws:
        `java.sql.SQLFeatureNotSupportedException`

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