package org.dynmap; import java.util.HashMap; import java.util.Map; public class Events { public Map> events = new HashMap>(); @SuppressWarnings("unchecked") public void addListener(String eventName, Event.Listener listener) { Event genericEvent = events.get(eventName); Event event = null; if (genericEvent != null) { event = (Event)genericEvent; } else { events.put(eventName, event = new Event()); } event.addListener(listener); } @SuppressWarnings("unchecked") public void removeListener(String eventName, Event.Listener listener) { Event genericEvent = events.get(eventName); Event event = null; if (genericEvent != null) { event = (Event)genericEvent; event.removeListener(listener); } } @SuppressWarnings("unchecked") public void trigger(String eventName, T argument) { Event genericEvent = events.get(eventName); if (genericEvent == null) return; ((Event)genericEvent).trigger(argument); } }