From a0932c7ca87608a074d00c8a4282b9ac106135e6 Mon Sep 17 00:00:00 2001 From: Hutch79 <42042811+Hutch79@users.noreply.github.com> Date: Mon, 9 Sep 2024 13:42:18 +0200 Subject: [PATCH] Removed DI Container --- pom.xml | 7 +---- .../java/ch/hutch79/application/FCommand.java | 30 +++++++++++++------ .../hutch79/application/command/Command.java | 2 -- .../configManager/ConfigMigrator.java | 8 ++--- .../configManager/Migrations/MigrationV1.java | 1 - .../application/events/EventHandler.java | 2 -- .../application/events/EventRecivers.java | 15 ++++------ .../guice/DiContainerInstances.java | 28 ----------------- .../ch/hutch79/domain/configs/v1/Config.java | 2 ++ 9 files changed, 31 insertions(+), 64 deletions(-) delete mode 100644 src/main/java/ch/hutch79/application/guice/DiContainerInstances.java diff --git a/pom.xml b/pom.xml index 91b5116..9173551 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ ch.hutch79 F-Command - 2.6.1 + 2.6.2 jar F-Command @@ -127,11 +127,6 @@ jackson-dataformat-yaml 2.13.0 - - com.google.inject - guice - 7.0.0 - org.junit junit-bom diff --git a/src/main/java/ch/hutch79/application/FCommand.java b/src/main/java/ch/hutch79/application/FCommand.java index 2f99d34..0457cdf 100644 --- a/src/main/java/ch/hutch79/application/FCommand.java +++ b/src/main/java/ch/hutch79/application/FCommand.java @@ -4,11 +4,10 @@ import ch.hutch79.application.command.CommandTab; import ch.hutch79.application.configManager.ConfigManager; import ch.hutch79.application.configManager.ConfigMigrator; +import ch.hutch79.application.events.EventHandler; import ch.hutch79.application.events.EventRecivers; -import ch.hutch79.application.guice.DiContainerInstances; import ch.hutch79.application.messages.ConsoleMessanger; -import com.google.inject.Guice; -import com.google.inject.Injector; +import ch.hutch79.domain.configs.v1.Config; import org.bukkit.Bukkit; import org.bukkit.entity.Player; import org.bukkit.plugin.PluginDescriptionFile; @@ -18,11 +17,15 @@ import com.jeff_media.updatechecker.UpdateCheckSource; import com.jeff_media.updatechecker.UserAgentBuilder; +import java.io.FileNotFoundException; +import java.io.IOException; import java.util.Objects; public final class FCommand extends JavaPlugin { PluginDescriptionFile pdf = this.getDescription(); private static FCommand instance; + private static ConfigManager configManager; + private static EventHandler eventHandler; private boolean isPlaceholderApiInstalled = false; @Override @@ -30,14 +33,19 @@ public void onEnable() { getConfig().options().copyDefaults(); saveDefaultConfig(); instance = this; - Injector injector = Guice.createInjector(new DiContainerInstances(instance)); - injector.getInstance(ConfigMigrator.class); - - new ConsoleMessanger(injector.getInstance(ConfigManager.class)); // Give ConfigManager Instance to ConsoleMessanger + configManager = new ConfigManager(instance.getDataFolder()); + try { + configManager.loadConfig(Config.class, "config.yml"); + } catch (FileNotFoundException e) { + throw new RuntimeException(e); + } + new ConsoleMessanger(configManager); - Objects.requireNonNull(getCommand("fcommand")).setExecutor(injector.getInstance(Command.class)); + Objects.requireNonNull(getCommand("fcommand")).setExecutor(new Command(configManager)); Objects.requireNonNull(getCommand("fcommand")).setTabCompleter(new CommandTab()); - Bukkit.getPluginManager().registerEvents(injector.getInstance(EventRecivers.class), this); + + eventHandler = new EventHandler(configManager); + Bukkit.getPluginManager().registerEvents(new EventRecivers(eventHandler), this); new Metrics(this, 17738); // bStats @@ -102,4 +110,8 @@ public String replacePlaceholders(Player player, String input) { } return input; } + + public PluginDescriptionFile getPdf() { + return pdf; + } } diff --git a/src/main/java/ch/hutch79/application/command/Command.java b/src/main/java/ch/hutch79/application/command/Command.java index e5566a9..309488d 100644 --- a/src/main/java/ch/hutch79/application/command/Command.java +++ b/src/main/java/ch/hutch79/application/command/Command.java @@ -2,7 +2,6 @@ import ch.hutch79.application.configManager.ConfigManager; import ch.hutch79.domain.configs.v1.Config; -import jakarta.inject.Inject; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.jetbrains.annotations.NotNull; @@ -13,7 +12,6 @@ public class Command implements CommandExecutor { private final ConfigManager configManager; - @Inject public Command(ConfigManager _configManager) { configManager = _configManager; } diff --git a/src/main/java/ch/hutch79/application/configManager/ConfigMigrator.java b/src/main/java/ch/hutch79/application/configManager/ConfigMigrator.java index 05597f2..1950848 100644 --- a/src/main/java/ch/hutch79/application/configManager/ConfigMigrator.java +++ b/src/main/java/ch/hutch79/application/configManager/ConfigMigrator.java @@ -3,9 +3,6 @@ import ch.hutch79.application.configManager.Migrations.MigrationV1; import ch.hutch79.domain.configs.v1.Config; import ch.hutch79.application.messages.ConsoleMessanger; -import com.google.inject.Inject; -import com.google.inject.Injector; - import java.io.File; import java.io.IOException; import java.nio.file.Paths; @@ -13,14 +10,13 @@ public class ConfigMigrator { - @Inject - public ConfigMigrator(Injector injector, ConfigManager configManager) throws IOException { + public ConfigMigrator(ConfigManager configManager) throws IOException { ConsoleMessanger messanger = new ConsoleMessanger(); try { configManager.loadConfig(Config.class, "config.yml"); } catch (Exception e1) { try { - var migrationV1 = injector.getInstance(MigrationV1.class); + var migrationV1 = new MigrationV1(); Config configNew = migrationV1.configMigration(Paths.get("plugins" + File.separator + "F-Command")); configManager.writeConfig(configNew, "config.yml"); } catch (Exception e2) { diff --git a/src/main/java/ch/hutch79/application/configManager/Migrations/MigrationV1.java b/src/main/java/ch/hutch79/application/configManager/Migrations/MigrationV1.java index 5dae53e..e953962 100644 --- a/src/main/java/ch/hutch79/application/configManager/Migrations/MigrationV1.java +++ b/src/main/java/ch/hutch79/application/configManager/Migrations/MigrationV1.java @@ -5,7 +5,6 @@ import ch.hutch79.application.messages.ConsoleMessanger; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.YamlConfiguration; - import java.io.File; import java.io.IOException; import java.nio.file.Files; diff --git a/src/main/java/ch/hutch79/application/events/EventHandler.java b/src/main/java/ch/hutch79/application/events/EventHandler.java index 1871971..d52d7f9 100644 --- a/src/main/java/ch/hutch79/application/events/EventHandler.java +++ b/src/main/java/ch/hutch79/application/events/EventHandler.java @@ -8,7 +8,6 @@ import ch.hutch79.application.FCommand; import ch.hutch79.application.configManager.ConfigManager; import ch.hutch79.application.messages.ConsoleMessanger; -import com.google.inject.Inject; import org.bukkit.Bukkit; import org.bukkit.entity.Player; import org.bukkit.event.Event; @@ -25,7 +24,6 @@ public class EventHandler { private Player player; private ConsoleMessanger debug = new ConsoleMessanger(true); - @Inject public EventHandler(ConfigManager configManager) { this.configManager = configManager; diff --git a/src/main/java/ch/hutch79/application/events/EventRecivers.java b/src/main/java/ch/hutch79/application/events/EventRecivers.java index 480ade7..84fdd37 100644 --- a/src/main/java/ch/hutch79/application/events/EventRecivers.java +++ b/src/main/java/ch/hutch79/application/events/EventRecivers.java @@ -1,8 +1,6 @@ package ch.hutch79.application.events; import ch.hutch79.application.messages.ConsoleMessanger; -import com.google.inject.Inject; -import com.google.inject.Injector; import org.bukkit.event.Listener; import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.event.inventory.InventoryType; @@ -10,22 +8,20 @@ import org.bukkit.event.player.PlayerSwapHandItemsEvent; public class EventRecivers implements Listener { - private final Injector injector; + private final EventHandler eventHandler; private Boolean ignoreEvent = false; ConsoleMessanger debug = new ConsoleMessanger(true); - @Inject - public EventRecivers(Injector injector) { + public EventRecivers(EventHandler eventHandler) { - this.injector = injector; + this.eventHandler = eventHandler; } @org.bukkit.event.EventHandler private void onSwapHandItemsEvent(PlayerSwapHandItemsEvent e) { debug.message("PlayerSwapHandItemsEvent detected"); - EventHandler eventHandler = injector.getInstance(EventHandler.class); - eventHandler.handler(e); + this.eventHandler.handler(e); } @org.bukkit.event.EventHandler private void inventoryClickEvent(InventoryClickEvent e) { @@ -40,8 +36,7 @@ private void dropItemEvent(PlayerDropItemEvent e) { debug.message("PlayerDropItemEvent detected: " + e.getPlayer()); if (!ignoreEvent) { debug.message("Executed"); - EventHandler eventHandler = injector.getInstance(EventHandler.class); - eventHandler.handler(e); + this.eventHandler.handler(e); } else { debug.message("Ignored"); diff --git a/src/main/java/ch/hutch79/application/guice/DiContainerInstances.java b/src/main/java/ch/hutch79/application/guice/DiContainerInstances.java deleted file mode 100644 index 86066ef..0000000 --- a/src/main/java/ch/hutch79/application/guice/DiContainerInstances.java +++ /dev/null @@ -1,28 +0,0 @@ -package ch.hutch79.application.guice; - -import ch.hutch79.application.FCommand; -import ch.hutch79.application.configManager.ConfigManager; -import com.google.inject.AbstractModule; -import com.google.inject.Provides; -import jakarta.inject.Singleton; - -public class DiContainerInstances extends AbstractModule { - private static FCommand fCommand; - private static ConfigManager configManager; - public DiContainerInstances(FCommand _fCommand) { - fCommand = _fCommand; - configManager = new ConfigManager(fCommand.getDataFolder()); - } - - @Provides - @Singleton - static FCommand provideFCommand() { - return fCommand; - } - - @Provides - @Singleton - static ConfigManager configManagerProvider() { - return configManager; - } -} diff --git a/src/main/java/ch/hutch79/domain/configs/v1/Config.java b/src/main/java/ch/hutch79/domain/configs/v1/Config.java index e7d84a1..f7ed25c 100644 --- a/src/main/java/ch/hutch79/domain/configs/v1/Config.java +++ b/src/main/java/ch/hutch79/domain/configs/v1/Config.java @@ -1,5 +1,7 @@ package ch.hutch79.domain.configs.v1; +import org.bukkit.Bukkit; + import java.util.HashMap; import java.util.Map;