public final class NewProxyConnection extends java.lang.Object implements java.sql.Connection, C3P0ProxyConnection
| Modifier and Type | Field and Description |
|---|---|
protected java.sql.Connection |
inner |
RAW_CONNECTION| Modifier and Type | Method and Description |
|---|---|
void |
abort(java.util.concurrent.Executor a) |
void |
clearWarnings() |
void |
close() |
void |
commit() |
java.sql.Array |
createArrayOf(java.lang.String a,
java.lang.Object[] b) |
java.sql.Blob |
createBlob() |
java.sql.Clob |
createClob() |
java.sql.NClob |
createNClob() |
java.sql.SQLXML |
createSQLXML() |
java.sql.Statement |
createStatement() |
java.sql.Statement |
createStatement(int a,
int b) |
java.sql.Statement |
createStatement(int a,
int b,
int c) |
java.sql.Struct |
createStruct(java.lang.String a,
java.lang.Object[] b) |
boolean |
getAutoCommit() |
java.lang.String |
getCatalog() |
java.util.Properties |
getClientInfo() |
java.lang.String |
getClientInfo(java.lang.String a) |
int |
getHoldability() |
java.sql.DatabaseMetaData |
getMetaData() |
int |
getNetworkTimeout() |
java.lang.String |
getSchema() |
int |
getTransactionIsolation() |
java.util.Map |
getTypeMap() |
java.sql.SQLWarning |
getWarnings() |
boolean |
isClosed() |
boolean |
isReadOnly() |
boolean |
isValid(int a) |
boolean |
isWrapperFor(java.lang.Class a) |
java.lang.String |
nativeSQL(java.lang.String a) |
java.sql.CallableStatement |
prepareCall(java.lang.String a) |
java.sql.CallableStatement |
prepareCall(java.lang.String a,
int b,
int c) |
java.sql.CallableStatement |
prepareCall(java.lang.String a,
int b,
int c,
int d) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String a) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String a,
int b) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String a,
int[] b) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String a,
int b,
int c) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String a,
int b,
int c,
int d) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String a,
java.lang.String[] b) |
java.lang.Object |
rawConnectionOperation(java.lang.reflect.Method m,
java.lang.Object target,
java.lang.Object[] args)
Allows one to work with the unproxied, raw Connection.
|
void |
releaseSavepoint(java.sql.Savepoint a) |
void |
rollback() |
void |
rollback(java.sql.Savepoint a) |
void |
setAutoCommit(boolean a) |
void |
setCatalog(java.lang.String a) |
void |
setClientInfo(java.util.Properties a) |
void |
setClientInfo(java.lang.String a,
java.lang.String b) |
void |
setHoldability(int a) |
void |
setNetworkTimeout(java.util.concurrent.Executor a,
int b) |
void |
setReadOnly(boolean a) |
java.sql.Savepoint |
setSavepoint() |
java.sql.Savepoint |
setSavepoint(java.lang.String a) |
void |
setSchema(java.lang.String a) |
void |
setTransactionIsolation(int a) |
void |
setTypeMap(java.util.Map a) |
java.lang.String |
toString() |
java.lang.Object |
unwrap(java.lang.Class a) |
public void setReadOnly(boolean a)
throws java.sql.SQLException
setReadOnly in interface java.sql.Connectionjava.sql.SQLExceptionpublic void close()
throws java.sql.SQLException
close in interface java.lang.AutoCloseableclose in interface java.sql.Connectionjava.sql.SQLExceptionpublic boolean isReadOnly()
throws java.sql.SQLException
isReadOnly in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Statement createStatement(int a,
int b)
throws java.sql.SQLException
createStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Statement createStatement()
throws java.sql.SQLException
createStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Statement createStatement(int a,
int b,
int c)
throws java.sql.SQLException
createStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String a,
int b)
throws java.sql.SQLException
prepareStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String a,
int[] b)
throws java.sql.SQLException
prepareStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String a,
int b,
int c)
throws java.sql.SQLException
prepareStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String a,
java.lang.String[] b)
throws java.sql.SQLException
prepareStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String a,
int b,
int c,
int d)
throws java.sql.SQLException
prepareStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String a)
throws java.sql.SQLException
prepareStatement in interface java.sql.Connectionjava.sql.SQLExceptionpublic boolean isClosed()
throws java.sql.SQLException
isClosed in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.CallableStatement prepareCall(java.lang.String a,
int b,
int c,
int d)
throws java.sql.SQLException
prepareCall in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.CallableStatement prepareCall(java.lang.String a,
int b,
int c)
throws java.sql.SQLException
prepareCall in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.CallableStatement prepareCall(java.lang.String a)
throws java.sql.SQLException
prepareCall in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.DatabaseMetaData getMetaData()
throws java.sql.SQLException
getMetaData in interface java.sql.Connectionjava.sql.SQLExceptionpublic void setTransactionIsolation(int a)
throws java.sql.SQLException
setTransactionIsolation in interface java.sql.Connectionjava.sql.SQLExceptionpublic void setCatalog(java.lang.String a)
throws java.sql.SQLException
setCatalog in interface java.sql.Connectionjava.sql.SQLExceptionpublic void setHoldability(int a)
throws java.sql.SQLException
setHoldability in interface java.sql.Connectionjava.sql.SQLExceptionpublic void setTypeMap(java.util.Map a)
throws java.sql.SQLException
setTypeMap in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.SQLWarning getWarnings()
throws java.sql.SQLException
getWarnings in interface java.sql.Connectionjava.sql.SQLExceptionpublic void clearWarnings()
throws java.sql.SQLException
clearWarnings in interface java.sql.Connectionjava.sql.SQLExceptionpublic void commit()
throws java.sql.SQLException
commit in interface java.sql.Connectionjava.sql.SQLExceptionpublic void rollback(java.sql.Savepoint a)
throws java.sql.SQLException
rollback in interface java.sql.Connectionjava.sql.SQLExceptionpublic void rollback()
throws java.sql.SQLException
rollback in interface java.sql.Connectionjava.sql.SQLExceptionpublic void setAutoCommit(boolean a)
throws java.sql.SQLException
setAutoCommit in interface java.sql.Connectionjava.sql.SQLExceptionpublic void setClientInfo(java.lang.String a,
java.lang.String b)
throws java.sql.SQLClientInfoException
setClientInfo in interface java.sql.Connectionjava.sql.SQLClientInfoExceptionpublic void setClientInfo(java.util.Properties a)
throws java.sql.SQLClientInfoException
setClientInfo in interface java.sql.Connectionjava.sql.SQLClientInfoExceptionpublic boolean isValid(int a)
throws java.sql.SQLException
isValid in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.lang.String nativeSQL(java.lang.String a)
throws java.sql.SQLException
nativeSQL in interface java.sql.Connectionjava.sql.SQLExceptionpublic boolean getAutoCommit()
throws java.sql.SQLException
getAutoCommit in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.lang.String getCatalog()
throws java.sql.SQLException
getCatalog in interface java.sql.Connectionjava.sql.SQLExceptionpublic int getTransactionIsolation()
throws java.sql.SQLException
getTransactionIsolation in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.util.Map getTypeMap()
throws java.sql.SQLException
getTypeMap in interface java.sql.Connectionjava.sql.SQLExceptionpublic int getHoldability()
throws java.sql.SQLException
getHoldability in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Savepoint setSavepoint(java.lang.String a)
throws java.sql.SQLException
setSavepoint in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Savepoint setSavepoint()
throws java.sql.SQLException
setSavepoint in interface java.sql.Connectionjava.sql.SQLExceptionpublic void releaseSavepoint(java.sql.Savepoint a)
throws java.sql.SQLException
releaseSavepoint in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Clob createClob()
throws java.sql.SQLException
createClob in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Blob createBlob()
throws java.sql.SQLException
createBlob in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.NClob createNClob()
throws java.sql.SQLException
createNClob in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.SQLXML createSQLXML()
throws java.sql.SQLException
createSQLXML in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.util.Properties getClientInfo()
throws java.sql.SQLException
getClientInfo in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.lang.String getClientInfo(java.lang.String a)
throws java.sql.SQLException
getClientInfo in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Array createArrayOf(java.lang.String a,
java.lang.Object[] b)
throws java.sql.SQLException
createArrayOf in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Struct createStruct(java.lang.String a,
java.lang.Object[] b)
throws java.sql.SQLException
createStruct in interface java.sql.Connectionjava.sql.SQLExceptionpublic void setSchema(java.lang.String a)
throws java.sql.SQLException
setSchema in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.lang.String getSchema()
throws java.sql.SQLException
getSchema in interface java.sql.Connectionjava.sql.SQLExceptionpublic void setNetworkTimeout(java.util.concurrent.Executor a,
int b)
throws java.sql.SQLException
setNetworkTimeout in interface java.sql.Connectionjava.sql.SQLExceptionpublic int getNetworkTimeout()
throws java.sql.SQLException
getNetworkTimeout in interface java.sql.Connectionjava.sql.SQLExceptionpublic void abort(java.util.concurrent.Executor a)
throws java.sql.SQLException
abort in interface java.sql.Connectionjava.sql.SQLExceptionpublic java.lang.Object unwrap(java.lang.Class a)
throws java.sql.SQLException
unwrap in interface java.sql.Wrapperjava.sql.SQLExceptionpublic boolean isWrapperFor(java.lang.Class a)
throws java.sql.SQLException
isWrapperFor in interface java.sql.Wrapperjava.sql.SQLExceptionpublic java.lang.Object rawConnectionOperation(java.lang.reflect.Method m,
java.lang.Object target,
java.lang.Object[] args)
throws java.lang.IllegalAccessException,
java.lang.IllegalArgumentException,
java.lang.reflect.InvocationTargetException,
java.sql.SQLException
C3P0ProxyConnectionAllows one to work with the unproxied, raw Connection. Some database companies never got over the "common interfaces mean no more vendor lock-in!" thing, and offer non-standard API on their Connections. This method permits you to "pierce" the connection-pooling layer to call non-standard methods on the original Connection, or to pass the original Connections to functions that are not implementation neutral.
To use this functionality, you'll need to cast a Connection retrieved from a c3p0 PooledDataSource to a C3P0ProxyConnection.
This method works by making a reflective call of method m on Object target (which may be null for static methods), passing and argument list args. For the method target, or for any argument, you may substitute the special token C3P0ProxyConnection.RAW_CONNECTION
Any Statements or ResultSets returned by the operation will be proxied and c3p0-managed, meaning that these resources will be automatically closed if the user does not close them first when this Connection is checked back into the pool. Any other resources returned by the operation are the user's responsibility to clean up!
Incautious use of this method can corrupt the Connection pool, by breaking the invariant that all checked-in Connections should be equivalent. If your vendor supplies API that allows you to modify the state or configuration of a Connection in some nonstandard way, you might use this method to do so, and then check the Connection back into the pool. When you fetch another Connection from the PooledDataSource, it will be undefined whether the Connection returned will have your altered configuration, or the default configuration of a "fresh" Connection. Thus, it is inadvisable to use this method to call nonstandard mutators.
rawConnectionOperation in interface C3P0ProxyConnectionjava.lang.IllegalAccessExceptionjava.lang.IllegalArgumentExceptionjava.lang.reflect.InvocationTargetExceptionjava.sql.SQLExceptionpublic java.lang.String toString()
toString in class java.lang.Object