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

◆ EnlistVolatile() [2/2]

override Enlistment System.Transactions.TransactionStateActive.EnlistVolatile ( InternalTransaction tx,
ISinglePhaseNotification enlistmentNotification,
EnlistmentOptions enlistmentOptions,
Transaction atomicTransaction )
inlinepackagevirtual

Reimplemented from System.Transactions.TransactionState.

Reimplemented in System.Transactions.TransactionStateSubordinateActive.

Definition at line 46 of file TransactionStateActive.cs.

47 {
48 Enlistment enlistment = new Enlistment(tx, enlistmentNotification, enlistmentNotification, atomicTransaction, enlistmentOptions);
49 if ((enlistmentOptions & EnlistmentOptions.EnlistDuringPrepareRequired) != 0)
50 {
51 AddVolatileEnlistment(ref tx._phase0Volatiles, enlistment);
52 }
53 else
54 {
55 AddVolatileEnlistment(ref tx._phase1Volatiles, enlistment);
56 }
57 TransactionsEtwProvider log = TransactionsEtwProvider.Log;
58 if (log.IsEnabled())
59 {
60 log.TransactionstateEnlist(enlistment.InternalEnlistment.EnlistmentTraceId, EnlistmentType.Volatile, enlistmentOptions);
61 }
62 return enlistment;
63 }
void AddVolatileEnlistment(ref VolatileEnlistmentSet enlistments, Enlistment enlistment)

References System.Transactions.InternalTransaction._phase0Volatiles, System.Transactions.InternalTransaction._phase1Volatiles, System.Transactions.TransactionState.AddVolatileEnlistment(), System.Transactions.InternalEnlistment.EnlistmentTraceId, System.Transactions.Enlistment.InternalEnlistment, System.Diagnostics.Tracing.EventSource.IsEnabled(), System.Transactions.TransactionsEtwProvider.Log, and System.Transactions.TransactionsEtwProvider.TransactionstateEnlist().