org.apache.commons.dbutils
Class ProxyFactory

java.lang.Object
  extended by org.apache.commons.dbutils.ProxyFactory

public class ProxyFactory
extends java.lang.Object

Creates proxy implementations of JDBC interfaces. This avoids incompatibilities between the JDBC 2 and JDBC 3 interfaces. This class is thread safe.

Author:
David Graham
See Also:
Proxy, InvocationHandler

Field Summary
private static java.lang.Class[] callableStatementClass
          Class[] for CallableStatement interface.
private static java.lang.Class[] connectionClass
          Class[] for Connection interface.
private static java.lang.Class[] driverClass
          Class[] for Driver interface.
private static ProxyFactory instance
          The Singleton instance of this class.
private static java.lang.Class[] metaClass
          Class[] for ResultSetMetaData interface.
private static java.lang.Class[] preparedStatementClass
          Class[] for PreparedStatement interface.
private static java.lang.Class[] resultSetClass
          Class[] for ResultSet interface.
private static java.lang.Class[] statementClass
          Class[] for Statement interface.
 
Constructor Summary
protected ProxyFactory()
          Protected constructor for ProxyFactory subclasses to use.
 
Method Summary
 java.sql.CallableStatement createCallableStatement(java.lang.reflect.InvocationHandler handler)
          Creates a new proxy CallableStatement object.
 java.sql.Connection createConnection(java.lang.reflect.InvocationHandler handler)
          Creates a new proxy Connection object.
 java.sql.Driver createDriver(java.lang.reflect.InvocationHandler handler)
          Creates a new proxy Driver object.
 java.sql.PreparedStatement createPreparedStatement(java.lang.reflect.InvocationHandler handler)
          Creates a new proxy PreparedStatement object.
 java.sql.ResultSet createResultSet(java.lang.reflect.InvocationHandler handler)
          Creates a new proxy ResultSet object.
 java.sql.ResultSetMetaData createResultSetMetaData(java.lang.reflect.InvocationHandler handler)
          Creates a new proxy ResultSetMetaData object.
 java.sql.Statement createStatement(java.lang.reflect.InvocationHandler handler)
          Creates a new proxy Statement object.
static ProxyFactory instance()
          Returns the Singleton instance of this class.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

callableStatementClass

private static final java.lang.Class[] callableStatementClass
Class[] for CallableStatement interface.


connectionClass

private static final java.lang.Class[] connectionClass
Class[] for Connection interface.


driverClass

private static final java.lang.Class[] driverClass
Class[] for Driver interface.


instance

private static final ProxyFactory instance
The Singleton instance of this class.


metaClass

private static final java.lang.Class[] metaClass
Class[] for ResultSetMetaData interface.


preparedStatementClass

private static final java.lang.Class[] preparedStatementClass
Class[] for PreparedStatement interface.


resultSetClass

private static final java.lang.Class[] resultSetClass
Class[] for ResultSet interface.


statementClass

private static final java.lang.Class[] statementClass
Class[] for Statement interface.

Constructor Detail

ProxyFactory

protected ProxyFactory()
Protected constructor for ProxyFactory subclasses to use.

Method Detail

instance

public static ProxyFactory instance()
Returns the Singleton instance of this class.


createCallableStatement

public java.sql.CallableStatement createCallableStatement(java.lang.reflect.InvocationHandler handler)
Creates a new proxy CallableStatement object.

Parameters:
handler - The handler that intercepts/overrides method calls.

createConnection

public java.sql.Connection createConnection(java.lang.reflect.InvocationHandler handler)
Creates a new proxy Connection object.

Parameters:
handler - The handler that intercepts/overrides method calls.

createDriver

public java.sql.Driver createDriver(java.lang.reflect.InvocationHandler handler)
Creates a new proxy Driver object.

Parameters:
handler - The handler that intercepts/overrides method calls.

createPreparedStatement

public java.sql.PreparedStatement createPreparedStatement(java.lang.reflect.InvocationHandler handler)
Creates a new proxy PreparedStatement object.

Parameters:
handler - The handler that intercepts/overrides method calls.

createResultSet

public java.sql.ResultSet createResultSet(java.lang.reflect.InvocationHandler handler)
Creates a new proxy ResultSet object.

Parameters:
handler - The handler that intercepts/overrides method calls.

createResultSetMetaData

public java.sql.ResultSetMetaData createResultSetMetaData(java.lang.reflect.InvocationHandler handler)
Creates a new proxy ResultSetMetaData object.

Parameters:
handler - The handler that intercepts/overrides method calls.

createStatement

public java.sql.Statement createStatement(java.lang.reflect.InvocationHandler handler)
Creates a new proxy Statement object.

Parameters:
handler - The handler that intercepts/overrides method calls.