protected void ProcessTmRegisterResponse(TmRegisterResponseEvent e) { ParticipantEnlistment participant = e.Participant; MsgRegisterEvent sourceEvent = e.SourceEvent; if (e.Status != Status.Success) { Fault fault = this.state.Faults.ParticipantTMRegistrationFailed(e.Status); this.state.RegistrationCoordinator.SendFault(sourceEvent.Result, fault); if (RegisterParticipantFailureRecord.ShouldTrace) { RegisterParticipantFailureRecord.Trace(participant.EnlistmentId, participant.Enlistment.RemoteTransactionId, participant.ControlProtocol, participant.ParticipantProxy.To, Microsoft.Transactions.SR.GetString("PplCreateSubordinateEnlistmentFailed", new object[] { e.Status.ToString() }), this.state.ProtocolVersion); } } else { participant.OnParticipantRegistered(); this.state.RegistrationCoordinator.SendRegisterResponse(participant, sourceEvent.Result, sourceEvent.Protocol, participant.CoordinatorService); if (RegisterParticipantRecord.ShouldTrace) { RegisterParticipantRecord.Trace(participant.EnlistmentId, participant.Enlistment.RemoteTransactionId, participant.ControlProtocol, participant.ParticipantProxy.To, this.state.ProtocolVersion); } } }
public TmRegisterResponseEvent(ParticipantEnlistment participant, Status status, MsgRegisterEvent source) : base(participant, status) { this.source = source; }
public void Register(ParticipantEnlistment participant, MsgRegisterEvent e) { if (DebugTrace.Info) { DebugTrace.TxTrace(TraceLevel.Info, participant.EnlistmentId, "Sending Register for {0} to transaction manager", participant.Enlistment.NotificationMask); } this.propagation.CreateSubordinateEnlistment(participant.Enlistment, this.registerResponseCallback, e); }