public EditTicketResponse Edit(EditTicketRequest request) { logger.Debug("About to validate an edit-ticket request"); var validationResult = ValidateRequest(request); logger.Debug(validationResult); if (!validationResult.IsSuccess) { return(responseCreator.GetResponse(validationResult, null)); } using (var trans = transactionFactory.GetTransaction()) { if (logger.IsDebugEnabled) { logger.Debug($"Transaction used is a {trans.GetType().FullName}"); } var ticket = ticketRepo.Get(request.Identity); editor.Edit(ticket, request); ticketRepo.Update(ticket); trans.Commit(); return(responseCreator.GetResponse(validationResult, ticket)); } }
IValidationResult ValidateRequest(EditTicketRequest request) { var validator = validatorFactory.GetValidator(); return(validator.Validate(request)); }