Skip to content

autumn-library/autumn-event-publisher

Repository files navigation

autumn-event-publisher

Тестирование Статус порога качества

Autumn Event Publisher — это библиотека для работы с событиями в приложениях на OneScript. Она реализует механизм публикации и подписки на события, позволяя легко создавать и обрабатывать события в приложении с помощью аннотаций.

Основные возможности

  • Публикация событий: Позволяет инициировать события из различных частей приложения.
  • Автоматическая регистрация подписчиков: Подписчики на события регистрируются автоматически с помощью аннотаций.
  • Обработка событий: Позволяет подписчикам реагировать на события с передачей параметров для дальнейшей обработки.
  • Масштабируемость: Гибкая система подписки и публикации событий для любого масштаба приложения.

Установка

Для установки библиотеки используйте команду:

opm install autumn-event-publisher

N.B. Библиотека требует OneScript 2.0 для своей работы.

Пример использования

1. Создание подписчика на событие

Подписчики регистрируются с помощью аннотаций, которые указывают, какое событие метод будет обрабатывать.

&ПодпискаНаСобытие("TestEvent")
Процедура ОбработатьСобытие(Источник, Параметр1, Параметр2)
    // Логика обработки события
КонецПроцедуры

&Желудь
Процедура ПриСозданииОбъекта()
КонецПроцедуры
  • Источник — объект, инициировавший событие.
  • Параметр1, Параметр2 — параметры, переданные при публикации события.

2. Публикация события

Событие публикуется с помощью метода ОпубликоватьСобытие жёлудя ПубликаторСобытий, который принимает три параметра: источник события, имя события и массив параметров события.

ПараметрыСобытия = Новый Массив;
ПараметрыСобытия.Добавить("Данные1");
ПараметрыСобытия.Добавить("Данные2");

ПубликаторСобытий.ОпубликоватьСобытие(ЭтотОбъект, "TestEvent", ПараметрыСобытия);
  • ЭтотОбъект - объект, который инициировал событие - источник события.
  • "TestEvent" - имя события, на которое подписаны подписчики.
  • ПараметрыСобытия — массив данных, каждый элемент которого передается в метод подписчика как отдельный параметр.

3. Обработка события

Метод, зарегистрированный через аннотацию, автоматически вызывается, когда событие с соответствующим именем публикуется.

Пример выше показывает, как подписчик обрабатывает событие через метод ОбработатьСобытие.

Лицензия

Библиотека распространяется под лицензией MIT. Для получения подробной информации смотрите файл LICENSE.