public Task Handle(PaymentHistoryPositiveEvent message, IMessageHandlerContext context) { var startPayment = new StartPaymentCommand { CartId = message.CartId }; return(context.SendLocal(startPayment)); }
public Task Handle(StartPaymentCommand message, IMessageHandlerContext context) { //TODO: acual charging logic goes here //randomly return negative events if (random.Next(0, 5) == 0) { var paymentDenied = new PaymentDeniedEvent { CartId = message.CartId }; return(context.Publish(paymentDenied)); } var paymentCompleted = new PaymentCompletedEvent { CartId = message.CartId }; return(context.Publish(paymentCompleted)); }