Interface TransactionFactory
- All Known Implementing Classes:
JtaTransactionManager
,SimpleTransactionFactory
,WebLogicJtaTransactionManager
,WebSphereUowTransactionManager
public interface TransactionFactory
Strategy interface for creating JTATransaction
objects based on specified transactional characteristics.The default implementation,
SimpleTransactionFactory
, simply wraps a standard JTATransactionManager
. This strategy interface allows for more sophisticated implementations that adapt to vendor-specific JTA extensions.- Since:
- 2.5
- Author:
- Juergen Hoeller
- See Also:
TransactionManager.getTransaction()
,SimpleTransactionFactory
,JtaTransactionManager
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Transaction
createTransaction(String name, int timeout)
Create an active Transaction object based on the given name and timeout.boolean
supportsResourceAdapterManagedTransactions()
Determine whether the underlying transaction manager supports XA transactions managed by a resource adapter (i.e.
Method Detail
createTransaction
Transaction createTransaction(@Nullable String name, int timeout) throws NotSupportedException, SystemException
Create an active Transaction object based on the given name and timeout.- Parameters:
name
- the transaction name (may benull
)timeout
- the transaction timeout (may be -1 for the default timeout)- Returns:
- the active Transaction object (never
null
) - Throws:
NotSupportedException
- if the transaction manager does not support a transaction of the specified typeSystemException
- if the transaction manager failed to create the transaction
supportsResourceAdapterManagedTransactions
boolean supportsResourceAdapterManagedTransactions()
Determine whether the underlying transaction manager supports XA transactions managed by a resource adapter (i.e. without explicit XA resource enlistment).Typically
false
. Checked byAbstractMessageEndpointFactory
in order to differentiate between invalid configuration and valid ResourceAdapter-managed transactions.