public async Task Simulate(TicketOrderSimulationRequest request) { var error = ""; var handler = HandlersFactory.GetProfilerHandler(_settingService, _loggerService); handler.Start(LOG_TAG, "Simulate", null); try { // Enqueue the event to a queue so it can be processed by an Azure function or whatever if (_simulationQueue != null) { var queueMessage = new CloudQueueMessage(JsonConvert.SerializeObject(request)); await _simulationQueue.AddMessageAsync(queueMessage); } } catch (Exception ex) { error = ex.Message; throw new Exception(error); } finally { handler.Stop(error); } }
public async Task <IHttpActionResult> PostTicketOrdersSimulation([FromBody] TicketOrderSimulationRequest request) { var error = ""; var handler = HandlersFactory.GetProfilerHandler(TheSettingService, TheLoggerService); handler.Start(LOG_TAG, "PostOrder", GetServiceProperties()); try { TicketOrderSimulationRequest.Validate(request); IExternalizationService extService = ServiceFactory.GetInstance().GetExternalizationService(TheSettingService, TheLoggerService); await extService.Simulate(request); return(Ok("Running")); } catch (Exception ex) { error = ex.Message; return(BadRequest(ex.Message)); } finally { handler.Stop(error); } }