org.apache.openjpa.lib.jdbc
Class DelegatingConnection

java.lang.Object
  extended by org.apache.openjpa.lib.jdbc.DelegatingConnection
All Implemented Interfaces:
Connection, Wrapper, Closeable
Direct Known Subclasses:
ConfiguringConnectionDecorator.ConfiguringConnection, JDBCEventConnectionDecorator.EventConnection, JDBCStoreManager.ClientConnection, JDBCStoreManager.RefCountConnection, LoggingConnectionDecorator.LoggingConnection, PostgresDictionary.PostgresConnection, SybaseDictionary.SybaseConnection

public abstract class DelegatingConnection
extends Object
implements Connection, Closeable

Wrapper around an existing connection. Subclasses can override the methods whose behavior they mean to change. The equals and hashCode methods pass through to the base underlying data store connection.

Author:
Abe White

Field Summary
(package private) static Constructor<DelegatingConnection> concreteImpl
           
 
Fields inherited from interface java.sql.Connection
TRANSACTION_NONE, TRANSACTION_READ_COMMITTED, TRANSACTION_READ_UNCOMMITTED, TRANSACTION_REPEATABLE_READ, TRANSACTION_SERIALIZABLE
 
Constructor Summary
DelegatingConnection(Connection conn)
           
 
Method Summary
protected  void appendInfo(StringBuffer buf)
           
 void clearWarnings()
           
 void close()
           
 void commit()
           
 Array createArrayOf(String typeName, Object[] elements)
           
 Blob createBlob()
           
 Clob createClob()
           
 NClob createNClob()
           
 SQLXML createSQLXML()
           
 Statement createStatement()
           
protected  Statement createStatement(boolean wrap)
          Create a statement, with the option of not wrapping it in a DelegatingStatement, which is the default.
 Statement createStatement(int type, int concur)
           
protected  Statement createStatement(int type, int concur, boolean wrap)
          Create a statement, with the option of not wrapping it in a DelegatingStatement, which is the default.
 Statement createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability)
           
protected  Statement createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability, boolean wrap)
           
 Struct createStruct(String typeName, Object[] attributes)
           
protected abstract  void enforceAbstract()
          Marker to enforce that subclasses of this class are abstract.
 boolean equals(Object other)
           
 boolean getAutoCommit()
           
 String getCatalog()
           
 Properties getClientInfo()
           
 String getClientInfo(String name)
           
 Connection getDelegate()
          Return the wrapped connection.
 int getHoldability()
           
 Connection getInnermostDelegate()
          Return the base underlying data store connection.
 DatabaseMetaData getMetaData()
           
protected  DatabaseMetaData getMetaData(boolean wrap)
          Return the metadata, with the option of not wrapping it in a DelegatingDatabaseMetaData, which is the default.
 int getTransactionIsolation()
           
 Map<String,Class<?>> getTypeMap()
           
 SQLWarning getWarnings()
           
 int hashCode()
           
 boolean isClosed()
           
 boolean isReadOnly()
           
 boolean isValid(int timeout)
           
 boolean isWrapperFor(Class iface)
           
 String nativeSQL(String str)
           
static DelegatingConnection newInstance(Connection conn)
          Constructor for the concrete implementation of this abstract class.
 CallableStatement prepareCall(String str)
           
protected  CallableStatement prepareCall(String str, boolean wrap)
          Prepare a call, with the option of not wrapping it in a DelegatingCallableStatement, which is the default.
 CallableStatement prepareCall(String str, int type, int concur)
           
protected  CallableStatement prepareCall(String str, int type, int concur, boolean wrap)
          Prepare a call, with the option of not wrapping it in a DelegatingCallableStatement, which is the default.
 CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
           
protected  CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability, boolean wrap)
           
 PreparedStatement prepareStatement(String str)
           
protected  PreparedStatement prepareStatement(String str, boolean wrap)
          Prepare a statement, with the option of not wrapping it in a DelegatingPreparedStatement, which is the default.
 PreparedStatement prepareStatement(String sql, int autoGeneratedKeys)
           
 PreparedStatement prepareStatement(String sql, int[] columnIndexes)
           
protected  PreparedStatement prepareStatement(String sql, int[] columnIndexes, boolean wrap)
           
protected  PreparedStatement prepareStatement(String sql, int autoGeneratedKeys, boolean wrap)
           
 PreparedStatement prepareStatement(String str, int type, int concur)
           
protected  PreparedStatement prepareStatement(String str, int type, int concur, boolean wrap)
          Prepare a statement, with the option of not wrapping it in a DelegatingPreparedStatement, which is the default.
 PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
           
protected  PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability, boolean wrap)
           
 PreparedStatement prepareStatement(String sql, String[] columnNames)
           
protected  PreparedStatement prepareStatement(String sql, String[] columnNames, boolean wrap)
           
 void releaseSavepoint(Savepoint savepoint)
           
 void rollback()
           
 void rollback(Savepoint savepoint)
           
 void setAutoCommit(boolean bool)
           
 void setCatalog(String str)
           
 void setClientInfo(Properties properties)
           
 void setClientInfo(String name, String value)
           
 void setHoldability(int holdability)
           
 void setReadOnly(boolean bool)
           
 Savepoint setSavepoint()
           
 Savepoint setSavepoint(String savepoint)
           
 void setTransactionIsolation(int i)
           
 void setTypeMap(Map<String,Class<?>> map)
           
 String toString()
           
 Object unwrap(Class iface)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

concreteImpl

static final Constructor<DelegatingConnection> concreteImpl
Constructor Detail

DelegatingConnection

public DelegatingConnection(Connection conn)
Method Detail

newInstance

public static DelegatingConnection newInstance(Connection conn)
Constructor for the concrete implementation of this abstract class.


enforceAbstract

protected abstract void enforceAbstract()
Marker to enforce that subclasses of this class are abstract.


getDelegate

public Connection getDelegate()
Return the wrapped connection.


getInnermostDelegate

public Connection getInnermostDelegate()
Return the base underlying data store connection.


hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object other)
Overrides:
equals in class Object

toString

public String toString()
Overrides:
toString in class Object

appendInfo

protected void appendInfo(StringBuffer buf)

createStatement

public Statement createStatement()
                          throws SQLException
Specified by:
createStatement in interface Connection
Throws:
SQLException

createStatement

protected Statement createStatement(boolean wrap)
                             throws SQLException
Create a statement, with the option of not wrapping it in a DelegatingStatement, which is the default.

Throws:
SQLException

prepareStatement

public PreparedStatement prepareStatement(String str)
                                   throws SQLException
Specified by:
prepareStatement in interface Connection
Throws:
SQLException

prepareStatement

protected PreparedStatement prepareStatement(String str,
                                             boolean wrap)
                                      throws SQLException
Prepare a statement, with the option of not wrapping it in a DelegatingPreparedStatement, which is the default.

Throws:
SQLException

prepareCall

public CallableStatement prepareCall(String str)
                              throws SQLException
Specified by:
prepareCall in interface Connection
Throws:
SQLException

prepareCall

protected CallableStatement prepareCall(String str,
                                        boolean wrap)
                                 throws SQLException
Prepare a call, with the option of not wrapping it in a DelegatingCallableStatement, which is the default.

Throws:
SQLException

nativeSQL

public String nativeSQL(String str)
                 throws SQLException
Specified by:
nativeSQL in interface Connection
Throws:
SQLException

setAutoCommit

public void setAutoCommit(boolean bool)
                   throws SQLException
Specified by:
setAutoCommit in interface Connection
Throws:
SQLException

getAutoCommit

public boolean getAutoCommit()
                      throws SQLException
Specified by:
getAutoCommit in interface Connection
Throws:
SQLException

commit

public void commit()
            throws SQLException
Specified by:
commit in interface Connection
Throws:
SQLException

rollback

public void rollback()
              throws SQLException
Specified by:
rollback in interface Connection
Throws:
SQLException

close

public void close()
           throws SQLException
Specified by:
close in interface Connection
Specified by:
close in interface Closeable
Throws:
SQLException

isClosed

public boolean isClosed()
                 throws SQLException
Specified by:
isClosed in interface Connection
Throws:
SQLException

getMetaData

public DatabaseMetaData getMetaData()
                             throws SQLException
Specified by:
getMetaData in interface Connection
Throws:
SQLException

getMetaData

protected DatabaseMetaData getMetaData(boolean wrap)
                                throws SQLException
Return the metadata, with the option of not wrapping it in a DelegatingDatabaseMetaData, which is the default.

Throws:
SQLException

setReadOnly

public void setReadOnly(boolean bool)
                 throws SQLException
Specified by:
setReadOnly in interface Connection
Throws:
SQLException

isReadOnly

public boolean isReadOnly()
                   throws SQLException
Specified by:
isReadOnly in interface Connection
Throws:
SQLException

setCatalog

public void setCatalog(String str)
                throws SQLException
Specified by:
setCatalog in interface Connection
Throws:
SQLException

getCatalog

public String getCatalog()
                  throws SQLException
Specified by:
getCatalog in interface Connection
Throws:
SQLException

setTransactionIsolation

public void setTransactionIsolation(int i)
                             throws SQLException
Specified by:
setTransactionIsolation in interface Connection
Throws:
SQLException

getTransactionIsolation

public int getTransactionIsolation()
                            throws SQLException
Specified by:
getTransactionIsolation in interface Connection
Throws:
SQLException

getWarnings

public SQLWarning getWarnings()
                       throws SQLException
Specified by:
getWarnings in interface Connection
Throws:
SQLException

clearWarnings

public void clearWarnings()
                   throws SQLException
Specified by:
clearWarnings in interface Connection
Throws:
SQLException

createStatement

public Statement createStatement(int type,
                                 int concur)
                          throws SQLException
Specified by:
createStatement in interface Connection
Throws:
SQLException

createStatement

protected Statement createStatement(int type,
                                    int concur,
                                    boolean wrap)
                             throws SQLException
Create a statement, with the option of not wrapping it in a DelegatingStatement, which is the default.

Throws:
SQLException

prepareStatement

public PreparedStatement prepareStatement(String str,
                                          int type,
                                          int concur)
                                   throws SQLException
Specified by:
prepareStatement in interface Connection
Throws:
SQLException

prepareStatement

protected PreparedStatement prepareStatement(String str,
                                             int type,
                                             int concur,
                                             boolean wrap)
                                      throws SQLException
Prepare a statement, with the option of not wrapping it in a DelegatingPreparedStatement, which is the default.

Throws:
SQLException

prepareCall

public CallableStatement prepareCall(String str,
                                     int type,
                                     int concur)
                              throws SQLException
Specified by:
prepareCall in interface Connection
Throws:
SQLException

prepareCall

protected CallableStatement prepareCall(String str,
                                        int type,
                                        int concur,
                                        boolean wrap)
                                 throws SQLException
Prepare a call, with the option of not wrapping it in a DelegatingCallableStatement, which is the default.

Throws:
SQLException

getTypeMap

public Map<String,Class<?>> getTypeMap()
                                throws SQLException
Specified by:
getTypeMap in interface Connection
Throws:
SQLException

setTypeMap

public void setTypeMap(Map<String,Class<?>> map)
                throws SQLException
Specified by:
setTypeMap in interface Connection
Throws:
SQLException

setHoldability

public void setHoldability(int holdability)
                    throws SQLException
Specified by:
setHoldability in interface Connection
Throws:
SQLException

getHoldability

public int getHoldability()
                   throws SQLException
Specified by:
getHoldability in interface Connection
Throws:
SQLException

setSavepoint

public Savepoint setSavepoint()
                       throws SQLException
Specified by:
setSavepoint in interface Connection
Throws:
SQLException

setSavepoint

public Savepoint setSavepoint(String savepoint)
                       throws SQLException
Specified by:
setSavepoint in interface Connection
Throws:
SQLException

rollback

public void rollback(Savepoint savepoint)
              throws SQLException
Specified by:
rollback in interface Connection
Throws:
SQLException

releaseSavepoint

public void releaseSavepoint(Savepoint savepoint)
                      throws SQLException
Specified by:
releaseSavepoint in interface Connection
Throws:
SQLException

createStatement

public Statement createStatement(int resultSetType,
                                 int resultSetConcurrency,
                                 int resultSetHoldability)
                          throws SQLException
Specified by:
createStatement in interface Connection
Throws:
SQLException

createStatement

protected Statement createStatement(int resultSetType,
                                    int resultSetConcurrency,
                                    int resultSetHoldability,
                                    boolean wrap)
                             throws SQLException
Throws:
SQLException

prepareStatement

public PreparedStatement prepareStatement(String sql,
                                          int resultSetType,
                                          int resultSetConcurrency,
                                          int resultSetHoldability)
                                   throws SQLException
Specified by:
prepareStatement in interface Connection
Throws:
SQLException

prepareStatement

protected PreparedStatement prepareStatement(String sql,
                                             int resultSetType,
                                             int resultSetConcurrency,
                                             int resultSetHoldability,
                                             boolean wrap)
                                      throws SQLException
Throws:
SQLException

prepareCall

public CallableStatement prepareCall(String sql,
                                     int resultSetType,
                                     int resultSetConcurrency,
                                     int resultSetHoldability)
                              throws SQLException
Specified by:
prepareCall in interface Connection
Throws:
SQLException

prepareCall

protected CallableStatement prepareCall(String sql,
                                        int resultSetType,
                                        int resultSetConcurrency,
                                        int resultSetHoldability,
                                        boolean wrap)
                                 throws SQLException
Throws:
SQLException

prepareStatement

public PreparedStatement prepareStatement(String sql,
                                          int autoGeneratedKeys)
                                   throws SQLException
Specified by:
prepareStatement in interface Connection
Throws:
SQLException

prepareStatement

protected PreparedStatement prepareStatement(String sql,
                                             int autoGeneratedKeys,
                                             boolean wrap)
                                      throws SQLException
Throws:
SQLException

prepareStatement

public PreparedStatement prepareStatement(String sql,
                                          int[] columnIndexes)
                                   throws SQLException
Specified by:
prepareStatement in interface Connection
Throws:
SQLException

prepareStatement

protected PreparedStatement prepareStatement(String sql,
                                             int[] columnIndexes,
                                             boolean wrap)
                                      throws SQLException
Throws:
SQLException

prepareStatement

public PreparedStatement prepareStatement(String sql,
                                          String[] columnNames)
                                   throws SQLException
Specified by:
prepareStatement in interface Connection
Throws:
SQLException

prepareStatement

protected PreparedStatement prepareStatement(String sql,
                                             String[] columnNames,
                                             boolean wrap)
                                      throws SQLException
Throws:
SQLException

isWrapperFor

public boolean isWrapperFor(Class iface)
Specified by:
isWrapperFor in interface Wrapper

unwrap

public Object unwrap(Class iface)
Specified by:
unwrap in interface Wrapper

createArrayOf

public Array createArrayOf(String typeName,
                           Object[] elements)
                    throws SQLException
Specified by:
createArrayOf in interface Connection
Throws:
SQLException

createBlob

public Blob createBlob()
                throws SQLException
Specified by:
createBlob in interface Connection
Throws:
SQLException

createClob

public Clob createClob()
                throws SQLException
Specified by:
createClob in interface Connection
Throws:
SQLException

createNClob

public NClob createNClob()
                  throws SQLException
Specified by:
createNClob in interface Connection
Throws:
SQLException

createSQLXML

public SQLXML createSQLXML()
                    throws SQLException
Specified by:
createSQLXML in interface Connection
Throws:
SQLException

createStruct

public Struct createStruct(String typeName,
                           Object[] attributes)
                    throws SQLException
Specified by:
createStruct in interface Connection
Throws:
SQLException

getClientInfo

public Properties getClientInfo()
                         throws SQLException
Specified by:
getClientInfo in interface Connection
Throws:
SQLException

getClientInfo

public String getClientInfo(String name)
                     throws SQLException
Specified by:
getClientInfo in interface Connection
Throws:
SQLException

isValid

public boolean isValid(int timeout)
                throws SQLException
Specified by:
isValid in interface Connection
Throws:
SQLException

setClientInfo

public void setClientInfo(Properties properties)
                   throws SQLClientInfoException
Specified by:
setClientInfo in interface Connection
Throws:
SQLClientInfoException

setClientInfo

public void setClientInfo(String name,
                          String value)
                   throws SQLClientInfoException
Specified by:
setClientInfo in interface Connection
Throws:
SQLClientInfoException


Copyright © 2006-2011 Apache Software Foundation. All Rights Reserved.