public async Task <PipelineResult> Manage(RecievedOrder order) { _logger.AddMessageDetail("Beginning order processing"); var pipelineData = _orderDataConverter.Convert(order); var pipelineResult = new PipelineResult(); try { await _pipelineDirector.Do(pipelineData, pipelineResult); } catch (Exception ex) { AssignException(pipelineResult, ex); _logger.AddErrorDetail(ex.Message); _logger.SubmitException(ex); await HandlePipelineException(pipelineData, pipelineResult); } return(pipelineResult); }
public async Task <IActionResult> Post([FromBody] RecievedOrder recievedOrder) { var result = await _fulfilmentManager.Manage(recievedOrder); return(Ok(result)); }