[hibernate-commits] Hibernate SVN: r12932 - core/trunk/core/src/main/java/org/hibernate/transaction.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Tue Aug 14 09:49:08 EDT 2007
Author: d.plentz
Date: 2007-08-14 09:49:08 -0400 (Tue, 14 Aug 2007)
New Revision: 12932
Added:
core/trunk/core/src/main/java/org/hibernate/transaction/BTMTransactionManagerLookup.java
Log:
[HHH-2778] TransactionManagerLookup implementation for Bitronix Transaction Manager
Added: core/trunk/core/src/main/java/org/hibernate/transaction/BTMTransactionManagerLookup.java
===================================================================
--- core/trunk/core/src/main/java/org/hibernate/transaction/BTMTransactionManagerLookup.java (rev 0)
+++ core/trunk/core/src/main/java/org/hibernate/transaction/BTMTransactionManagerLookup.java 2007-08-14 13:49:08 UTC (rev 12932)
@@ -0,0 +1,34 @@
+package org.hibernate.transaction;
+
+import java.util.Properties;
+
+import javax.transaction.TransactionManager;
+
+import org.hibernate.HibernateException;
+
+/**
+ * TransactionManager lookup strategy for BTM
+ * @author Ludovic Orban
+ */
+public class BTMTransactionManagerLookup implements TransactionManagerLookup {
+
+ /**
+ * @see org.hibernate.transaction.TransactionManagerLookup#getTransactionManager(Properties)
+ */
+ public TransactionManager getTransactionManager(Properties props) throws HibernateException {
+ try {
+ Class clazz = Class.forName("bitronix.tm.TransactionManagerServices");
+ return (TransactionManager) clazz.getMethod("getTransactionManager", null).invoke(null, null);
+ }
+ catch (Exception e) {
+ throw new HibernateException( "Could not obtain BTM transaction manager instance", e );
+ }
+ }
+
+ /**
+ * @see org.hibernate.transaction.TransactionManagerLookup#getUserTransactionName()
+ */
+ public String getUserTransactionName() {
+ return "java:comp/UserTransaction";
+ }
+}
\ No newline at end of file
Property changes on: core/trunk/core/src/main/java/org/hibernate/transaction/BTMTransactionManagerLookup.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
More information about the hibernate-commits
mailing list