Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
TransactionStateEnded.cs
Go to the documentation of this file.
2
3namespace System.Transactions;
4
5internal abstract class TransactionStateEnded : TransactionState
6{
7 internal override void EnterState(InternalTransaction tx)
8 {
9 if (tx._needPulse)
10 {
11 Monitor.Pulse(tx);
12 }
13 }
14
15 internal override void AddOutcomeRegistrant(InternalTransaction tx, TransactionCompletedEventHandler transactionCompletedDelegate)
16 {
17 if (transactionCompletedDelegate != null)
18 {
19 TransactionEventArgs transactionEventArgs = new TransactionEventArgs();
20 transactionEventArgs._transaction = tx._outcomeSource.InternalClone();
21 transactionCompletedDelegate(transactionEventArgs._transaction, transactionEventArgs);
22 }
23 }
24
25 internal override bool IsCompleted(InternalTransaction tx)
26 {
27 return true;
28 }
29}
static void Pulse(object obj)
Definition Monitor.cs:103
override void AddOutcomeRegistrant(InternalTransaction tx, TransactionCompletedEventHandler transactionCompletedDelegate)
override bool IsCompleted(InternalTransaction tx)
override void EnterState(InternalTransaction tx)