public async Task ExecuteServiceAsync(string subtitleFile, CancellationToken stoppingToken) { try { _logger.LogInformation($"Processing {subtitleFile}"); await ConfirmFileTransferCompleteAsync(subtitleFile); string fileContent = GetFileContents(subtitleFile); SubtitleInputDto subtitleInputDto = new SubtitleInputDto(fileContent, Path.GetFileName(subtitleFile)); if (subtitleInputDto.IsValidSrtSubtitleFile() == false) { _logger.LogError($"{subtitleFile} is not in a valid format"); return; } SubtitleOutputDto transcriptOutput = CleanSubtitle(subtitleInputDto); SaveSubtitleFile(transcriptOutput, _uploadDirectory); ArchiveSubtitleFile(subtitleFile, _uploadDirectory); _logger.LogInformation($"Finished processing {subtitleFile}"); } catch (Exception ex) { _logger.LogError(ex.InnerException, ex.Message); } }
public void SaveSubtitleFile(SubtitleOutputDto subtitleDto, string archiveDirectory) { base.SaveFileContents( Path.Combine(archiveDirectory, $"{subtitleDto.VideoTitle}{FileExtension.Srt}"), subtitleDto.VideoText); base.SaveFileContents( Path.Combine(archiveDirectory, $"{subtitleDto.VideoTitle}{FileExtension.Md}"), subtitleDto.BlogText); }