Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 46820 invoked from network); 10 Dec 2008 18:07:33 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 10 Dec 2008 18:07:33 -0000 Received: (qmail 51900 invoked by uid 500); 10 Dec 2008 18:07:45 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 51858 invoked by uid 500); 10 Dec 2008 18:07:45 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 51849 invoked by uid 99); 10 Dec 2008 18:07:45 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 10 Dec 2008 10:07:45 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 10 Dec 2008 18:07:30 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 3172323888E6; Wed, 10 Dec 2008 10:07:09 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r725362 - in /geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src: main/java/org/apache/geronimo/transaction/manager/ test/java/org/apache/geronimo/transaction/manager/ Date: Wed, 10 Dec 2008 18:07:08 -0000 To: scm@geronimo.apache.org From: linsun@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20081210180709.3172323888E6@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: linsun Date: Wed Dec 10 10:07:08 2008 New Revision: 725362 URL: http://svn.apache.org/viewvc?rev=725362&view=rev Log: Transaction.rollback method also calls beforeCompletion - GERONIMO-4449 Modified: geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TestTransactionManager.java geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java Modified: geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java URL: http://svn.apache.org/viewvc/geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java?rev=725362&r1=725361&r2=725362&view=diff ============================================================================== --- geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java (original) +++ geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java Wed Dec 10 10:07:08 2008 @@ -470,7 +470,6 @@ rms = resourceManagers; } - beforeCompletion(); endResources(); try { rollbackResources(rms); Modified: geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TestTransactionManager.java URL: http://svn.apache.org/viewvc/geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TestTransactionManager.java?rev=725362&r1=725361&r2=725362&view=diff ============================================================================== --- geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TestTransactionManager.java (original) +++ geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TestTransactionManager.java Wed Dec 10 10:07:08 2008 @@ -18,7 +18,6 @@ package org.apache.geronimo.transaction.manager; import javax.transaction.Status; -import javax.transaction.InvalidTransactionException; import javax.transaction.Transaction; import javax.transaction.TransactionManager; import javax.transaction.xa.XAResource; Modified: geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java URL: http://svn.apache.org/viewvc/geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java?rev=725362&r1=725361&r2=725362&view=diff ============================================================================== --- geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java (original) +++ geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java Wed Dec 10 10:07:08 2008 @@ -78,20 +78,25 @@ assertTrue("interposedSync afterCompletion was not called", interposedSync.getAfterCount() != -1); } + private void checkInterposedSyncCalledOnRollback() { + assertTrue("interposedSync afterCompletion was not called", interposedSync.getAfterCount() != -1); + } + public void testInterposedSynchIsCalledOnRollback() throws Exception { setUpInterposedSync(); tm.rollback(); - checkInterposedSyncCalled(); + checkInterposedSyncCalledOnRollback(); } - /*public void testNormalSynchIsNotCalledOnRollback() throws Exception { + // check normal synch before completion is not called on rollback + public void testNormalSynchBeforeCompletion() throws Exception { normalSync = new CountingSync(); tm.begin(); tm.getTransaction().registerSynchronization(normalSync); tm.rollback(); assertFalse(normalSync.beforeCompletionCalled()); assertTrue(normalSync.afterCompletionCalled()); - }*/ + } public void testInterposedSynchIsCalledOnMarkRollback() throws Exception { setUpInterposedSync(); @@ -126,11 +131,16 @@ assertTrue("interposedSync beforeCompletion was not called after normalSync beforeCompletion", interposedSync.getBeforeCount() > normalSync.getBeforeCount()); assertTrue("interposedSync afterCompletion was not called before normalSync beforeCompletion", interposedSync.getAfterCount() < normalSync.getAfterCount()); } + + private void checkSyncCallOrderOnRollback() { + checkInterposedSyncCalledOnRollback(); + assertTrue("interposedSync afterCompletion was not called before normalSync beforeCompletion", interposedSync.getAfterCount() < normalSync.getAfterCount()); + } public void testSynchCallOrderOnRollback() throws Exception { setUpSyncs(); tm.rollback(); - checkSyncCallOrder(); + checkSyncCallOrderOnRollback(); } public void testSynchCallOrderOnMarkRollback() throws Exception { @@ -163,12 +173,12 @@ private boolean afterCalled = false; public void beforeCompletion() { - beforeCalled = true; + beforeCalled = true; beforeCount = beforeCounter++; } public void afterCompletion(int i) { - afterCalled = true; + afterCalled = true; afterCount = afterCounter++; }