bloritsch 01/03/14 08:30:17
Modified: src/java/org/apache/avalon/util/datasource
JdbcConnectionPool.java
Log:
Added error handling code so that the Pool does not enter nulls into the
pool. All entries are valid connections.
Revision Changes Path
1.5 +29 -24
jakarta-avalon/src/java/org/apache/avalon/util/datasource/JdbcConnectionPool.java
Index: JdbcConnectionPool.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon/src/java/org/apache/avalon/util/datasource/JdbcConnectionPool.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- JdbcConnectionPool.java 2001/03/09 16:05:53 1.4
+++ JdbcConnectionPool.java 2001/03/14 16:30:15 1.5
@@ -25,7 +25,7 @@
* thread to manage the number of SQL Connections.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Berin Loritsch</a>
- * @version CVS $Revision: 1.4 $ $Date: 2001/03/09 16:05:53 $
+ * @version CVS $Revision: 1.5 $ $Date: 2001/03/14 16:30:15 $
*/
public class JdbcConnectionPool
extends AbstractLoggable
@@ -83,41 +83,38 @@
{
for( int i = 0; i < m_min; i++ )
{
- m_ready.add( createJdbcConnection() );
+ try {
+ m_ready.add( createJdbcConnection() );
+ } catch (SQLException se) {
+ getLogger().error( "Could not create connection to database", se );
+ }
}
new Thread( this ).start();
}
private JdbcConnection createJdbcConnection()
+ throws SQLException
{
JdbcConnection connection = null;
- try
+ if( null == m_username )
{
- if( null == m_username )
- {
- connection = new JdbcConnection( DriverManager.getConnection(
m_dburl ), this );
- connection.setLogger(getLogger());
- }
- else
- {
- connection =
- new JdbcConnection( DriverManager.getConnection( m_dburl,
- m_username,
- m_password ),
- this);
- connection.setLogger(getLogger());
- }
-
- m_currentCount++;
+ connection = new JdbcConnection( DriverManager.getConnection( m_dburl
), this );
+ connection.setLogger(getLogger());
}
-
- catch( final SQLException se )
+ else
{
- getLogger().error( "Could not create connection to database", se );
+ connection =
+ new JdbcConnection( DriverManager.getConnection( m_dburl,
+ m_username,
+ m_password ),
+ this);
+ connection.setLogger(getLogger());
}
+ m_currentCount++;
+
getLogger().debug( "JdbcConnection object created" );
return connection;
}
@@ -240,8 +237,16 @@
while( ( m_ready.size() < m_min ) && ( m_currentCount < m_max )
)
{
- m_ready.add( createJdbcConnection() );
- notify();
+ try
+ {
+ m_ready.add( createJdbcConnection() );
+ notify();
+ }
+
+ catch (SQLException se)
+ {
+ getLogger().error( "Could not create connection to
database", se );
+ }
}
}
else
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]