Skip to content

Releases: mazzy-ax/SysConfigFile

2.1.1

25 Feb 14:13
Compare
Choose a tag to compare

Исправлено:

  • Теперь можно запускать одновременно тесты класса SysConfigFile в разных версиях и в разных инстансах Аксапты. В названии временного каталога для тестов содержатся код версии Аксапты и название инстанса дополнительно к коду сессии, который присутствовал и раньше.

  • Каталоги для тестовых данных находятся на одном уровне внутри temp, а не во вложенных подкаталогах как раньше. Это упрощает очистку и контроль за временными файлами.

  • Если в тесте не указан текст, который нужно сохранять, то тест сохранит заголовок xml-файла, а не пустую строку.

2.1.0

25 Feb 11:11
Compare
Choose a tag to compare

Исправлено:

  • метод filePath() теперь пытается найти конфигурационный файл не только в файле с указанным именем и с расширением .config, но и в файлах с расширениями .config.xml, xml, а также в файле, к имени которого расширение не добавляется.

    Если ни один конфигурационный файл не найден, то, как и прежде, используется имя с расширением .config.

    Если в config-каталоге присутствуют несколько конфигурационных файлов с одинаковым именем, но с разными расширениями, то будет возвращен первый существующий с расширением в порядке .config, .config.xml, xml, без расширения.

  • в методе filePath() предусмотрен сценарий, когда нужно искать конфигурационные файлы не только с разными расширениями,
    но и в разных каталогах и даже с разными именами. Теперь это просто реализовать.

  • метод load() проверяет существование файла перед загрузкой

Добавлено:

  • добавлены тестовые методы для тестирования нового поведения в методе filePath()

2.0.0

12 Aug 05:52
Compare
Choose a tag to compare

Добавлено:

  • добавлена валидация config-файлов по xsd-схеме
    • для валидации config-файла согласно xsd-схемы добавлены методы checkFileValid, ensureFileValid, assertFileValid
    • для валидации самой схемы добавлены методы checkSchemaValid, ensureSchemaValid, assertSchemaValid
    • класс может прочитать xsd-схему как из ресурсов AOT, так и из xsd-файла
    • добавлены методы file, schema, schemaPath, schemaResourceName и приватный метод xmlSchema
    • добавлен раздел о валидации в README.md
  • добавлена возможность задавать тексты 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, теперь метод только только возвращает каталог по умолчанию. задавать каталог можно только в конструкторе.

1.0.0

25 Jul 15:50
Compare
Choose a tag to compare

Initial release