System.Transactions.TransactionStatePromotedCommitted.EnterState C# (CSharp) Method

EnterState() private method

private EnterState ( InternalTransaction tx ) : void
tx InternalTransaction
return void
        internal override void EnterState(InternalTransaction tx)
        {
            base.EnterState(tx);

            // Tell all the enlistments the outcome.
            if (tx._phase1Volatiles.VolatileDemux != null)
            {
                tx._phase1Volatiles.VolatileDemux.BroadcastCommitted(ref tx._phase1Volatiles);
            }

            if (tx._phase0Volatiles.VolatileDemux != null)
            {
                tx._phase0Volatiles.VolatileDemux.BroadcastCommitted(ref tx._phase0Volatiles);
            }

            // Fire Completion for anyone listening
            tx.FireCompletion();
            // We don't need to do the AsyncCompletion stuff.  If it was needed, it was done out of SignalCallback.

            TransactionsEtwProvider etwLog = TransactionsEtwProvider.Log;
            if (etwLog.IsEnabled())
            {
                etwLog.TransactionCommitted(tx.TransactionTraceId);
            }
        }