protected IActionResult CreateResult() { var response = _responseFactory.Create(); if (response.Failure) { return(BadRequest(response)); } return(Ok(response)); }
public async Task <IActionResult> GetByIdAsync(Guid id) { if (id == null) { return(NoContent()); } _logger?.LogInformation($"Método: { nameof(GetByIdAsync) }({{ id:{ id } }}) Retorno: type Guid"); var serviceResult = await _serviceApplication.GetByIdAsync(id); return(Ok(_responseFactory.Create(serviceResult))); }
private Response GetResponseFromBaseDataTransferObject(List <BaseDataTransferObject> listOfBaseDataTransferObject) { foreach (var baseDataTransferObject in listOfBaseDataTransferObject) { baseDataTransferObject.Validate(); _notificationContext.AddNotifications(baseDataTransferObject.Notifications); } return(_responseFactory.Create()); }
private IResponse GetResponse(IRequest request, IHttpClient client, System.Net.Http.HttpRequestMessage requestMessage) { try { return(_responseFactory.Create(request, client.SendAsync(requestMessage).Result)); } catch (Exception ex) { return(_responseFactory.CreateExceptionResponse(request, ex)); } }
public void CreateResponseFromString() { var stubbedData = "this should be parsed correctly"; var response = new EsiResponse <string>(HttpStatusCode.OK, stubbedData); var httpResponse = new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(stubbedData) }; // ParseResponse will call ReadAsStringAsync on the underlying HttpContent object. // Really this should be mocked but as we are controlling the content, I am putting trust in System.Net.Http. var result = _responseFactory.Create <string>(httpResponse); Assert.IsTrue(result.Success); Assert.IsNull(result.Data); Assert.IsNull(result.Error); Assert.AreEqual(result.StatusCode, result.StatusCode); Assert.AreEqual(response.Message, result.Message); }
public async Task <IResponse <T> > Send <T>(IRequest request, CancellationToken token = default) { if (token == null) { token = DefaultCancellationTokenSource().Token; } using (HttpRequestMessage requestMessage = await request.MessageBuilder.Build()) { HttpResponseMessage responseMessage = await HttpClientBuilder.HttpClient.SendAsync(requestMessage, token); IResponseFactory responseFactory = request.MessageBuilder.CreateResponseFactory(); return(await responseFactory.Create <T>(responseMessage)); } }
private ICloudFilesResponse commonSubmit(IAddToWebRequest requesttype, Func <ICloudFilesRequest> requeststrategy, string authtoken) { var cfrequest = requeststrategy.Invoke(); //only way I've figured out how to make auth header logic conditional, this is a smell and in need of a better pattern if (!String.IsNullOrEmpty(authtoken)) { AddAuthHeaderToRequest(cfrequest, authtoken); } requesttype.Apply(cfrequest); var response = _responsefactory.Create(cfrequest); return(response); }
public async Task Invoke(HttpContext httpContext, IResponseFactory responseFactory) { try { await this._next(httpContext); } catch (Exception exception) { this._logger.LogError(exception, exception.Message); var(statusCode, responseMessage) = this.GetResponseValuesFromException(exception); httpContext.Response.ContentType = "application/json"; httpContext.Response.StatusCode = statusCode; var response = responseFactory.Create(message: responseMessage); await httpContext.Response.WriteAsync(JsonSerializer.Serialize(response)); } }