Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ EnterState()

override void System.Transactions.TransactionStatePromotedNonMSDTCVolatilePhase1.EnterState ( InternalTransaction tx)
inlinepackage

Definition at line 5 of file TransactionStatePromotedNonMSDTCVolatilePhase1.cs.

6 {
8 tx._committableTransaction._complete = true;
9 if (tx._phase1Volatiles._dependentClones != 0)
10 {
12 }
13 else if (tx._phase1Volatiles._volatileEnlistmentCount > 0)
14 {
15 for (int i = 0; i < tx._phase1Volatiles._volatileEnlistmentCount; i++)
16 {
17 tx._phase1Volatiles._volatileEnlistments[i]._twoPhaseState.ChangeStatePreparing(tx._phase1Volatiles._volatileEnlistments[i]);
18 if (!tx.State.ContinuePhase1Prepares())
19 {
20 break;
21 }
22 }
23 }
24 else
25 {
26 TransactionState.TransactionStatePromotedNonMSDTCSinglePhaseCommit.EnterState(tx);
27 }
28 }
override void ChangeStateTransactionAborted(InternalTransaction tx, Exception e)
void CommonEnterState(InternalTransaction tx)

References System.Transactions.VolatileEnlistmentSet._dependentClones, System.Transactions.InternalTransaction._phase1Volatiles, System.Transactions.InternalEnlistment._twoPhaseState, System.Transactions.VolatileEnlistmentSet._volatileEnlistmentCount, System.Transactions.VolatileEnlistmentSet._volatileEnlistments, System.Transactions.EnlistmentState.ChangeStatePreparing(), System.Transactions.TransactionStatePromotedNonMSDTCBase.ChangeStateTransactionAborted(), System.Transactions.TransactionState.CommonEnterState(), System.Transactions.TransactionState.ContinuePhase1Prepares(), System.Transactions.InternalTransaction.State, and System.Transactions.TransactionState.TransactionStatePromotedNonMSDTCSinglePhaseCommit.