package de.kentoj.kencommandapi; import de.kentoj.kencommandapi.api.CommandHandler; import de.kentoj.kencommandapi.api.literal.RootLiteral; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.jetbrains.annotations.NotNull; import java.util.Arrays; public class BukkitKenCommand extends Command { private final RootLiteral rootNode; private final CommandHandler commandHandler; protected BukkitKenCommand( CommandHandler commandHandler, RootLiteral rootLiteral ) { super(rootLiteral.getNames()[0]); this.commandHandler = commandHandler; this.rootNode = rootLiteral; this.setAliases(Arrays.asList(rootLiteral.getNames())); this.setPermission(rootLiteral.getPermission()); } @Override public boolean execute(@NotNull CommandSender sender, @NotNull String commandLabel, @NotNull String[] args) { commandHandler.invoke(rootNode, sender, args); return true; } }