-> Вход:
параметры из командной строки
<- Выход:
результат работы
Функция осуществляет разбор и анализ командной строки, переданной программе
при запуске, и проводит проверку корректности параметров.
В случае, если программа вызвана правильно и параметры верны, управление
передается индексирующей части, которой сообщаются необходимые для её
работы данные.
Также к задачам интерфейсной части относится вывод справки и информационного
сообщения о программе в случае некорректного запуска или соответствующего
запроса.
-> Вход:
имя файла-шаблона
<- Выход:
результат работы
инициализированные структуры описывающие запись и её поля
Осуществляет открытие и чтение шаблона записи, проверка его корректности.
На основании информации из шаблона строятся внутренние структуры данных,
предназначенные для хранения характеристик записи и её полей.
-> Вход:
имена файлов для индексации
инициализированные структуры, описывающие запись и её поля
путь к каталогу, в который будет сохранен индексный файл
идентификатор функции, которую следует использовать для доступа к хранилищу потоков
<- Выход:
результат работы
индексный файл
При индексации в цикле последовательно выполняется чтение некоторого блока записей и сохранение их в индексе. Из основной программы выполняется запуск этих функций и передача заполненных структур между ними. Данные индексируются средствами библиотеки BerkeleyDB.
-> Вход:
путь к каталогу, в который будет сохранен индексный файл
идентификатор способа доступа к индексным файлам
инициализированные структуры описывающие поля записи
<- Выход:
результат работы
созданные индексные файлы
инициализированные структуры, описывающие индексные файлы
Функция открывает индексные файлы с заданными атрибутами доступа.
-> Вход:
структуры BerkeleyDB, описывающие индексные файлы
<- Выход:
результат работы
Функция закрывает индексные файлы.
-> Вход:
идентификатор текущего файла с потоками
массив структур хранения записи
<- Выход:
результат работы (количество прочитанных записей или индикатор ошибки)
заполненный массив структур
Данная функция привязана к формату хранения данных о потоках в хранилище. Она последовательно извлекает из текущей позиции в файле данные о записях и заполняет ими массив внутренних структур. Для соответствия функциональному требованию F7, возможно использование исходного кода пакета flow-tools.
-> Вход:
структуры BerkeleyDB, описывающие индексные файлы
массив заполненных структур
количество структур для записи
<- Выход:
результат работы (количество добавленных записей или индикатор ошибки)
Заполненные структуры добавляются к существующему индексу.