org.apache.commons.dbcp
Class PoolableConnectionFactory

java.lang.Object
  |
  +--org.apache.commons.dbcp.PoolableConnectionFactory
All Implemented Interfaces:
org.apache.commons.pool.PoolableObjectFactory

public class PoolableConnectionFactory
extends java.lang.Object
implements org.apache.commons.pool.PoolableObjectFactory

A PoolableObjectFactory that creates PoolableConnections.

Version:
$Id: PoolableConnectionFactory.java,v 1.4 2002/06/29 16:46:02 glenn Exp $
Author:
Rodney Waldhoff
, Glenn L. Nielsen , James House (james@interobjective.com)

Field Summary
protected  AbandonedConfig _config
           
protected  ConnectionFactory _connFactory
           
protected  boolean _defaultAutoCommit
           
protected  boolean _defaultReadOnly
           
protected  org.apache.commons.pool.ObjectPool _pool
           
protected  org.apache.commons.pool.KeyedObjectPoolFactory _stmtPoolFactory
           
protected  java.lang.String _validationQuery
           
 
Constructor Summary
PoolableConnectionFactory(ConnectionFactory connFactory, org.apache.commons.pool.ObjectPool pool, org.apache.commons.pool.KeyedObjectPoolFactory stmtPoolFactory, java.lang.String validationQuery, boolean defaultReadOnly, boolean defaultAutoCommit)
          Create a new PoolableConnectionFactory.
PoolableConnectionFactory(ConnectionFactory connFactory, org.apache.commons.pool.ObjectPool pool, org.apache.commons.pool.KeyedObjectPoolFactory stmtPoolFactory, java.lang.String validationQuery, boolean defaultReadOnly, boolean defaultAutoCommit, AbandonedConfig config)
          Create a new PoolableConnectionFactory.
 
Method Summary
 void activateObject(java.lang.Object obj)
           
 void destroyObject(java.lang.Object obj)
           
 org.apache.commons.pool.ObjectPool getPool()
           
 java.lang.Object makeObject()
           
 void passivateObject(java.lang.Object obj)
           
 void setConnectionFactory(ConnectionFactory connFactory)
          Sets the ConnectionFactory from which to obtain base Connections.
 void setDefaultAutoCommit(boolean defaultAutoCommit)
          Sets the default "auto commit" setting for borrowed Connections
 void setDefaultReadOnly(boolean defaultReadOnly)
          Sets the default "read only" setting for borrowed Connections
 void setPool(org.apache.commons.pool.ObjectPool pool)
          Sets the ObjectPool in which to pool Connections.
 void setStatementPoolFactory(org.apache.commons.pool.KeyedObjectPoolFactory stmtPoolFactory)
          Sets the KeyedObjectPoolFactory I use to create KeyedObjectPools for pooling PreparedStatements.
 void setValidationQuery(java.lang.String validationQuery)
          Sets the query I use to validate Connections.
 boolean validateObject(java.lang.Object obj)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_config

protected AbandonedConfig _config

_connFactory

protected ConnectionFactory _connFactory

_defaultAutoCommit

protected boolean _defaultAutoCommit

_defaultReadOnly

protected boolean _defaultReadOnly

_pool

protected org.apache.commons.pool.ObjectPool _pool

_stmtPoolFactory

protected org.apache.commons.pool.KeyedObjectPoolFactory _stmtPoolFactory

_validationQuery

protected java.lang.String _validationQuery
Constructor Detail

PoolableConnectionFactory

public PoolableConnectionFactory(ConnectionFactory connFactory,
                                 org.apache.commons.pool.ObjectPool pool,
                                 org.apache.commons.pool.KeyedObjectPoolFactory stmtPoolFactory,
                                 java.lang.String validationQuery,
                                 boolean defaultReadOnly,
                                 boolean defaultAutoCommit)
                          throws java.lang.Exception
Create a new PoolableConnectionFactory.

Parameters:
connFactory - the ConnectionFactory from which to obtain base Connections
pool - the ObjectPool in which to pool those Connections
stmtPoolFactory - the KeyedObjectPoolFactory to use to create KeyedObjectPools for pooling PreparedStatements, or null to disable PreparedStatement pooling
validationQuery - a query to use to validate Connections. Should return at least one row. May be null
defaultReadOnly - the default "read only" setting for borrowed Connections
defaultAutoCommit - the default "auto commit" setting for returned Connections

PoolableConnectionFactory

public PoolableConnectionFactory(ConnectionFactory connFactory,
                                 org.apache.commons.pool.ObjectPool pool,
                                 org.apache.commons.pool.KeyedObjectPoolFactory stmtPoolFactory,
                                 java.lang.String validationQuery,
                                 boolean defaultReadOnly,
                                 boolean defaultAutoCommit,
                                 AbandonedConfig config)
Create a new PoolableConnectionFactory.

Parameters:
connFactory - the ConnectionFactory from which to obtain base Connections
pool - the ObjectPool in which to pool those Connections
stmtPoolFactory - the KeyedObjectPoolFactory to use to create KeyedObjectPools for pooling PreparedStatements, or null to disable PreparedStatement pooling
validationQuery - a query to use to validate Connections. Should return at least one row. May be null
defaultReadOnly - the default "read only" setting for borrowed Connections
defaultAutoCommit - the default "auto commit" setting for returned Connections
config - the AbandonedConfig if tracing SQL objects
Method Detail

activateObject

public void activateObject(java.lang.Object obj)
                    throws java.lang.Exception
Specified by:
activateObject in interface org.apache.commons.pool.PoolableObjectFactory
java.lang.Exception

destroyObject

public void destroyObject(java.lang.Object obj)
                   throws java.lang.Exception
Specified by:
destroyObject in interface org.apache.commons.pool.PoolableObjectFactory
java.lang.Exception

getPool

public org.apache.commons.pool.ObjectPool getPool()

makeObject

public java.lang.Object makeObject()
                            throws java.lang.Exception
Specified by:
makeObject in interface org.apache.commons.pool.PoolableObjectFactory
java.lang.Exception

passivateObject

public void passivateObject(java.lang.Object obj)
                     throws java.lang.Exception
Specified by:
passivateObject in interface org.apache.commons.pool.PoolableObjectFactory
java.lang.Exception

setConnectionFactory

public void setConnectionFactory(ConnectionFactory connFactory)
Sets the ConnectionFactory from which to obtain base Connections.

Parameters:
connFactory - the ConnectionFactory from which to obtain base Connections

setDefaultAutoCommit

public void setDefaultAutoCommit(boolean defaultAutoCommit)
Sets the default "auto commit" setting for borrowed Connections

Parameters:
defaultAutoCommit - the default "auto commit" setting for borrowed Connections

setDefaultReadOnly

public void setDefaultReadOnly(boolean defaultReadOnly)
Sets the default "read only" setting for borrowed Connections

Parameters:
defaultReadOnly - the default "read only" setting for borrowed Connections

setPool

public void setPool(org.apache.commons.pool.ObjectPool pool)
Sets the ObjectPool in which to pool Connections.

Parameters:
pool - the ObjectPool in which to pool those Connections

setStatementPoolFactory

public void setStatementPoolFactory(org.apache.commons.pool.KeyedObjectPoolFactory stmtPoolFactory)
Sets the KeyedObjectPoolFactory I use to create KeyedObjectPools for pooling PreparedStatements. Set to null to disable PreparedStatement pooling.

Parameters:
stmtPoolFactory - the KeyedObjectPoolFactory to use to create KeyedObjectPools for pooling PreparedStatements

setValidationQuery

public void setValidationQuery(java.lang.String validationQuery)
Sets the query I use to validate Connections. Should return at least one row. May be null

Parameters:
validationQuery - a query to use to validate Connections.

validateObject

public boolean validateObject(java.lang.Object obj)
Specified by:
validateObject in interface org.apache.commons.pool.PoolableObjectFactory


Copyright © 2001 Apache Software Foundation. Documenation generated August 12 2002.