public override void Enter(StateMachine stateMachine)
 {
     base.Enter(stateMachine);
     if (CoordinatorStateMachineFinishedRecord.ShouldTrace)
     {
         CoordinatorStateMachineFinishedRecord.Trace(stateMachine.Enlistment.EnlistmentId, stateMachine.Enlistment.Enlistment.RemoteTransactionId, TransactionOutcome.InDoubt);
     }
 }
Esempio n. 2
0
        public override void Enter(StateMachine stateMachine)
        {
            if (CoordinatorStateMachineFinishedRecord.ShouldTrace)
            {
                CoordinatorStateMachineFinishedRecord.Trace(stateMachine.Enlistment.EnlistmentId, stateMachine.Enlistment.Enlistment.RemoteTransactionId, TransactionOutcome.Aborted);
            }
            CoordinatorEnlistment coordinator = (CoordinatorEnlistment)stateMachine.Enlistment;

            base.TrySendAborted(coordinator);
            if (coordinator.RegisterVolatileCoordinator != null)
            {
                base.TrySendAborted(coordinator.RegisterVolatileCoordinator);
            }
            if (coordinator.PreparingVolatileCoordinator != null)
            {
                base.TrySendAborted(coordinator.PreparingVolatileCoordinator);
            }
            base.Enter(stateMachine);
        }