public void Return <T>(T errorCode) { var returnMessage = ControlMessage.Create(Address.Local); returnMessage.MessageIntent = MessageIntentEnum.Reply; returnMessage.Headers[Headers.ReturnMessageErrorCodeHeader] = errorCode.GetHashCode().ToString(); returnMessage.CorrelationId = !string.IsNullOrEmpty(MessageBeingProcessed.CorrelationId) ? MessageBeingProcessed.CorrelationId : MessageBeingProcessed.Id; var options = SendOptions.ReplyTo(MessageBeingProcessed.ReplyToAddress); PipelineFactory.InvokeSendPipeline(options, returnMessage); }
OutgoingContext InvokeSendPipeline(DeliveryOptions sendOptions, LogicalMessage message) { if (sendOptions.ReplyToAddress == null && !SendOnlyMode) { sendOptions.ReplyToAddress = Configure.PublicReturnAddress; } if (PropagateReturnAddressOnSend && CurrentMessageContext != null) { sendOptions.ReplyToAddress = CurrentMessageContext.ReplyToAddress; } return(PipelineFactory.InvokeSendPipeline(sendOptions, message)); }
SendLogicalMessagesContext InvokeSendPipeline(SendOptions sendOptions, List <LogicalMessage> messages) { if (sendOptions.ReplyToAddress == null && !Configure.SendOnlyMode) { sendOptions.ReplyToAddress = Address.Local; } if (PropagateReturnAddressOnSend && CurrentMessageContext != null) { sendOptions.ReplyToAddress = CurrentMessageContext.ReplyToAddress; } return(PipelineFactory.InvokeSendPipeline(sendOptions, messages)); }
public void Return <T>(T errorCode) { TransportMessage returnMessage; if (Configure.Instance.WorkerRunsOnThisEndpoint()) { returnMessage = ControlMessage.Create(MasterNodeAddress); } else { returnMessage = ControlMessage.Create(Address.Local); } returnMessage.MessageIntent = MessageIntentEnum.Reply; returnMessage.Headers[Headers.ReturnMessageErrorCodeHeader] = errorCode.GetHashCode().ToString(); returnMessage.CorrelationId = !string.IsNullOrEmpty(MessageBeingProcessed.CorrelationId) ? MessageBeingProcessed.CorrelationId : MessageBeingProcessed.Id; var options = SendOptions.ReplyTo(MessageBeingProcessed.ReplyToAddress); PipelineFactory.InvokeSendPipeline(options, returnMessage); }