async Task <HandlerInvokers> GetHandlerInvokers <TMessage>(TMessage message, ITransactionContext transactionContext, Message logicalMessage) { var handlers = await _handlerActivator.GetHandlers(message, transactionContext); var listOfHandlerInvokers = handlers .Select(handler => CreateHandlerInvoker(handler, message, transactionContext, logicalMessage)) .ToList(); return(new HandlerInvokers(logicalMessage, listOfHandlerInvokers)); }
async Task <HandlerInvokers> GetHandlerInvokers <TMessage>(string messageId, TMessage message, ITransactionContext transactionContext, Message logicalMessage) { var handlers = await _handlerActivator.GetHandlers(message, transactionContext); var listOfHandlerInvokers = handlers .Select(handler => new HandlerInvoker <TMessage>(messageId, () => handler.Handle(message), handler, transactionContext)) .Cast <HandlerInvoker>() .ToList(); return(new HandlerInvokers(logicalMessage, listOfHandlerInvokers)); }