public async Task Handle(NoeOfferResponse message, IMessageHandlerContext context) { if (message.NoeOfferAccepted) { log.InfoFormat("Recieved NoeOfferResponse, NoeOfferAccepted flag TRUE for {0} ({1}), sending NoeResponse", message.NoeId, message.SagaId); Data.NoeOfferAccepted = message.NoeOfferAccepted; } else { log.InfoFormat("Recieved NoeOfferResponse, NoeOfferAccepted flag FALSE for {0} ({1}), sending NoeResponse", message.NoeId, message.SagaId); Data.NoeOfferAccepted = message.NoeOfferAccepted; } // // No matter what this workflow is ending // var request = new NoeResponse(message); request.Status = Constants.ZSUS_SAGA_MARKED_COMPLETE; var options = new SendOptions(); options.SetDestination(Constants.ZSUS_NOE_RESPONSE_ENDPOINT); await context.Send(request, options).ConfigureAwait(false); }
public async Task NoeOfferedAsync(int noeId, Guid sagaId, int flag) { log.InfoFormat("NoeOffered - noeId {0}, flag {1}", noeId, flag); var message = new NoeOfferResponse() { NoeId = noeId, SagaId = sagaId, NoeOfferAccepted = (flag == 0 ? false : true) }; //StartupAsync(); var options = new SendOptions(); options.SetDestination(Constants.ZSUS_NOE_SAGA_ENDPOINT); await endpointInstance.Send(message, options).ConfigureAwait(false); //ShutdownAsync(); }