[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