RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
DataBus.java
1package com.osroyale.game.event.bus;
2
3import com.osroyale.game.event.Event;
4import com.osroyale.game.event.listener.EventListener;
5
6import java.util.LinkedHashSet;
7import java.util.Set;
8
61
62public final class DataBus {
63
67 private static final Set<EventListener> listeners = new LinkedHashSet<>();
68
72 private static final DataBus INSTANCE = new DataBus();
73
77 private DataBus() {
78
79 }
80
84 public static DataBus getInstance() {
85 return INSTANCE;
86 }
87
97 public void subscribe(EventListener listener) {
98 listeners.add(listener);
99 }
100
111 public void unsubscribe(EventListener listener) {
112 listeners.remove(listener);
113 }
114
124 public void publish(Event event) {
125 listeners.forEach(it -> it.accept(event));
126 }
127
128}
void unsubscribe(EventListener listener)
Definition DataBus.java:111
void subscribe(EventListener listener)
Definition DataBus.java:97