com.protomatter.jdbc.pool
Class  JdbcConnectionPoolConnection
java.lang.Object
  |
  +--com.protomatter.jdbc.pool.JdbcConnectionPoolConnection
- All Implemented Interfaces: 
 - java.sql.Connection, ObjectPoolObject, SyslogChannelAware
 
- public class JdbcConnectionPoolConnection
- extends java.lang.Object
- implements ObjectPoolObject, java.sql.Connection, SyslogChannelAware
   
A java.sql.Connection that's part of a pool of conections.  When this
  connection is closed, it is checked back into the pool, and it's options
  like transaction isolation level, auto-commit, type map, etc are all reset to
  defaults.
- See Also: 
 Connection, 
JdbcConnectionPoolDriver, 
JdbcConnectionPool
 
| Fields inherited from interface java.sql.Connection | 
TRANSACTION_NONE, TRANSACTION_READ_COMMITTED, TRANSACTION_READ_UNCOMMITTED, TRANSACTION_REPEATABLE_READ, TRANSACTION_SERIALIZABLE | 
 
 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
pool
protected JdbcConnectionPool pool
connection
protected java.sql.Connection connection
getSyslogChannel
public java.lang.Object getSyslogChannel()
- Returns the channel information from the pool
  this connection is associated with.
- Specified by: 
 getSyslogChannel in interface SyslogChannelAware
 
 
deleteObjectPoolObject
public void deleteObjectPoolObject()
- Used by the connection pool.
- Specified by: 
 deleteObjectPoolObject in interface ObjectPoolObject
 
 
refresh
public void refresh(boolean verbose)
             throws java.sql.SQLException
- Will check that this connection is working and refresh it if not.
  This executes the validity check statement that was set when
  the connection pool was created.  If that statement was not set,
  the connection is refreshed no matter what.  If the statement was
  set, it is executed and if an exception is generated, the connection
  is refreshed.  If there's a problem refreshing the connection, this
  connection wrapper is invalidated -- you will have to either keep
  calling refresh() until it doesn't throw a SQLException, or call
  close() and open another connection using the JdbcConnectionPoolDriver.
  If verbose is true, messages are written to Syslog
  during the refresh operation.
 
- Throws:
 java.sql.SQLException - If the connection needs refreshing and there is
                          a problem re-opening the connection.
 
 
refresh
public void refresh()
             throws java.sql.SQLException
- Performs a non-verbose refresh.
 
- See Also: 
 refresh(boolean)
 
 
isObjectPoolObjectValid
public boolean isObjectPoolObjectValid()
- Used by the connection pool.
- Specified by: 
 isObjectPoolObjectValid in interface ObjectPoolObject
 
 
beforeObjectPoolObjectCheckout
public void beforeObjectPoolObjectCheckout()
- Used by the connection pool.
- Specified by: 
 beforeObjectPoolObjectCheckout in interface ObjectPoolObject
 
 
afterObjectPoolObjectCheckin
public void afterObjectPoolObjectCheckin()
- Used by the connection pool.
- Specified by: 
 afterObjectPoolObjectCheckin in interface ObjectPoolObject
 
 
createStatement
public java.sql.Statement createStatement()
                                   throws java.sql.SQLException
- Specified by: 
 createStatement in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
prepareStatement
public java.sql.PreparedStatement prepareStatement(java.lang.String sql)
                                            throws java.sql.SQLException
- Specified by: 
 prepareStatement in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
prepareCall
public java.sql.CallableStatement prepareCall(java.lang.String sql)
                                       throws java.sql.SQLException
- Specified by: 
 prepareCall in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
nativeSQL
public java.lang.String nativeSQL(java.lang.String sql)
                           throws java.sql.SQLException
- Specified by: 
 nativeSQL in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
setAutoCommit
public void setAutoCommit(boolean autoCommit)
                   throws java.sql.SQLException
- Specified by: 
 setAutoCommit in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
getAutoCommit
public boolean getAutoCommit()
                      throws java.sql.SQLException
- Specified by: 
 getAutoCommit in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
commit
public void commit()
            throws java.sql.SQLException
- Specified by: 
 commit in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
rollback
public void rollback()
              throws java.sql.SQLException
- Specified by: 
 rollback in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
close
public void close()
           throws java.sql.SQLException
- Specified by: 
 close in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
isClosed
public boolean isClosed()
                 throws java.sql.SQLException
- Specified by: 
 isClosed in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
getMetaData
public java.sql.DatabaseMetaData getMetaData()
                                      throws java.sql.SQLException
- Specified by: 
 getMetaData in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
setReadOnly
public void setReadOnly(boolean readOnly)
                 throws java.sql.SQLException
- Specified by: 
 setReadOnly in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
isReadOnly
public boolean isReadOnly()
                   throws java.sql.SQLException
- Specified by: 
 isReadOnly in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
setCatalog
public void setCatalog(java.lang.String catalog)
                throws java.sql.SQLException
- Specified by: 
 setCatalog in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
getCatalog
public java.lang.String getCatalog()
                            throws java.sql.SQLException
- Specified by: 
 getCatalog in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
setTransactionIsolation
public void setTransactionIsolation(int level)
                             throws java.sql.SQLException
- Specified by: 
 setTransactionIsolation in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
getTransactionIsolation
public int getTransactionIsolation()
                            throws java.sql.SQLException
- Specified by: 
 getTransactionIsolation in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
getWarnings
public java.sql.SQLWarning getWarnings()
                                throws java.sql.SQLException
- Specified by: 
 getWarnings in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
clearWarnings
public void clearWarnings()
                   throws java.sql.SQLException
- Specified by: 
 clearWarnings in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
createStatement
public java.sql.Statement createStatement(int resultSetType,
                                          int resultSetConcurrency)
                                   throws java.sql.SQLException
- Specified by: 
 createStatement in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
getTypeMap
public java.util.Map getTypeMap()
                         throws java.sql.SQLException
- Specified by: 
 getTypeMap in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
prepareCall
public java.sql.CallableStatement prepareCall(java.lang.String sql,
                                              int resultSetType,
                                              int resultSetConcurrency)
                                       throws java.sql.SQLException
- Specified by: 
 prepareCall in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
prepareStatement
public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int resultSetType,
                                                   int resultSetConcurrency)
                                            throws java.sql.SQLException
- Specified by: 
 prepareStatement in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection
 
setTypeMap
public void setTypeMap(java.util.Map typeMap)
                throws java.sql.SQLException
- Specified by: 
 setTypeMap in interface java.sql.Connection
 
- Throws:
 java.sql.SQLException - Because the underlying connection can throw one.- See Also: 
 Connection