Package w.eventbus
Class SimpleEventBus
java.lang.Object
w.eventbus.SimpleEventBus
- All Implemented Interfaces:
EventBus
- Author:
- whilein
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic @NotNull EventBuscreate(@NotNull org.slf4j.Logger logger, @NotNull NamespaceValidator namespaceValidator) Создать новыйEventBusс определённым логгеромstatic @NotNull EventBuscreate(@NotNull NamespaceValidator namespaceValidator) Создать новыйEventBusvoidОтправить событие на все слушатели, которые подписаны на него.<E extends AsyncEvent>
@NotNull CompletableFuture<E>dispatchAsync(E event) voidЗарегистрировать слушатели из класса.<E extends Event>
@NotNull RegisteredSubscriptionЗарегистрировать подписку на событие.<E extends Event>
@NotNull RegisteredSubscriptionregister(@NotNull Class<E> type, @NotNull PostOrder order, @NotNull Consumer<@NotNull E> subscription) Зарегистрировать подписку на событие.voidЗарегистрировать слушатели из объекта.voidЗарегистрировать слушатели из класса.<E extends Event>
@NotNull RegisteredSubscriptionregister(@NotNull Object namespace, @NotNull Class<E> type, @NotNull Consumer<@NotNull E> subscription) Зарегистрировать подписку на событие.<E extends Event>
@NotNull RegisteredSubscriptionregister(@NotNull Object namespace, @NotNull Class<E> type, @NotNull PostOrder order, @NotNull Consumer<@NotNull E> subscription) Зарегистрировать подписку на событие.voidЗарегистрировать слушатели из объекта.voidunregister(@NotNull RegisteredSubscription subscription) Удалить подписку на событияvoidvoidunregisterAll(@NotNull Class<?> ownerType) Удалить все подписки на события, зарегистрированные из определённого класса.voidunregisterAll(@NotNull Object owner) Удалить все подписки на события, зарегистрированные из определённого объекта.voidunregisterAllByNamespace(@NotNull Object namespace) Удалить все подписки на события, зарегистрированные в определённом неймспейсе.
-
Constructor Details
-
SimpleEventBus
public SimpleEventBus()
-
-
Method Details
-
create
@NotNull public static @NotNull EventBus create(@NotNull @NotNull org.slf4j.Logger logger, @NotNull @NotNull NamespaceValidator namespaceValidator) Создать новыйEventBusс определённым логгером- Parameters:
logger- Логгер, в котором будет выводиться ошибки слушателей и отладкаnamespaceValidator- Проверка на валидность namespace- Returns:
- Новый
EventBus
-
create
@NotNull public static @NotNull EventBus create(@NotNull @NotNull NamespaceValidator namespaceValidator) Создать новыйEventBus- Parameters:
namespaceValidator- Проверка на валидность namespace- Returns:
- Новый
EventBus
-
dispatchAsync
@NotNull public <E extends AsyncEvent> @NotNull CompletableFuture<E> dispatchAsync(@NotNull E event) - Specified by:
dispatchAsyncin interfaceEventBus
-
dispatch
Description copied from interface:EventBusОтправить событие на все слушатели, которые подписаны на него. -
unregister
Description copied from interface:EventBusУдалить подписку на события- Specified by:
unregisterin interfaceEventBus- Parameters:
subscription- Подписка
-
unregisterAll
Description copied from interface:EventBusУдалить все подписки на события, зарегистрированные из определённого объекта.- Specified by:
unregisterAllin interfaceEventBus- Parameters:
owner- Объект, в котором находятся подписки на события
-
unregisterAll
Description copied from interface:EventBusУдалить все подписки на события, зарегистрированные из определённого класса.- Specified by:
unregisterAllin interfaceEventBus- Parameters:
ownerType- Класс, в котором находятся подписки на события
-
unregisterAllByNamespace
Description copied from interface:EventBusУдалить все подписки на события, зарегистрированные в определённом неймспейсе.- Specified by:
unregisterAllByNamespacein interfaceEventBus- Parameters:
namespace- Неймспейс
-
unregisterAll
public void unregisterAll()- Specified by:
unregisterAllin interfaceEventBus
-
register
Description copied from interface:EventBusЗарегистрировать слушатели из объекта. -
register
public void register(@NotNull @NotNull Object namespace, @NotNull @NotNull Class<?> subscriptionType) Description copied from interface:EventBusЗарегистрировать слушатели из класса. Методы, которые слушают события, должны быть статичны. -
register
Description copied from interface:EventBusЗарегистрировать слушатели из объекта. -
register
Description copied from interface:EventBusЗарегистрировать слушатели из класса. Методы, которые слушают события, должны быть статичны. -
register
@NotNull public <E extends Event> @NotNull RegisteredSubscription register(@NotNull @NotNull Object namespace, @NotNull @NotNull Class<E> type, @NotNull @NotNull Consumer<@NotNull E> subscription) Description copied from interface:EventBusЗарегистрировать подписку на событие. -
register
@NotNull public <E extends Event> @NotNull RegisteredSubscription register(@NotNull @NotNull Class<E> type, @NotNull @NotNull Consumer<@NotNull E> subscription) Description copied from interface:EventBusЗарегистрировать подписку на событие. -
register
@NotNull public <E extends Event> @NotNull RegisteredSubscription register(@NotNull @NotNull Object namespace, @NotNull @NotNull Class<E> type, @NotNull @NotNull PostOrder order, @NotNull @NotNull Consumer<@NotNull E> subscription) Description copied from interface:EventBusЗарегистрировать подписку на событие. -
register
@NotNull public <E extends Event> @NotNull RegisteredSubscription register(@NotNull @NotNull Class<E> type, @NotNull @NotNull PostOrder order, @NotNull @NotNull Consumer<@NotNull E> subscription) Description copied from interface:EventBusЗарегистрировать подписку на событие.
-