Author: cbegin
Date: Wed Apr 21 02:46:22 2010
New Revision: 936142

URL: http://svn.apache.org/viewvc?rev=936142&view=rev
Log:
closed connection in managed transaction

Modified:
    
ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/transaction/managed/ManagedTransaction.java
    
ibatis/java/ibatis-3/trunk/src/test/java/org/apache/ibatis/transaction/managed/ManagedTransactionFactoryTest.java

Modified: 
ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/transaction/managed/ManagedTransaction.java
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/transaction/managed/ManagedTransaction.java?rev=936142&r1=936141&r2=936142&view=diff
==============================================================================
--- 
ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/transaction/managed/ManagedTransaction.java
 (original)
+++ 
ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/transaction/managed/ManagedTransaction.java
 Wed Apr 21 02:46:22 2010
@@ -1,5 +1,7 @@
 package org.apache.ibatis.transaction.managed;
 
+import org.apache.ibatis.logging.Log;
+import org.apache.ibatis.logging.LogFactory;
 import org.apache.ibatis.transaction.Transaction;
 
 import java.sql.Connection;
@@ -7,6 +9,8 @@ import java.sql.SQLException;
 
 public class ManagedTransaction implements Transaction {
 
+  private Log log = LogFactory.getLog(ManagedTransaction.class);
+
   private Connection connection;
 
   public ManagedTransaction(Connection connection) {
@@ -26,7 +30,12 @@ public class ManagedTransaction implemen
   }
 
   public void close() throws SQLException {
-    // Does nothing
+    try {
+      if (connection != null) connection.close();
+    } catch (SQLException e) {
+      // Log and ignore.  Nothing more that should be done here.
+      log.error(e.getMessage(), e);
+    }
   }
 
 }

Modified: 
ibatis/java/ibatis-3/trunk/src/test/java/org/apache/ibatis/transaction/managed/ManagedTransactionFactoryTest.java
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibatis-3/trunk/src/test/java/org/apache/ibatis/transaction/managed/ManagedTransactionFactoryTest.java?rev=936142&r1=936141&r2=936142&view=diff
==============================================================================
--- 
ibatis/java/ibatis-3/trunk/src/test/java/org/apache/ibatis/transaction/managed/ManagedTransactionFactoryTest.java
 (original)
+++ 
ibatis/java/ibatis-3/trunk/src/test/java/org/apache/ibatis/transaction/managed/ManagedTransactionFactoryTest.java
 Wed Apr 21 02:46:22 2010
@@ -3,6 +3,7 @@ package org.apache.ibatis.transaction.ma
 import org.apache.ibatis.BaseDataTest;
 import org.apache.ibatis.transaction.Transaction;
 import org.apache.ibatis.transaction.TransactionFactory;
+import org.jmock.Expectations;
 import org.jmock.Mockery;
 import org.jmock.lib.legacy.ClassImposteriser;
 import static org.junit.Assert.assertEquals;
@@ -23,6 +24,12 @@ public class ManagedTransactionFactoryTe
 
   @Test
   public void 
shouldEnsureThatCallsToManagedTransactionAPIDoNotForwardToManagedConnections() 
throws Exception {
+    mockery.checking(new Expectations() {
+      {
+        one(conn).close();
+      }
+    });
+
     TransactionFactory tf = new ManagedTransactionFactory();
     tf.setProperties(new Properties());
     Transaction tx = tf.newTransaction(conn, false);


Reply via email to