diff --git a/src/main/java/org/maxgamer/quickshop/api/command/CommandManager.java b/src/main/java/org/maxgamer/quickshop/api/command/CommandManager.java index 2976c68e9..b1b379783 100644 --- a/src/main/java/org/maxgamer/quickshop/api/command/CommandManager.java +++ b/src/main/java/org/maxgamer/quickshop/api/command/CommandManager.java @@ -59,33 +59,9 @@ public interface CommandManager { @NotNull String commandLabel, @NotNull String[] cmdArg); - boolean checkPermissions(CommandSender sender, String commandLabel, String[] cmdArg, List permissionList, PermissionType permissionType, Action action); - - - boolean isAdapt(CommandContainer container, CommandSender sender); - @Nullable List onTabComplete( @NotNull CommandSender sender, @NotNull Command command, @NotNull String commandLabel, @NotNull String[] cmdArg); - - enum Action { - EXECUTE("execute"), - TAB_COMPLETE("tab-complete"); - final String name; - - Action(String name) { - this.name = name; - } - - public String getName() { - return name; - } - } - - enum PermissionType { - REQUIRE, - SELECTIVE - } } diff --git a/src/main/java/org/maxgamer/quickshop/command/SimpleCommandManager.java b/src/main/java/org/maxgamer/quickshop/command/SimpleCommandManager.java index e6921fc9e..5de1a47e6 100644 --- a/src/main/java/org/maxgamer/quickshop/command/SimpleCommandManager.java +++ b/src/main/java/org/maxgamer/quickshop/command/SimpleCommandManager.java @@ -423,11 +423,11 @@ public class SimpleCommandManager implements CommandManager, TabCompleter, Comma } List requirePermissions = container.getPermissions(); List selectivePermissions = container.getSelectivePermissions(); - if (!checkPermissions(sender, commandLabel, passThroughArgs, requirePermissions, CommandManager.PermissionType.REQUIRE, CommandManager.Action.EXECUTE)) { + if (!checkPermissions(sender, commandLabel, passThroughArgs, requirePermissions, SimpleCommandManager.PermissionType.REQUIRE, SimpleCommandManager.Action.EXECUTE)) { plugin.text().of(sender, "no-permission").send(); return true; } - if (!checkPermissions(sender, commandLabel, passThroughArgs, selectivePermissions, CommandManager.PermissionType.SELECTIVE, CommandManager.Action.EXECUTE)) { + if (!checkPermissions(sender, commandLabel, passThroughArgs, selectivePermissions, SimpleCommandManager.PermissionType.SELECTIVE, SimpleCommandManager.Action.EXECUTE)) { plugin.text().of(sender, "no-permission").send(); return true; } @@ -449,12 +449,11 @@ public class SimpleCommandManager implements CommandManager, TabCompleter, Comma return (T2) type; } - @Override - public boolean checkPermissions(CommandSender sender, String commandLabel, String[] cmdArg, List permissionList, CommandManager.PermissionType permissionType, CommandManager.Action action) { + public boolean checkPermissions(CommandSender sender, String commandLabel, String[] cmdArg, List permissionList, SimpleCommandManager.PermissionType permissionType, SimpleCommandManager.Action action) { if (permissionList == null || permissionList.isEmpty()) { return true; } - if (permissionType == CommandManager.PermissionType.REQUIRE) { + if (permissionType == SimpleCommandManager.PermissionType.REQUIRE) { for (String requirePermission : permissionList) { if (requirePermission != null && !requirePermission.isEmpty() @@ -494,7 +493,6 @@ public class SimpleCommandManager implements CommandManager, TabCompleter, Comma } - @Override public boolean isAdapt(CommandContainer container, CommandSender sender) { return container.getExecutorType().isInstance(sender); } @@ -528,10 +526,10 @@ public class SimpleCommandManager implements CommandManager, TabCompleter, Comma } List requirePermissions = container.getPermissions(); List selectivePermissions = container.getSelectivePermissions(); - if (!checkPermissions(sender, commandLabel, passThroughArgs, requirePermissions, CommandManager.PermissionType.REQUIRE, CommandManager.Action.TAB_COMPLETE)) { + if (!checkPermissions(sender, commandLabel, passThroughArgs, requirePermissions, SimpleCommandManager.PermissionType.REQUIRE, SimpleCommandManager.Action.TAB_COMPLETE)) { return Collections.emptyList(); } - if (!checkPermissions(sender, commandLabel, passThroughArgs, selectivePermissions, CommandManager.PermissionType.SELECTIVE, CommandManager.Action.TAB_COMPLETE)) { + if (!checkPermissions(sender, commandLabel, passThroughArgs, selectivePermissions, SimpleCommandManager.PermissionType.SELECTIVE, SimpleCommandManager.Action.TAB_COMPLETE)) { return Collections.emptyList(); } Util.debugLog("Tab-complete container: " + container.getPrefix()); @@ -542,4 +540,22 @@ public class SimpleCommandManager implements CommandManager, TabCompleter, Comma } } + enum Action { + EXECUTE("execute"), + TAB_COMPLETE("tab-complete"); + final String name; + + Action(String name) { + this.name = name; + } + + public String getName() { + return name; + } + } + + enum PermissionType { + REQUIRE, + SELECTIVE + } }