diff --git a/src/main/java/net/viper/status/module/ModuleManager.java b/src/main/java/net/viper/status/module/ModuleManager.java deleted file mode 100644 index ed0badc..0000000 --- a/src/main/java/net/viper/status/module/ModuleManager.java +++ /dev/null @@ -1,60 +0,0 @@ -package net.viper.status.module; - -import net.md_5.bungee.api.plugin.Plugin; - -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -/** - * Verwaltet alle geladenen Module. - */ -public class ModuleManager { - - private final Map modules = new HashMap<>(); - - public void registerModule(Module module) { - modules.put(module.getName().toLowerCase(), module); - } - - public void enableAll(Plugin plugin) { - for (Module module : modules.values()) { - try { - plugin.getLogger().info("Aktiviere Modul: " + module.getName() + "..."); - module.onEnable(plugin); - } catch (Exception e) { - plugin.getLogger().severe("Fehler beim Aktivieren von Modul " + module.getName() + ": " + e.getMessage()); - e.printStackTrace(); - } - } - } - - public void disableAll(Plugin plugin) { - for (Module module : modules.values()) { - try { - plugin.getLogger().info("Deaktiviere Modul: " + module.getName() + "..."); - module.onDisable(plugin); - } catch (Exception e) { - plugin.getLogger().warning("Fehler beim Deaktivieren von Modul " + module.getName()); - } - } - modules.clear(); - } - - /** - * Ermöglicht anderen Komponenten (wie dem WebServer) Zugriff auf spezifische Module. - */ - public Module getModule(String name) { - return modules.get(name.toLowerCase()); - } - - @SuppressWarnings("unchecked") - public T getModule(Class clazz) { - for (Module m : modules.values()) { - if (clazz.isInstance(m)) { - return (T) m; - } - } - return null; - } -} \ No newline at end of file