public class DefaultUnitilsTransactionManager extends Object implements UnitilsTransactionManager
PlatformTransactionManager. The concrete implementation of
PlatformTransactionManager that is used depends on the test
class. If a custom PlatformTransactionManager was configured
in a spring ApplicationContext, this one is used. If not, a
suitable subclass of PlatformTransactionManager is created,
depending on the configuration of a test. E.g. if some ORM persistence unit
was configured on the test, a PlatformTransactionManager that
can offer transactional behavior for such a persistence unit is used. If no
such configuration is found, a DataSourceTransactionManager is
used.| Modifier and Type | Field and Description |
|---|---|
protected Map<Object,org.springframework.transaction.PlatformTransactionManager> |
testObjectPlatformTransactionManagerMap
ThreadLocal for holding the PlatformTransactionManager that is used by
the current test
|
protected Map<Object,Boolean> |
testObjectTransactionActiveMap |
protected Map<Object,org.springframework.transaction.TransactionStatus> |
testObjectTransactionStatusMap
ThreadLocal for holding the TransactionStatus that keeps track of the
current test's transaction status
|
protected List<UnitilsTransactionManagementConfiguration> |
transactionManagementConfigurations
Set of possible providers of a spring
PlatformTransactionManager, not null |
| Constructor and Description |
|---|
DefaultUnitilsTransactionManager() |
| Modifier and Type | Method and Description |
|---|---|
void |
activateTransactionIfNeeded(Object testObject) |
void |
commit(Object testObject)
Commits the transaction.
|
protected org.springframework.transaction.TransactionDefinition |
createTransactionDefinition(Object testObject)
Returns a
TransactionDefinition object containing the
necessary transaction parameters. |
protected void |
doStartTransaction(Object testObject,
UnitilsTransactionManagementConfiguration transactionManagementConfiguration) |
DataSource |
getTransactionalDataSource(DataSource dataSource)
Returns the given datasource, wrapped in a spring
TransactionAwareDataSourceProxy |
protected UnitilsTransactionManagementConfiguration |
getTransactionManagementConfiguration(Object testObject) |
void |
init(Set<UnitilsTransactionManagementConfiguration> transactionManagementConfigurations)
Initialize the transaction manager
|
void |
rollback(Object testObject)
Rolls back the transaction.
|
protected void |
setTransactionManagementConfigurations(Set<UnitilsTransactionManagementConfiguration> transactionManagementConfigurationsSet) |
void |
startTransaction(Object testObject)
Starts the transaction.
|
protected Map<Object,org.springframework.transaction.TransactionStatus> testObjectTransactionStatusMap
protected Map<Object,org.springframework.transaction.PlatformTransactionManager> testObjectPlatformTransactionManagerMap
protected List<UnitilsTransactionManagementConfiguration> transactionManagementConfigurations
PlatformTransactionManager, not nullpublic void init(Set<UnitilsTransactionManagementConfiguration> transactionManagementConfigurations)
UnitilsTransactionManagerinit in interface UnitilsTransactionManagertransactionManagementConfigurations - Set of possible providers of a spring PlatformTransactionManager, not nullpublic DataSource getTransactionalDataSource(DataSource dataSource)
TransactionAwareDataSourceProxygetTransactionalDataSource in interface UnitilsTransactionManagerdataSource - The data source to wrap, not nullpublic void startTransaction(Object testObject)
startTransaction in interface UnitilsTransactionManagertestObject - The test object, not nullpublic void activateTransactionIfNeeded(Object testObject)
activateTransactionIfNeeded in interface UnitilsTransactionManagerprotected void doStartTransaction(Object testObject, UnitilsTransactionManagementConfiguration transactionManagementConfiguration)
public void commit(Object testObject)
commit in interface UnitilsTransactionManagertestObject - The test object, not nullpublic void rollback(Object testObject)
rollback in interface UnitilsTransactionManagertestObject - The test object, not nullprotected org.springframework.transaction.TransactionDefinition createTransactionDefinition(Object testObject)
TransactionDefinition object containing the
necessary transaction parameters. Simply returns a default
DefaultTransactionDefinition object with the 'propagation
required' attributetestObject - The test object, not nullprotected UnitilsTransactionManagementConfiguration getTransactionManagementConfiguration(Object testObject)
protected void setTransactionManagementConfigurations(Set<UnitilsTransactionManagementConfiguration> transactionManagementConfigurationsSet)
Copyright © 2017. All rights reserved.