Author: dain
Date: Mon Jul 23 12:53:27 2007
New Revision: 558846

URL: http://svn.apache.org/viewvc?view=rev&rev=558846
Log:
DBCP-225 throw an IllegalStateException if connection factory returns a null 
connection.  This avoids creating DelegatingConnections with a null delegate.

Modified:
    
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/PoolableConnectionFactory.java
    
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/CPDSConnectionFactory.java
    
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/KeyedCPDSConnectionFactory.java

Modified: 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/PoolableConnectionFactory.java
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/PoolableConnectionFactory.java?view=diff&rev=558846&r1=558845&r2=558846
==============================================================================
--- 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/PoolableConnectionFactory.java
 (original)
+++ 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/PoolableConnectionFactory.java
 Mon Jul 23 12:53:27 2007
@@ -292,6 +292,9 @@
 
     synchronized public Object makeObject() throws Exception {
         Connection conn = _connFactory.createConnection();
+        if (conn == null) {
+            throw new IllegalStateException("Connection factory returned null 
from createConnection");
+        }
         if(null != _stmtPoolFactory) {
             KeyedObjectPool stmtpool = _stmtPoolFactory.createPool();
             conn = new PoolingConnection(conn,stmtpool);

Modified: 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/CPDSConnectionFactory.java
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/CPDSConnectionFactory.java?view=diff&rev=558846&r1=558845&r2=558846
==============================================================================
--- 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/CPDSConnectionFactory.java
 (original)
+++ 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/CPDSConnectionFactory.java
 Mon Jul 23 12:53:27 2007
@@ -175,6 +175,11 @@
             } else {
                 pc = _cpds.getPooledConnection(_username, _password);
             }
+
+            if (pc == null) {
+                throw new IllegalStateException("Connection pool data source 
returned null from getPooledConnection");
+            }
+
             // should we add this object as a listener or the pool.
             // consider the validateObject method in decision
             pc.addConnectionEventListener(this);

Modified: 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/KeyedCPDSConnectionFactory.java
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/KeyedCPDSConnectionFactory.java?view=diff&rev=558846&r1=558845&r2=558846
==============================================================================
--- 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/KeyedCPDSConnectionFactory.java
 (original)
+++ 
jakarta/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/datasources/KeyedCPDSConnectionFactory.java
 Mon Jul 23 12:53:27 2007
@@ -159,6 +159,11 @@
         } else {
             pc = _cpds.getPooledConnection(username, password);
         }
+
+        if (pc == null) {
+            throw new IllegalStateException("Connection pool data source 
returned null from getPooledConnection");
+        }
+
         // should we add this object as a listener or the pool.
         // consider the validateObject method in decision
         pc.addConnectionEventListener(this);



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to