A base delegating implementation of Connection.
All of the methods from the Connection interface simply check to see that the Connection is active, and call the corresponding method on the "delegate" provided in my constructor.
Extends AbandonedTrace to implement Connection tracking and logging of code which created the Connection. Tracking the Connection ensures that the AbandonedObjectPool can close this connection and recycle it if its pool of connections is nearing exhaustion and this connection's last usage is older than the removeAbandonedTimeout.
Creates a wrapper for the Connection which traces this Connection in the AbandonedObjectPool.
Can be used to clear cached state when it is known that the underlying connection may have been accessed directly.
Closes the underlying connection, and close any Statements that were not explicitly closed.
Returns the state caching flag.
Gets the default query timeout that will be used for Statements created from this connection.
If my underlying Connection is not a DelegatingConnection, returns it, otherwise recursively invokes this method on my delegate.
Although this method is public, it is part of the internal API and should not be used by clients.
Compares innermost delegate to the given connection.
Sets the state caching flag.
Sets the default query timeout that will be used for Statements created from this connection.
Returns a string representation of the metadata associated with the innermost delegate connection.
c - the Connection to delegate all calls to.
Hence this method will return the first delegate that is not a DelegatingConnection, or null when no non-DelegatingConnection delegate can be found by traversing this chain.
This method is useful when you may have nested DelegatingConnections, and you want to make sure to obtain a "genuine" Connection.
Although this method is public, it is part of the internal API and should not be used by clients. The signature of this method may change at any time including in ways that break backwards compatibility.
Gets the default query timeout that will be used for Statements created from this connection. null means that the driver default will be used.
query timeout limit in seconds; zero means there is no limit.
Sets the default query timeout that will be used for Statements created from this connection. null means that the driver default will be used.