![JAR search and dependency download from the Maven repository](/logo.png)
com.subgraph.orchid.events.EventManager Maven / Gradle / Ivy
package com.subgraph.orchid.events;
import java.util.ArrayList;
import java.util.List;
public class EventManager {
private final List handlers = new ArrayList();
public void addListener(final EventHandler listener) {
synchronized(this) {
handlers.add(listener);
}
}
public void removeListener(final EventHandler listener) {
synchronized(this) {
handlers.remove(listener);
}
}
public void fireEvent(final Event event) {
EventHandler[] handlersCopy;
synchronized(this) {
handlersCopy = new EventHandler[handlers.size()];
handlers.toArray(handlersCopy);
}
for(EventHandler handler : handlersCopy) {
handler.handleEvent(event);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy