Ejemplo n.º 1
0
        public override object Request(MediationServiceProvider handlerProvider, object request)
        {
            var value = (TRequest)request;

            return(handlerProvider.GenerateRequestPipeline <TRequest, TResult, TResult>(
                       (handler) => () => handler.Handle(value),
                       (next, step) => () => step.Execute(value, next)));
        }
Ejemplo n.º 2
0
        public override async Task <object> RequestAsync(MediationServiceProvider handlerProvider, object request, CancellationToken cancellationToken)
        {
            var value = (TRequest)request;

            return(await handlerProvider.GenerateRequestPipeline <TRequest, TResult, Task <TResult> >(
                       (handler) => () => handler.HandleAsync(value, cancellationToken),
                       (next, step) => () => step.ExecuteAsync(value, next, cancellationToken))());
        }