Package org.apache.tomcat.dbcp.dbcp2
Class PoolingDriver
- java.lang.Object
-
- org.apache.tomcat.dbcp.dbcp2.PoolingDriver
-
- All Implemented Interfaces:
java.sql.Driver
public class PoolingDriver extends java.lang.Object implements java.sql.Driver- Since:
- 2.0
-
-
Field Summary
Fields Modifier and Type Field Description protected static intMAJOR_VERSIONprotected static intMINOR_VERSIONprotected static java.util.HashMap<java.lang.String,ObjectPool<? extends java.sql.Connection>>poolsThe map of registered pools.static java.lang.StringURL_PREFIXMy URL prefixprotected static intURL_PREFIX_LEN
-
Constructor Summary
Constructors Modifier Constructor Description PoolingDriver()Constructs a new driver withaccessToUnderlyingConnectionAllowedenabled.protectedPoolingDriver(boolean accessToUnderlyingConnectionAllowed)For unit testing purposes.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanacceptsURL(java.lang.String url)voidclosePool(java.lang.String name)Closes a named pool.java.sql.Connectionconnect(java.lang.String url, java.util.Properties info)ObjectPool<? extends java.sql.Connection>getConnectionPool(java.lang.String name)Gets the connection pool for the given name.intgetMajorVersion()intgetMinorVersion()java.util.logging.LoggergetParentLogger()java.lang.String[]getPoolNames()Gets the pool names.java.sql.DriverPropertyInfo[]getPropertyInfo(java.lang.String url, java.util.Properties info)voidinvalidateConnection(java.sql.Connection conn)Invalidates the given connection.protected booleanisAccessToUnderlyingConnectionAllowed()Returns the value of the accessToUnderlyingConnectionAllowed property.booleanjdbcCompliant()voidregisterPool(java.lang.String name, ObjectPool<? extends java.sql.Connection> pool)Registers a named pool.
-
-
-
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
public 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()
Constructs a new driver withaccessToUnderlyingConnectionAllowedenabled.
-
PoolingDriver
protected PoolingDriver(boolean accessToUnderlyingConnectionAllowed)
For unit testing purposes.- Parameters:
accessToUnderlyingConnectionAllowed- DoDelegatingConnections created by this driver permit access to the delegate?
-
-
Method Detail
-
acceptsURL
public boolean acceptsURL(java.lang.String url) throws java.sql.SQLException- Specified by:
acceptsURLin interfacejava.sql.Driver- Throws:
java.sql.SQLException
-
closePool
public void closePool(java.lang.String name) throws java.sql.SQLExceptionCloses a named pool.- Parameters:
name- The pool name.- Throws:
java.sql.SQLException- Thrown when a problem is caught closing the pool.
-
connect
public java.sql.Connection connect(java.lang.String url, java.util.Properties info) throws java.sql.SQLException- Specified by:
connectin interfacejava.sql.Driver- Throws:
java.sql.SQLException
-
getConnectionPool
public ObjectPool<? extends java.sql.Connection> getConnectionPool(java.lang.String name) throws java.sql.SQLException
Gets the connection pool for the given name.- Parameters:
name- The pool name- Returns:
- The pool
- Throws:
java.sql.SQLException- Thrown when the named pool is not registered.
-
getMajorVersion
public int getMajorVersion()
- Specified by:
getMajorVersionin interfacejava.sql.Driver
-
getMinorVersion
public int getMinorVersion()
- Specified by:
getMinorVersionin interfacejava.sql.Driver
-
getParentLogger
public java.util.logging.Logger getParentLogger() throws java.sql.SQLFeatureNotSupportedException- Specified by:
getParentLoggerin interfacejava.sql.Driver- Throws:
java.sql.SQLFeatureNotSupportedException
-
getPoolNames
public java.lang.String[] getPoolNames()
Gets the pool names.- Returns:
- the pool names.
-
getPropertyInfo
public java.sql.DriverPropertyInfo[] getPropertyInfo(java.lang.String url, java.util.Properties info)- Specified by:
getPropertyInfoin interfacejava.sql.Driver
-
invalidateConnection
public void invalidateConnection(java.sql.Connection conn) throws java.sql.SQLExceptionInvalidates the given connection.- Parameters:
conn- connection to invalidate- Throws:
java.sql.SQLException- if the connection is not aPoolGuardConnectionWrapperor an error occurs invalidating the connection
-
isAccessToUnderlyingConnectionAllowed
protected boolean isAccessToUnderlyingConnectionAllowed()
Returns the value of the accessToUnderlyingConnectionAllowed property.- Returns:
- true if access to the underlying is allowed, false otherwise.
-
jdbcCompliant
public boolean jdbcCompliant()
- Specified by:
jdbcCompliantin interfacejava.sql.Driver
-
registerPool
public void registerPool(java.lang.String name, ObjectPool<? extends java.sql.Connection> pool)Registers a named pool.- Parameters:
name- The pool name.pool- The pool.
-
-