org.apache.tomcat.jdbc.pool
Class ProxyConnection
java.lang.Object
org.apache.tomcat.jdbc.pool.JdbcInterceptor
org.apache.tomcat.jdbc.pool.ProxyConnection
- All Implemented Interfaces:
- java.lang.reflect.InvocationHandler
public class ProxyConnection
- extends JdbcInterceptor
A ProxyConnection object is the bottom most interceptor that wraps an object of type
PooledConnection
. The ProxyConnection intercepts three methods:
Connection.close()
- returns the connection to the pool. May be called multiple times.
Object.toString()
- returns a custom string for this object
PooledConnection.getConnection()
- returns the underlying connection
By default method comparisons is done on a String reference level, unless the PoolConfiguration.setUseEquals(boolean)
has been called
with a true
argument.
- Author:
- Filip Hanik
Methods inherited from class org.apache.tomcat.jdbc.pool.JdbcInterceptor |
compare, compare, disconnected, getNext, getProperties, isUseEquals, poolClosed, poolStarted, setNext, setProperties, setUseEquals |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
connection
protected PooledConnection connection
pool
protected ConnectionPool pool
ProxyConnection
protected ProxyConnection(ConnectionPool parent,
PooledConnection con,
boolean useEquals)
throws java.sql.SQLException
- Throws:
java.sql.SQLException
getConnection
public PooledConnection getConnection()
setConnection
public void setConnection(PooledConnection connection)
getPool
public ConnectionPool getPool()
setPool
public void setPool(ConnectionPool pool)
reset
public void reset(ConnectionPool parent,
PooledConnection con)
- Description copied from class:
JdbcInterceptor
- Gets called each time the connection is borrowed from the pool
This means that if an interceptor holds a reference to the connection
the interceptor can be reused for another connection.
This method may be called with null as both arguments when we are closing down the connection.
- Specified by:
reset
in class JdbcInterceptor
- Parameters:
parent
- - the connection pool owning the connectioncon
- - the pooled connection
isWrapperFor
public boolean isWrapperFor(java.lang.Class<?> iface)
throws java.sql.SQLException
- Throws:
java.sql.SQLException
unwrap
public java.lang.Object unwrap(java.lang.Class<?> iface)
throws java.sql.SQLException
- Throws:
java.sql.SQLException
invoke
public java.lang.Object invoke(java.lang.Object proxy,
java.lang.reflect.Method method,
java.lang.Object[] args)
throws java.lang.Throwable
- Description copied from class:
JdbcInterceptor
- Gets invoked each time an operation on
Connection
is invoked.
- Specified by:
invoke
in interface java.lang.reflect.InvocationHandler
- Overrides:
invoke
in class JdbcInterceptor
- Throws:
java.lang.Throwable
isClosed
public boolean isClosed()
getDelegateConnection
public PooledConnection getDelegateConnection()
getParentPool
public ConnectionPool getParentPool()
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.