/// <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;
 }
Esempio n. 2
0
        /// <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);
        }