public async Task InvokeAsync(IQueryContext context) { try { IHttpClientFactory httpClientFactory = context.Services.GetRequiredService <IHttpClientFactory>(); context.Result = await _client.FetchAsync( context.Request, httpClientFactory.CreateClient(_schemaName), context.Services.GetServices <IHttpQueryRequestInterceptor>(), context.RequestAborted) .ConfigureAwait(false); } catch (HttpRequestException ex) { IError error = _errorHandler.CreateUnexpectedError(ex) .SetCode(ErrorCodes.HttpRequestException) .Build(); context.Exception = ex; context.Result = QueryResultBuilder.CreateError(error); } await _next.Invoke(context).ConfigureAwait(false); }
public async Task InvokeAsync(IQueryContext context) { IHttpClientFactory httpClientFactory = context.Services.GetRequiredService <IHttpClientFactory>(); context.Result = await _client.FetchAsync( context.Request, httpClientFactory.CreateClient(_schemaName)) .ConfigureAwait(false); await _next.Invoke(context).ConfigureAwait(false); }
public Task InvokeAsync(IQueryContext context) { IVariableValueCollection variables = context.Operation.Variables; var dict = new Dictionary <string, IValueNode>(); foreach (string key in context.Request.VariableValues.Keys) { dict.Add(key, variables.GetVariable <IValueNode>(key)); } context.SetVariables(dict); return(_next.Invoke(context)); }
public Task InvokeAsync(IQueryContext context) { if (context.Document is null) { context.Result = QueryResultBuilder.CreateError( _errorHandler.Handle(ErrorBuilder.New() .SetMessage("CachedQueryNotFound") .SetCode(ErrorCodes.Execution.CachedQueryNotFound) .Build())); return(Task.CompletedTask); } else { return(_next.Invoke(context)); } }
public Task InvokeAsync(IQueryContext context) { context.SetVariables(context.Request.VariableValues); return(_next.Invoke(context)); }