/// <summary> /// Конвертировать файл до превышения лимита /// </summary> private IFileDataServer ConvertingByCountLimit(IFileDataServer fileDataServer, IConvertingSettings convertingSettings) => fileDataServer. Void(_ => _loggerService.LogByObject(LoggerLevel.Info, LoggerAction.Operation, ReflectionInfo.GetMethodBase(this), fileDataServer.FileNameServer)). WhereOk(fileData => !fileData.IsCompleted, okFunc: fileData => ExecuteBindResultValue(() => _convertingFileData.Converting(fileData, convertingSettings)). ResultValueBad(errors => fileData.IsValidByAttemptingCount ? fileData.SetAttemptingCount(fileData.AttemptingConvertCount + 1). Void(_ => _convertingFileData.CloseApplication()). Map(fileDataUncompleted => ConvertingByCountLimit(fileDataUncompleted, convertingSettings)) : new FileDataServer(fileData, StatusProcessing.ConvertingComplete, errors)). Value);
/// <summary> /// Конвертировать файл /// </summary> public IFileDataServer Converting(IFileDataServer fileDataServer, IConvertingSettings convertingSettings) => fileDataServer. Void(fileData => _messagingService.ShowMessage($"Конвертация файла {fileDataServer.FileNameClient}")). Void(fileData => _loggerService.LogByObject(LoggerLevel.Info, LoggerAction.Operation, ReflectionInfo.GetMethodBase(this), fileDataServer.FileNameServer)). Map(fileData => ConvertingFile(fileData, convertingSettings));