org.hibernate.transaction
Class JTATransactionFactory

java.lang.Object
  extended by org.hibernate.transaction.JTATransactionFactory
All Implemented Interfaces:
TransactionFactory

public class JTATransactionFactory
extends Object
implements TransactionFactory

Factory for JTATransaction.

Author:
Gavin King
See Also:
JTATransaction

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.hibernate.transaction.TransactionFactory
TransactionFactory.Context
 
Field Summary
protected  InitialContext context
           
protected  String utName
           
 
Constructor Summary
JTATransactionFactory()
           
 
Method Summary
 boolean areCallbacksLocalToHibernateTransactions()
          Are all transaction callbacks local to Hibernate Transactions? Or can the callbacks originate from some other source (e.g.
 void configure(Properties props)
          Configure from the given properties.
 Transaction createTransaction(JDBCContext jdbcContext, TransactionFactory.Context transactionContext)
          Begin a transaction and return the associated Transaction instance.
 ConnectionReleaseMode getDefaultReleaseMode()
          Get the default connection release mode
 boolean isTransactionInProgress(JDBCContext jdbcContext, TransactionFactory.Context transactionContext, Transaction transaction)
          Determine whether an underlying transaction is in progress.
 boolean isTransactionManagerRequired()
          Do we require access to the JTA TransactionManager for this strategy?
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

context

protected InitialContext context

utName

protected String utName
Constructor Detail

JTATransactionFactory

public JTATransactionFactory()
Method Detail

configure

public void configure(Properties props)
               throws HibernateException
Description copied from interface: TransactionFactory
Configure from the given properties.

Specified by:
configure in interface TransactionFactory
Throws:
HibernateException

createTransaction

public Transaction createTransaction(JDBCContext jdbcContext,
                                     TransactionFactory.Context transactionContext)
                              throws HibernateException
Description copied from interface: TransactionFactory
Begin a transaction and return the associated Transaction instance.

Specified by:
createTransaction in interface TransactionFactory
Parameters:
jdbcContext - The jdbc context to which the transaction belongs
transactionContext - The contract regarding the context in which this transaction will operate.
Returns:
Transaction
Throws:
HibernateException

getDefaultReleaseMode

public ConnectionReleaseMode getDefaultReleaseMode()
Description copied from interface: TransactionFactory
Get the default connection release mode

Specified by:
getDefaultReleaseMode in interface TransactionFactory

isTransactionManagerRequired

public boolean isTransactionManagerRequired()
Description copied from interface: TransactionFactory
Do we require access to the JTA TransactionManager for this strategy?

Specified by:
isTransactionManagerRequired in interface TransactionFactory

areCallbacksLocalToHibernateTransactions

public boolean areCallbacksLocalToHibernateTransactions()
Description copied from interface: TransactionFactory
Are all transaction callbacks local to Hibernate Transactions? Or can the callbacks originate from some other source (e.g. a JTA Synchronization).

Specified by:
areCallbacksLocalToHibernateTransactions in interface TransactionFactory
Returns:
true if callbacks only ever originate from the Hibernate Transaction; false otherwise.

isTransactionInProgress

public boolean isTransactionInProgress(JDBCContext jdbcContext,
                                       TransactionFactory.Context transactionContext,
                                       Transaction transaction)
Description copied from interface: TransactionFactory
Determine whether an underlying transaction is in progress.

Mainly this is used in determining whether to register a synchronization as well as whether or not to circumvent auto flushing outside transactions.

Specified by:
isTransactionInProgress in interface TransactionFactory
Returns:
true if an underlying transaction is know to be in effect.