Removed InvUI#onDisable

This commit is contained in:
NichtStudioCode 2021-02-08 18:03:58 +01:00
parent a973701bbc
commit 849320e338

@ -1,6 +1,10 @@
package de.studiocode.invui; package de.studiocode.invui;
import de.studiocode.invui.util.reflection.ReflectionUtils; import de.studiocode.invui.util.reflection.ReflectionUtils;
import org.bukkit.Bukkit;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.server.PluginDisableEvent;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import java.util.ArrayList; import java.util.ArrayList;
@ -8,7 +12,7 @@ import java.util.List;
import static de.studiocode.invui.util.reflection.ReflectionRegistry.PLUGIN_CLASS_LOADER_PLUGIN_FIELD; import static de.studiocode.invui.util.reflection.ReflectionRegistry.PLUGIN_CLASS_LOADER_PLUGIN_FIELD;
public class InvUI { public class InvUI implements Listener {
private static InvUI instance; private static InvUI instance;
@ -16,7 +20,8 @@ public class InvUI {
private final Plugin plugin; private final Plugin plugin;
public InvUI() { public InvUI() {
this.plugin = ReflectionUtils.getFieldValue(PLUGIN_CLASS_LOADER_PLUGIN_FIELD, getClass().getClassLoader()); plugin = ReflectionUtils.getFieldValue(PLUGIN_CLASS_LOADER_PLUGIN_FIELD, getClass().getClassLoader());
Bukkit.getPluginManager().registerEvents(this, plugin);
} }
public static InvUI getInstance() { public static InvUI getInstance() {
@ -31,8 +36,11 @@ public class InvUI {
disableHandlers.add(runnable); disableHandlers.add(runnable);
} }
public void onDisable() { @EventHandler
public void handlePluginDisable(PluginDisableEvent event) {
if (event.getPlugin().equals(plugin)) {
disableHandlers.forEach(Runnable::run); disableHandlers.forEach(Runnable::run);
} }
}
} }