HTTPS
https://git.nageyqma.icu/nageyqma/blade-addons-next.git
SSH
git@git.nageyqma.icu:nageyqma/blade-addons-next.git
HTTPS 链接可直接 git clone;推送代码请使用 SSH。
123456789101112131415161718192021222324252627282930
package blade.addon.utils.events;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Predicate;
public class EventHandler<T> {
/**
* This class handles some specified Event
* to cancel the event if implemented return true
* else return false
*/
private final List<T> listeners = new ArrayList<>();
public void register(T listener) {
listeners.add(listener);
}
public boolean invoke(Predicate<T> action) {
if (listeners.isEmpty()) return false;
for (T listener : listeners) {
if (action.test(listener)) {
return true;
}
}
return false;
}
}