public FileInfo GenerateOrFindZip(string courseId, Slide slide) { var courseDirectory = cacheDirectory.GetSubdirectory(courseId); var zipFile = courseDirectory.GetFile($"{slide.Id}.zip"); if (!zipFile.Exists) { courseDirectory.EnsureExists(); log.Info($"Собираю zip-архив с упражнением: курс {courseId}, слайд «{slide.Title}» ({slide.Id}), файл {zipFile.FullName}"); builder.BuildStudentZip(slide, zipFile); } return(zipFile); }
public FileInfo GenerateOrFindZip(string courseId, Slide slide) { if (!IsEnabled) { throw new InvalidOperationException("ExerciseStudentZipsCache is disabled: can not generate zip archive with exercise"); } var courseDirectory = cacheDirectory.GetSubdirectory(courseId); var zipFile = courseDirectory.GetFile($"{slide.Id}.zip"); if (!zipFile.Exists) { courseDirectory.EnsureExists(); log.Info($"Собираю zip-архив с упражнением: курс {courseId}, слайд «{slide.Title}» ({slide.Id}), файл {zipFile.FullName}"); builder.BuildStudentZip(slide, zipFile); } return(zipFile); }