Hi Lin,
A few questions:
- Why modify branches/2.1.1? I'm not sure, but it looks like this is an
old branch that was subsequently copied to tags/2.1.1 (rather than moved
to tags).
- Where is the new testTransactionKey() method used that was added here
and in trunk?
- Is this something that we need to consider including with Geronimo 2.2?
Joe
[EMAIL PROTECTED] wrote:
Author: linsun
Date: Tue Dec 2 18:51:11 2008
New Revision: 722725
URL: http://svn.apache.org/viewvc?rev=722725&view=rev
Log:
GERONIMO-4438 - TransactionSynchronizationRegistry.getTransactionKey should
return null when transaction is not associated with the current thread
Modified:
geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImpl.java
geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java
Modified:
geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImpl.java
URL:
http://svn.apache.org/viewvc/geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImpl.java?rev=722725&r1=722724&r2=722725&view=diff
==============================================================================
---
geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImpl.java
(original)
+++
geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.1/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImpl.java
Tue Dec 2 18:51:11 2008
@@ -205,8 +205,8 @@
}
public Object getTransactionKey() {
- TransactionImpl tx = getActiveTransactionImpl();
- return tx.getTransactionKey();
+ TransactionImpl tx = (TransactionImpl) getTransaction();
+ return tx == null ? null: tx.getTransactionKey();
}
public int getTransactionStatus() {
Modified:
geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.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.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java?rev=722725&r1=722724&r2=722725&view=diff
==============================================================================
---
geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java
(original)
+++
geronimo/components/txmanager/branches/geronimo-txmanager-parent-2.1.1/geronimo-transaction/src/test/java/org/apache/geronimo/transaction/manager/TransactionSynchronizationRegistryTest.java
Tue Dec 2 18:51:11 2008
@@ -57,6 +57,15 @@
tm.getTransaction().registerSynchronization(normalSync);
}
+ public void testTransactionKey() throws Exception {
+ normalSync = new CountingSync();
+ assertNull(tm.getTransactionKey());
+ setUpInterposedSync();
+ tm.getTransaction().registerSynchronization(normalSync);
+ assertNotNull(tm.getTransactionKey());
+ tm.commit();
+ assertNull(tm.getTransactionKey());
+ }
public void testInterposedSynchIsCalledOnCommit() throws Exception {
setUpInterposedSync();