Class AbstractPlatformTransactionManager
- Namespace
- Steeltoe.Common.Transaction
- Assembly
- Steeltoe.Common.dll
public abstract class AbstractPlatformTransactionManager : IPlatformTransactionManager
- Inheritance
-
AbstractPlatformTransactionManager
- Implements
-
- Derived
-
- Inherited Members
-
Constructors
protected AbstractPlatformTransactionManager(ILogger logger = null)
Parameters
logger
ILogger
Fields
public const int SYNCHRONIZATION_ALWAYS = 0
Field Value
- int
public const int SYNCHRONIZATION_NEVER = 2
Field Value
- int
public const int SYNCHRONIZATION_ON_ACTUAL_TRANSACTION = 1
Field Value
- int
protected readonly ILogger _logger
Field Value
- ILogger
Properties
public virtual int DefaultTimeout { get; set; }
Property Value
- int
public virtual bool FailEarlyOnGlobalRollbackOnly { get; set; }
Property Value
- bool
public virtual bool GlobalRollbackOnParticipationFailure { get; set; }
Property Value
- bool
public virtual bool NestedTransactionAllowed { get; set; }
Property Value
- bool
public virtual bool RollbackOnCommitFailure { get; set; }
Property Value
- bool
protected virtual bool ShouldCommitOnGlobalRollbackOnly { get; }
Property Value
- bool
public virtual int TransactionSynchronization { get; set; }
Property Value
- int
protected virtual bool UseSavepointForNestedTransaction { get; }
Property Value
- bool
public virtual bool ValidateExistingTransaction { get; set; }
Property Value
- bool
Methods
public virtual void Commit(ITransactionStatus status)
Parameters
status
ITransactionStatus
protected virtual int DetermineTimeout(ITransactionDefinition definition)
Parameters
definition
ITransactionDefinition
Returns
- int
protected abstract void DoBegin(object transaction, ITransactionDefinition definition)
Parameters
transaction
object
definition
ITransactionDefinition
protected virtual void DoCleanupAfterCompletion(object transaction)
Parameters
transaction
object
protected abstract void DoCommit(DefaultTransactionStatus status)
Parameters
status
DefaultTransactionStatus
protected abstract object DoGetTransaction()
Returns
- object
protected virtual void DoResume(object transaction, object suspendedResources)
Parameters
transaction
object
suspendedResources
object
protected abstract void DoRollback(DefaultTransactionStatus status)
Parameters
status
DefaultTransactionStatus
protected virtual void DoSetRollbackOnly(DefaultTransactionStatus status)
Parameters
status
DefaultTransactionStatus
protected virtual object DoSuspend(object transaction)
Parameters
transaction
object
Returns
- object
public virtual ITransactionStatus GetTransaction(ITransactionDefinition definition)
Parameters
definition
ITransactionDefinition
Returns
- ITransactionStatus
protected virtual void InvokeAfterCompletion(List<ITransactionSynchronization> synchronizations, int completionStatus)
Parameters
synchronizations
List<ITransactionSynchronization>
completionStatus
int
protected virtual bool IsExistingTransaction(object transaction)
Parameters
transaction
object
Returns
- bool
protected virtual DefaultTransactionStatus NewTransactionStatus(ITransactionDefinition definition, object transaction, bool newTransaction, bool newSynchronization, object suspendedResources)
Parameters
definition
ITransactionDefinition
transaction
object
newTransaction
bool
newSynchronization
bool
suspendedResources
object
Returns
- DefaultTransactionStatus
protected virtual void PrepareForCommit(DefaultTransactionStatus status)
Parameters
status
DefaultTransactionStatus
protected virtual void PrepareSynchronization(DefaultTransactionStatus status, ITransactionDefinition definition)
Parameters
status
DefaultTransactionStatus
definition
ITransactionDefinition
protected virtual DefaultTransactionStatus PrepareTransactionStatus(ITransactionDefinition definition, object transaction, bool newTransaction, bool newSynchronization, object suspendedResources)
Parameters
definition
ITransactionDefinition
transaction
object
newTransaction
bool
newSynchronization
bool
suspendedResources
object
Returns
- DefaultTransactionStatus
protected virtual void RegisterAfterCompletionWithExistingTransaction(object transaction, List<ITransactionSynchronization> synchronizations)
Parameters
transaction
object
synchronizations
List<ITransactionSynchronization>
protected virtual void Resume(object transaction, AbstractPlatformTransactionManager.SuspendedResourcesHolder resourcesHolder)
Parameters
transaction
object
resourcesHolder
AbstractPlatformTransactionManager.SuspendedResourcesHolder
public virtual void Rollback(ITransactionStatus status)
Parameters
status
ITransactionStatus
protected virtual AbstractPlatformTransactionManager.SuspendedResourcesHolder Suspend(object transaction)
Parameters
transaction
object
Returns
- AbstractPlatformTransactionManager.SuspendedResourcesHolder
protected virtual void TriggerBeforeCommit(DefaultTransactionStatus status)
Parameters
status
DefaultTransactionStatus
protected virtual void TriggerBeforeCompletion(DefaultTransactionStatus status)
Parameters
status
DefaultTransactionStatus