Releases: mazzy-ax/SysConfigFile
2.1.1
Исправлено:
-
Теперь можно запускать одновременно тесты класса SysConfigFile в разных версиях и в разных инстансах Аксапты. В названии временного каталога для тестов содержатся код версии Аксапты и название инстанса дополнительно к коду сессии, который присутствовал и раньше.
-
Каталоги для тестовых данных находятся на одном уровне внутри temp, а не во вложенных подкаталогах как раньше. Это упрощает очистку и контроль за временными файлами.
-
Если в тесте не указан текст, который нужно сохранять, то тест сохранит заголовок xml-файла, а не пустую строку.
2.1.0
Исправлено:
-
метод
filePath()теперь пытается найти конфигурационный файл не только в файле с указанным именем и с расширением.config, но и в файлах с расширениями.config.xml,xml, а также в файле, к имени которого расширение не добавляется.Если ни один конфигурационный файл не найден, то, как и прежде, используется имя с расширением
.config.Если в config-каталоге присутствуют несколько конфигурационных файлов с одинаковым именем, но с разными расширениями, то будет возвращен первый существующий с расширением в порядке
.config,.config.xml,xml, без расширения. -
в методе
filePath()предусмотрен сценарий, когда нужно искать конфигурационные файлы не только с разными расширениями,
но и в разных каталогах и даже с разными именами. Теперь это просто реализовать. -
метод
load()проверяет существование файла перед загрузкой
Добавлено:
- добавлены тестовые методы для тестирования нового поведения в методе
filePath()
2.0.0
Добавлено:
- добавлена валидация config-файлов по xsd-схеме
- для валидации config-файла согласно xsd-схемы добавлены методы
checkFileValid,ensureFileValid,assertFileValid - для валидации самой схемы добавлены методы
checkSchemaValid,ensureSchemaValid,assertSchemaValid - класс может прочитать xsd-схему как из ресурсов AOT, так и из xsd-файла
- добавлены методы
file,schema,schemaPath,schemaResourceNameи приватный методxmlSchema - добавлен раздел о валидации в README.md
- для валидации config-файла согласно xsd-схемы добавлены методы
- добавлена возможность задавать тексты xsd-схемы и config-файла в конструкторе
- добавлены параметров в конструкторах
newиconstruct - класс кэширует значения параметров только если текст конфига прочитан из файла и не кэширует значения параметров если текст конфига задан в конструкторе
- добавлены параметров в конструкторах
- класс реализует интерфейс SysPackable
- добавлены методы
pack/unpack - добавлен статический конструктор
create - добавлен список приватных переменных
#CurrentList, которые сериализуются методомpack
- добавлены методы
- добавлены новые тестовые методы в класс
SysConfigFileTest(всего 80 тестовых методов)
Изменено:
- функция get и getAll раньше удаляла а только пробелы в начале и в конце строки. Теперь эти функции отсекают и пробелы, и табуляции и переводы строк при
System.String.Trim - в методе
newпри инициализации переменнойdirectoryдобавляется символ\, если его нет в конце строки каталога - класс бросает исключения только в
ensure-методах - упрощена инициализация тестируемых конфигов в существующих тестовых методах класса
SysConfigFileTest - обновлен README.md и комментарии в исходном коде
Изменено с потерей совместимости с предыдущей версией:
- название метода
applyLastNameизменено наparmLastUsedParamName - название метода
fileExistsизменено наcheckFileExists - название метода
dataFlushизменено наclearGlobalCache - название метода
parmDefaultDirectoryизменено наdefaultDirectory, теперь метод только только возвращает каталог по умолчанию. задавать каталог можно только в конструкторе.