diff --git a/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/BaseJavaPlugin.java b/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/BaseJavaPlugin.java index 07f655e..afec6d7 100644 --- a/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/BaseJavaPlugin.java +++ b/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/BaseJavaPlugin.java @@ -8,7 +8,7 @@ import java.util.Map; import java.util.Set; import java.util.stream.Collectors; -import org.axolotsh.pluginutils.dependency_injection.entities.ICommand; +import org.axolotsh.pluginutils.dependency_injection.entities.BaseCommand; import org.axolotsh.pluginutils.dependency_injection.entities.IConfiguration; import org.axolotsh.pluginutils.dependency_injection.entities.ITask; import org.bukkit.Server; @@ -44,7 +44,7 @@ public abstract class BaseJavaPlugin extends JavaPlugin { protected Set listeners; @Inject - protected Set commands; + protected Set commands; @Inject protected Set configurations; @@ -93,14 +93,14 @@ public abstract class BaseJavaPlugin extends JavaPlugin { } } - private Map> mapSubcommands() { - Map, ICommand> commandsByClazz = commands.stream() + private Map> mapSubcommands() { + Map, BaseCommand> commandsByClazz = commands.stream() .collect(Collectors.toMap( x -> x.getClass(), cmd -> cmd, (existing, replacement) -> existing)); - Map> result = new HashMap<>(); + Map> result = new HashMap<>(); for (var command : commands) result.put(command, new HashSet<>()); diff --git a/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/PluginModule.java b/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/PluginModule.java index 5028874..da5e2d7 100644 --- a/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/PluginModule.java +++ b/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/PluginModule.java @@ -1,6 +1,6 @@ package org.axolotsh.pluginutils.dependency_injection; -import org.axolotsh.pluginutils.dependency_injection.entities.ICommand; +import org.axolotsh.pluginutils.dependency_injection.entities.BaseCommand; import org.axolotsh.pluginutils.dependency_injection.entities.IConfiguration; import org.axolotsh.pluginutils.dependency_injection.entities.ITask; import org.bukkit.event.Listener; @@ -13,8 +13,8 @@ public abstract class PluginModule extends AbstractModule { return Multibinder.newSetBinder(binder(), Listener.class); } - protected Multibinder createCommandsMultibinder() { - return Multibinder.newSetBinder(binder(), ICommand.class); + protected Multibinder createCommandsMultibinder() { + return Multibinder.newSetBinder(binder(), BaseCommand.class); } protected Multibinder createConfigurationMultibinder() { diff --git a/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/entities/ICommand.java b/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/entities/BaseCommand.java similarity index 52% rename from plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/entities/ICommand.java rename to plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/entities/BaseCommand.java index fb8d5fa..bf716fe 100644 --- a/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/entities/ICommand.java +++ b/plugin-utils/src/main/java/org/axolotsh/pluginutils/dependency_injection/entities/BaseCommand.java @@ -7,11 +7,13 @@ import org.jetbrains.annotations.Nullable; import dev.jorel.commandapi.CommandAPICommand; -public interface ICommand { - public Collection permissions(); +public abstract class BaseCommand { + public abstract Collection permissions(); - public CommandAPICommand command(); + public abstract CommandAPICommand command(); @Nullable - public Class parentCommand(); + public Class parentCommand() { + return null; + } }