@java.lang.SuppressWarnings("serial")
public class DatastoreTransactionManager
extends org.springframework.transaction.support.AbstractPlatformTransactionManager
A org.springframework.transaction.PlatformTransactionManager instance that works with the Spring datastore abstraction.
A transaction started while another is in progress on the session the thread is using joins it
(PROPAGATION_REQUIRED, SUPPORTS, MANDATORY): the outer transaction commits
or rolls back everything once, and a joined transaction that fails marks the whole one
rollback-only. A session bound on top of it (withNewSession) runs transactions of its
own. PROPAGATION_REQUIRES_NEW suspends the outer transaction and runs in a session of its
own; PROPAGATION_NESTED is not supported. A read-write transaction started inside a read-only
one joins it and is read-only, as on Hibernate: the read-only commit does not flush, and warns when
that leaves writes unpersisted. Set validateExistingTransaction to refuse such a join
instead. Once a transaction has committed or rolled back it cannot be joined: transactional code
run from its afterCommit or afterCompletion callbacks begins a transaction of its
own.
| Fields inherited from class | Fields |
|---|---|
class org.springframework.transaction.support.AbstractPlatformTransactionManager |
SYNCHRONIZATION_ALWAYS, SYNCHRONIZATION_ON_ACTUAL_TRANSACTION, SYNCHRONIZATION_NEVER |
| Type Params | Return Type | Name and description |
|---|---|---|
|
protected void |
doBegin(java.lang.Object o, org.springframework.transaction.TransactionDefinition definition) |
|
protected void |
doCleanupAfterCompletion(java.lang.Object transaction) |
|
protected void |
doCommit(org.springframework.transaction.support.DefaultTransactionStatus status) |
|
protected java.lang.Object |
doGetTransaction() |
|
protected void |
doResume(java.lang.Object transaction, java.lang.Object suspendedResources) |
|
protected void |
doRollback(org.springframework.transaction.support.DefaultTransactionStatus status) |
|
protected void |
doSetRollbackOnly(org.springframework.transaction.support.DefaultTransactionStatus status) |
|
protected java.lang.Object |
doSuspend(java.lang.Object transaction) |
|
public Datastore |
getDatastore() |
|
protected boolean |
isExistingTransaction(java.lang.Object transaction) |
|
public void |
setDatastore(Datastore datastore) |
|
public void |
setDatastoreManagedSession(boolean datastoreManagedSession) |
| Methods inherited from class | Name |
|---|---|
class org.springframework.transaction.support.AbstractPlatformTransactionManager |
org.springframework.transaction.support.AbstractPlatformTransactionManager#addListener(org.springframework.transaction.TransactionExecutionListener), org.springframework.transaction.support.AbstractPlatformTransactionManager#commit(org.springframework.transaction.TransactionStatus), org.springframework.transaction.support.AbstractPlatformTransactionManager#equals(java.lang.Object), org.springframework.transaction.support.AbstractPlatformTransactionManager#getClass(), org.springframework.transaction.support.AbstractPlatformTransactionManager#getDefaultTimeout(), org.springframework.transaction.support.AbstractPlatformTransactionManager#getTransaction(org.springframework.transaction.TransactionDefinition), org.springframework.transaction.support.AbstractPlatformTransactionManager#getTransactionExecutionListeners(), org.springframework.transaction.support.AbstractPlatformTransactionManager#getTransactionSynchronization(), org.springframework.transaction.support.AbstractPlatformTransactionManager#hashCode(), org.springframework.transaction.support.AbstractPlatformTransactionManager#isFailEarlyOnGlobalRollbackOnly(), org.springframework.transaction.support.AbstractPlatformTransactionManager#isGlobalRollbackOnParticipationFailure(), org.springframework.transaction.support.AbstractPlatformTransactionManager#isNestedTransactionAllowed(), org.springframework.transaction.support.AbstractPlatformTransactionManager#isRollbackOnCommitFailure(), org.springframework.transaction.support.AbstractPlatformTransactionManager#isValidateExistingTransaction(), org.springframework.transaction.support.AbstractPlatformTransactionManager#notify(), org.springframework.transaction.support.AbstractPlatformTransactionManager#notifyAll(), org.springframework.transaction.support.AbstractPlatformTransactionManager#rollback(org.springframework.transaction.TransactionStatus), org.springframework.transaction.support.AbstractPlatformTransactionManager#setDefaultTimeout(int), org.springframework.transaction.support.AbstractPlatformTransactionManager#setFailEarlyOnGlobalRollbackOnly(boolean), org.springframework.transaction.support.AbstractPlatformTransactionManager#setGlobalRollbackOnParticipationFailure(boolean), org.springframework.transaction.support.AbstractPlatformTransactionManager#setNestedTransactionAllowed(boolean), org.springframework.transaction.support.AbstractPlatformTransactionManager#setRollbackOnCommitFailure(boolean), org.springframework.transaction.support.AbstractPlatformTransactionManager#setTransactionExecutionListeners(java.util.Collection), org.springframework.transaction.support.AbstractPlatformTransactionManager#setTransactionSynchronization(int), org.springframework.transaction.support.AbstractPlatformTransactionManager#setTransactionSynchronizationName(java.lang.String), org.springframework.transaction.support.AbstractPlatformTransactionManager#setValidateExistingTransaction(boolean), org.springframework.transaction.support.AbstractPlatformTransactionManager#toString(), org.springframework.transaction.support.AbstractPlatformTransactionManager#wait(), org.springframework.transaction.support.AbstractPlatformTransactionManager#wait(long), org.springframework.transaction.support.AbstractPlatformTransactionManager#wait(long, int) |