github autumn-library/autumn v2.0.0

latest releases: v4.3.4, v4.3.3, v4.3.2...
2 years ago

Breaking change

  • КонтекстПриложения переименован в Поделка.
  • Методы КонтекстПриложения.Зарегистрировать* переименованы в Поделка.Добавить*.
  • Метод КонтекстПриложения.ПолучитьЖелудь переименован в Поделка.НайтиЖелудь.
  • В качестве значения второго аргумента метода ОбработатьЖелудь в Напильник теперь передается ОпределениеЖелудя, а не ИмяЖелудя.
  • Жизненный цикл приложения разделен на две фазы:
    • фаза инициализации, в которой можно только добавлять в поделку новые желуди;
    • фаза выполнения, в которой можно находить желуди, но нельзя регистрировать новые.
  • Добавлен метод Поделка.ЗапуститьПриложение(), переводящий приложение из статуса Инициализация в статус Выполнение.

Новое в версии

  • Добавлена аннотация &Прозвище, в которой можно указывать "синоним" желудя. Желудь может иметь несколько прозвищ (через повторение аннотации).
  • В Поделка добавлен метод НайтиЖелуди, позволяющий получить массив желудей с совпадающим прозвищем.
  • В аннотацию &Пластилин добавлен параметр Тип, в котором можно указать способ поиска прилепляемой частицы:
    • "Желудь" - будет осуществлен поиск и внедрение одного желудя (как и раньше);
    • "Массив" - будет осуществлен поиск нескольких желудей по имени/прозвищу и внедрение их в виде массива.
  • Не только имя &Желудь, но и имя &Напильник, &Дуб и &Завязь теперь можно переопределить в соответствующей аннотации.
  • Для &Завязь реализована возможность именовать метод произвольно, а не только по имени типа возвращаемого значения. В случае произвольного имени, тип возвращаемого значения должен быть указан в параметре Тип аннотации &Завязь.
  • Добавлена аннотация &Верховный, с помощью которой можно:
    • переопределить имеющийся в Поделке желудь по имени желудя;
    • объявить желудь как желудь "по умолчанию" при получении желудя по прозвищу, в случае если желудей с одним прозвищем несколько.
  • В конструктор &Напильник теперь можно прилепить не только Поделка, но и любой другой желудь. Из-за рекурсивной зависимости на таком прилепляемом желуде не будет отрабатывать &Напильник, в который он внедряется.
  • Все &Напильник'и теперь принудительно инициализируются перед поиском первого желудя.
  • &Завязь теперь тоже может иметь свой &Характер.
  • Добавлена аннотация &Рогатка для определения желудей, которые должны срабатывать при старте приложения. Каждая &Рогатка должна иметь метод ПриЗапускеПриложения().
  • Добавлена аннотация &Заготовка для массового наполнения Поделки желудями. Каждая &Заготовка должна иметь метод ПриИнициализацииПоделки(Поделка). Заготовка инстанцируется на фазе инициализации приложения, поэтому может принимать в качестве зависимостей только набор &Деталька.
  • Добавлен модуль Осень со статическими методами наполнения списка заготовок на этапе загрузки библиотеки (Осень.ДобавитьЗаготовкуДляАвтоИнициализации(ИмяТипаЗаготовки))
  • Добавлена аннотация &Деталька для чтения параметров приложения из конфигурационного файла. Аннотацию можно использовать в тех же местах, что и &Пластилин - в конструкторе, сеттере и на поле. В качестве параметра аннотации выступает путь к настройке в формате библиотеки configor. Конфигурационный файл имеет имя autumn-properties.json/yaml/yml и может быть расположен в корне проекта или в подкаталоге src. Значение по умолчанию для параметра можно указать с помощью параметра аннотации ЗначениеПоУмолчанию.
  • Добавлена аннотация &Блестяшка для задания произвольных параметров конструктора/завязи желудя. Параметры могут быть переданы в виде массива через метод Поделка.НайтиЖелудь(ИмяЖелудя, Параметры). Можно либо передать либо все параметры конструктора (включая пластилин, детальки и собственно блестяшки) либо только блестяшки.

Don't miss a new autumn release

NewReleases is sending notifications on new releases.