public async Task <IActionResult> Execute() { try { var entity = await _Writer.Execute(); var result = new EnrollmentResponse { ConfirmationKey = Convert.ToBase64String(entity.ConfirmationKey), BucketId = Convert.ToBase64String(entity.BucketId), //TODO remove formatting when spec is clarified to remove UI concern from data. LabConfirmationId = _LabConfirmationIdFormatter.Format(entity.LabConfirmationId), Validity = _WorkflowTime.TimeToLiveSeconds(_UtcDateTimeProvider.Snapshot, entity.ValidUntil) }; return(new OkObjectResult(result)); } catch (Exception ex) { //TODO: check if you want to use Serilog's Exception logging, or just use ToString _Logger.LogError(ex.ToString()); return(new OkObjectResult(new EnrollmentResponse { Validity = -1 })); } }
public async Task <IActionResult> ExecuteAsync() { try { var entity = await _Writer.ExecuteAsync(); var result = new EnrollmentResponse { ConfirmationKey = Convert.ToBase64String(entity.ConfirmationKey), BucketId = Convert.ToBase64String(entity.BucketId), LabConfirmationId = _LabConfirmationIdFormatter.Format(entity.LabConfirmationId), //Architects choice to use UI format in response. Validity = _WorkflowTime.TimeToLiveSeconds(_UtcDateTimeProvider.Snapshot, entity.ValidUntil) }; return(new OkObjectResult(result)); } catch (Exception ex) { _Logger.WriteFailed(ex); return(new OkObjectResult(new EnrollmentResponse { Validity = -1 })); } finally { _Logger.WriteFinished(); } }
public async Task <IActionResult> ExecuteAsync() { _logger.WriteStartSecret(); try { var entity = await _writer.ExecuteAsync(); var result = new EnrollmentResponseV2 { ConfirmationKey = Convert.ToBase64String(entity.ConfirmationKey), BucketId = Convert.ToBase64String(entity.BucketId), GGDKey = entity.GGDKey, Validity = _workflowTime.TimeToLiveSeconds(_utcDateTimeProvider.Snapshot, entity.ValidUntil) }; return(new OkObjectResult(result)); } catch (Exception ex) { _logger.WriteFailed(ex); return(new OkObjectResult(new EnrollmentResponseV2 { Validity = -1 })); } finally { _logger.WriteFinished(); } }