private async Task <Run> SaveSuccessRun(string runFolder, Run run, ProcessResult result) { using (var uow = _unitOfWorkProvider.Create()) { var filesCount = _fileSystemWrapper.FilesCountInFolder(runFolder); if (filesCount == 1) { run.File = await CreateSingleFile(runFolder, run.UserId); } else if (filesCount > 1) { run.File = await CreateZipPackage(runFolder, run.UserId); } run.FinishedAt = result.FinishedAt; run.StartedAt = result.StartedAt; run.StdOut = result.StdOut; run.StdErr = result.StdError; run.Result = result.ExitCode == 0 ? RunResultType.Success : RunResultType.Fail; // Attach run, bcs we are not sure if it comes from same context _runRepository.Update(run); await uow.CommitAsync(); return(run); } }
public async Task Update(Run oRun) { var oRunRepository = new RunRepository(); try { string sNote = String.IsNullOrWhiteSpace(oRun.Note) ? String.Empty : oRun.Note.Trim(); byte[] aSignatureBytes = (oRun.Signature == null) ? null : oRun.Signature.ToPngBytes(); await oRunRepository.Update(oRun.Number, sNote, aSignatureBytes); } catch (Exception) { throw; } }