autumn-event-publisherпакет
Пакет лежит в основном пуле хаба: короткой формы достаточно, если хаб прописан сервером пакетов в opm.cfg.
opm install autumn-event-publisherУстановка на opm младше 1.7.0
Легаси-флоу. Клиент младше 1.7.0 адрес пула в аргументе не разбирает: пул сначала прописывают сервером пакетов, и только потом ставят через него. На 1.7.0 и новее этот раздел не нужен — хватает команды из шапки страницы.
Добавьте пул сервером пакетов в opm.cfg. Порт продублирован в «Сервер»: у opm push поле «Порт» не читается.
{
"СервераПакетов": [
{
"Имя": "default",
"Сервер": "https://hub.1cdevelopers.ru",
"Порт": 443,
"ПутьНаСервере": "/api/v1/pools/default/download/",
"РесурсПубликацииПакетов": "/api/v1/pools/default/push",
"Приоритет": 1
}
]
}И ставьте пакет, указывая сервер:
opm install -m default autumn-event-publisherОписание
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.