示例#1
0
        public async Task <IActionResult> Get([FromQuery] TQuery query, CancellationToken ct = default)
        {
            var result = (await _handler.Handle(query, ct));
            var socket = GetSocket();

            return(socket != null
                ? this.ComponentActionResult(result, s_featureName, s_featureName)
                : this.ComponentActionResult(result, s_featureName));
        }
示例#2
0
        public async Task <TResult> Handle(TQuery query, IDictionary <string, object> arguments = null, CancellationToken cancellationToken = default)
        {
            if (_validators.Any())
            {
                _log.Debug("Validating query {queryType}", query.GetType());

                foreach (var validator in _validators)
                {
                    _log.Verbose("Validating query {queryType} with {validatorType}", query.GetType(), validator.GetType());
                    await validator.ValidateAndThrowAsync(query, null, cancellationToken);
                }

                _log.Verbose("Validation of query {queryType} succeeded", query.GetType());
            }
            else
            {
                _log.Debug("No validator found for query {queryType}", query.GetType());
            }

            _log.Verbose("Handling {queryType} with {handlerType} ({handlerId})", typeof(TQuery), _queryHandler.GetType(), _queryHandler.GetHashCode());
            return(await _queryHandler.Handle(query, arguments, cancellationToken));
        }
示例#3
0
        public TResult Handle(TQuery query)
        {
            _validator.ValidateAndThrow(query);

            return(_decorated.Handle(query));
        }
        public Task <TResult> Handle(TQuery query, CancellationToken cancellationToken)
        {
            _validator.ValidateAndThrow(query);

            return(_decorated.Handle(query, cancellationToken));
        }
 public async Task <TViewModel> Handle(MediatRQueryEnvelope <TQuery, TViewModel> request, CancellationToken cancellationToken)
 {
     return(await ourHandler.Handle(request.Query));
 }