Package net.runelite.client.eventbus
Class EventBus
- java.lang.Object
-
- net.runelite.client.eventbus.EventBus
-
- Direct Known Subclasses:
DeferredEventBus
@ThreadSafe public class EventBus extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classEventBus.Subscriber
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidpost(java.lang.Object event)Posts provided event to all registered subscribers.<T> EventBus.Subscriberregister(java.lang.Class<T> clazz, java.util.function.Consumer<T> subFn, float priority)voidregister(java.lang.Object object)Registers subscriber to EventBus.voidunregister(java.lang.Object object)Unregisters all subscribed methods from provided subscriber object.voidunregister(EventBus.Subscriber sub)
-
-
-
Method Detail
-
register
public void register(@Nonnull java.lang.Object object)Registers subscriber to EventBus. All methods in subscriber and it's parent classes are checked forSubscribeannotation and then added to map of subscriptions.- Parameters:
object- subscriber to register- Throws:
java.lang.IllegalArgumentException- in case subscriber method name is wrong (correct format is 'on' + EventName
-
register
public <T> EventBus.Subscriber register(java.lang.Class<T> clazz, java.util.function.Consumer<T> subFn, float priority)
-
unregister
public void unregister(@Nonnull java.lang.Object object)Unregisters all subscribed methods from provided subscriber object.- Parameters:
object- object to unsubscribe from
-
unregister
public void unregister(EventBus.Subscriber sub)
-
post
public void post(@Nonnull java.lang.Object event)Posts provided event to all registered subscribers. Subscriber calls are invoked immediately, ordered by priority then their declaring class' name.- Parameters:
event- event to post
-
-