Package org.geysermc.event.bus.impl
Class EventBusImpl<E,S extends Subscriber<? extends E>>
- java.lang.Object
-
- org.geysermc.event.bus.impl.EventBusImpl<E,S>
-
public abstract class EventBusImpl<E,S extends Subscriber<? extends E>> extends java.lang.Object implements EventBus<E,S>
-
-
Constructor Summary
Constructors Constructor Description EventBusImpl()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected static <T extends U,U>
java.util.Set<T>castGenericSet(java.util.Set<U> o)protected <T extends Subscriber<U>,U>
java.util.Set<T>eventSubscribers(java.lang.Class<U> eventType)protected <T extends E>
voidfindSubscriptions(@NonNull java.lang.Object listener, TriConsumer<java.lang.Class<T>,Subscribe,java.util.function.BiConsumer<java.lang.Object,T>> consumer)FireResultfire(@NonNull E event)Fires the given event and log all exceptions that occur while executing this event.FireResultfireSilently(@NonNull E event)Fires the given event silently.protected abstract <T extends E,B extends Subscriber<T>>
BmakeSubscription(@NonNull java.lang.Class<T> eventClass, @NonNull java.util.function.Consumer<T> handler, @NonNull PostOrder postOrder)protected abstract <H,T extends E,B extends Subscriber<T>>
BmakeSubscription(@NonNull java.lang.Class<T> eventClass, @NonNull Subscribe subscribe, @NonNull H listener, @NonNull java.util.function.BiConsumer<H,T> handler)voidregister(@NonNull java.lang.Object listener)Registers events for the given listener.protected <T extends E>
voidregister(java.lang.Class<T> eventClass, S subscriber)protected java.util.List<S>sortedSubscribers(java.lang.Class<?> eventClass)<T extends E,U extends Subscriber<T>>
@NonNull Usubscribe(@NonNull java.lang.Class<T> eventClass, @NonNull java.util.function.Consumer<T> consumer)<T extends E,U extends Subscriber<T>>
@NonNull Usubscribe(@NonNull java.lang.Class<T> eventClass, @NonNull java.util.function.Consumer<T> consumer, @NonNull PostOrder postOrder)<T extends E>
@NonNull java.util.Set<? extends Subscriber<T>>subscribers(@NonNull java.lang.Class<T> eventClass)Gets the subscriptions for the given event class.voidunregisterAll()voidunsubscribe(@NonNull S subscription)Unsubscribes the givenSubscriber.protected voidunsubscribeAll()protected voidunsubscribeMany(java.lang.Iterable<S> subscriptions)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.geysermc.event.bus.BaseBus
fire, fireSilently, unsubscribe
-
-
-
-
Method Detail
-
makeSubscription
protected abstract <H,T extends E,B extends Subscriber<T>> B makeSubscription(@NonNull java.lang.Class<T> eventClass, @NonNull Subscribe subscribe, @NonNull H listener, @NonNull java.util.function.BiConsumer<H,T> handler)
-
makeSubscription
protected abstract <T extends E,B extends Subscriber<T>> B makeSubscription(@NonNull java.lang.Class<T> eventClass, @NonNull java.util.function.Consumer<T> handler, @NonNull PostOrder postOrder)
-
register
public void register(@NonNull java.lang.Object listener)
Description copied from interface:EventBusRegisters events for the given listener.
-
subscribe
public <T extends E,U extends Subscriber<T>> @NonNull U subscribe(@NonNull java.lang.Class<T> eventClass, @NonNull java.util.function.Consumer<T> consumer)
-
subscribe
public <T extends E,U extends Subscriber<T>> @NonNull U subscribe(@NonNull java.lang.Class<T> eventClass, @NonNull java.util.function.Consumer<T> consumer, @NonNull PostOrder postOrder)
-
unregisterAll
public void unregisterAll()
- Specified by:
unregisterAllin interfaceEventBus<E,S extends Subscriber<? extends E>>
-
subscribers
public <T extends E> @NonNull java.util.Set<? extends Subscriber<T>> subscribers(@NonNull java.lang.Class<T> eventClass)
Description copied from interface:BaseBusGets the subscriptions for the given event class.- Specified by:
subscribersin interfaceBaseBus<E,S extends Subscriber<? extends E>>- Type Parameters:
T- the value- Parameters:
eventClass- the event class- Returns:
- the subscriptions for the event class
-
register
protected <T extends E> void register(java.lang.Class<T> eventClass, S subscriber)
-
findSubscriptions
protected <T extends E> void findSubscriptions(@NonNull java.lang.Object listener, TriConsumer<java.lang.Class<T>,Subscribe,java.util.function.BiConsumer<java.lang.Object,T>> consumer)
-
unsubscribe
public void unsubscribe(@NonNull S subscription)
Description copied from interface:BaseBusUnsubscribes the givenSubscriber.- Specified by:
unsubscribein interfaceBaseBus<E,S extends Subscriber<? extends E>>- Parameters:
subscription- the event subscription
-
unsubscribeMany
protected void unsubscribeMany(java.lang.Iterable<S> subscriptions)
-
unsubscribeAll
protected void unsubscribeAll()
-
fire
public FireResult fire(@NonNull E event)
Description copied from interface:BaseBusFires the given event and log all exceptions that occur while executing this event.- Specified by:
firein interfaceBaseBus<E,S extends Subscriber<? extends E>>- Parameters:
event- the event to fire
-
fireSilently
public FireResult fireSilently(@NonNull E event)
Description copied from interface:BaseBusFires the given event silently.- Specified by:
fireSilentlyin interfaceBaseBus<E,S extends Subscriber<? extends E>>- Parameters:
event- the event to fire- Returns:
- the result of firing the given event
-
sortedSubscribers
protected java.util.List<S> sortedSubscribers(java.lang.Class<?> eventClass)
-
eventSubscribers
protected <T extends Subscriber<U>,U> java.util.Set<T> eventSubscribers(java.lang.Class<U> eventType)
-
castGenericSet
protected static <T extends U,U> java.util.Set<T> castGenericSet(java.util.Set<U> o)
-
-