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
, теперь метод только только возвращает каталог по умолчанию. задавать каталог можно только в конструкторе.