/// <summary>Конструктор класса</summary> /// <param name="dBWriterHandle">Дескриптор БД для логирования ошибок</param> /// <param name="fileHashSumInfoSet">Ссылка на список, в который будут помещаться данные об обработанных файлах</param> /// <param name="portionProcFile">Необязательный параметр, указывающий какое количество файлов должно быть обработано для передачи результатов их обработки в БД на запись</param> public HashSumFileCollector(DBTaskWriter dBWriterHandle, List <MyTask.FileHashSumInfo> fileHashSumInfoSet, uint portionProcFile = 10) { this.dBWriterHandle = dBWriterHandle; this.portionProcFile = portionProcFile; filesToProcess = new List <string>(); tasks = fileHashSumInfoSet; }
/// <summary>Конструктор класса</summary> /// <param name="path">Полный путь к каталогу для обработки файлов и записи в БД</param> /// <param name="dbConnData">Сведения о соединении с БД (кортеж: host, port, sid, user, password)</param> public MyTask(string path, Tuple <string, int, string, string, string> dbConnData) { this.path = path; Console.WriteLine("Инициализация модуля сохранения результатов в БД"); try { dbHandle = new OracleDatabase(dbConnData.Item1, dbConnData.Item2, dbConnData.Item3, dbConnData.Item4, dbConnData.Item5); dbWwriterHandle = new DBTaskWriter(dbHandle, FileHashSumInfoSet); } catch (Exception ex) { Console.WriteLine("Ошибка инициализации модуля сохранения результатов в БД"); dbHandle.Dispose(); throw new Exception(ex.Message); } Console.WriteLine("Инициализация модуля получения хеш-сумм"); hashSumFileCollectorHandle = new HashSumFileCollector(dbWwriterHandle, FileHashSumInfoSet); }