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);
        }