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
Show replies by date