Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
EnlistableStates.cs
Go to the documentation of this file.
1namespace System.Transactions;
2
3internal abstract class EnlistableStates : ActiveStates
4{
5 internal override Enlistment EnlistDurable(InternalTransaction tx, Guid resourceManagerIdentifier, IEnlistmentNotification enlistmentNotification, EnlistmentOptions enlistmentOptions, Transaction atomicTransaction)
6 {
9 return tx.State.EnlistDurable(tx, resourceManagerIdentifier, enlistmentNotification, enlistmentOptions, atomicTransaction);
10 }
11
12 internal override Enlistment EnlistDurable(InternalTransaction tx, Guid resourceManagerIdentifier, ISinglePhaseNotification enlistmentNotification, EnlistmentOptions enlistmentOptions, Transaction atomicTransaction)
13 {
15 if (tx._durableEnlistment != null || (enlistmentOptions & EnlistmentOptions.EnlistDuringPrepareRequired) != 0)
16 {
18 return tx.State.EnlistDurable(tx, resourceManagerIdentifier, enlistmentNotification, enlistmentOptions, atomicTransaction);
19 }
20 Enlistment enlistment = new Enlistment(resourceManagerIdentifier, tx, enlistmentNotification, enlistmentNotification, atomicTransaction);
21 tx._durableEnlistment = enlistment.InternalEnlistment;
24 if (log.IsEnabled())
25 {
27 }
28 return enlistment;
29 }
30
41
50
51 internal override void CompleteAbortingClone(InternalTransaction tx)
52 {
54 }
55
56 internal override void CreateBlockingClone(InternalTransaction tx)
57 {
59 }
60
61 internal override void CreateAbortingClone(InternalTransaction tx)
62 {
64 }
65
66 internal override void Promote(InternalTransaction tx)
67 {
70 }
71
72 internal override byte[] PromotedToken(InternalTransaction tx)
73 {
74 if (tx.promotedToken == null)
75 {
78 }
79 return tx.promotedToken;
80 }
81}
static string TraceTransactionTimeout
Definition SR.cs:50
Definition SR.cs:7
static DurableEnlistmentActive DurableEnlistmentActive
override Enlistment EnlistDurable(InternalTransaction tx, Guid resourceManagerIdentifier, IEnlistmentNotification enlistmentNotification, EnlistmentOptions enlistmentOptions, Transaction atomicTransaction)
override void Promote(InternalTransaction tx)
override void CreateAbortingClone(InternalTransaction tx)
override byte[] PromotedToken(InternalTransaction tx)
override void Timeout(InternalTransaction tx)
override Enlistment EnlistDurable(InternalTransaction tx, Guid resourceManagerIdentifier, ISinglePhaseNotification enlistmentNotification, EnlistmentOptions enlistmentOptions, Transaction atomicTransaction)
override void CompleteBlockingClone(InternalTransaction tx)
override void CompleteAbortingClone(InternalTransaction tx)
override void CreateBlockingClone(InternalTransaction tx)
InternalEnlistment InternalEnlistment
Definition Enlistment.cs:7
EnlistmentTraceIdentifier EnlistmentTraceId
TransactionTraceIdentifier TransactionTraceId
virtual Enlistment EnlistDurable(InternalTransaction tx, Guid resourceManagerIdentifier, IEnlistmentNotification enlistmentNotification, EnlistmentOptions enlistmentOptions, Transaction atomicTransaction)
virtual void CheckForFinishedTransaction(InternalTransaction tx)
void EnterState(InternalTransaction tx)
virtual void Phase0VolatilePrepareDone(InternalTransaction tx)
void TransactionTimeout(TransactionTraceIdentifier transactionID)
void TransactionstateEnlist(EnlistmentTraceIdentifier enlistmentID, EnlistmentType enlistmentType, EnlistmentOptions enlistmentOption)
static readonly TransactionsEtwProvider Log