Class PluginCommand

    • Constructor Detail

      • PluginCommand

        protected PluginCommand​(@NotNull
                                @NotNull String name,
                                @NotNull
                                @NotNull Plugin owner)
    • Method Detail

      • execute

        public boolean execute​(@NotNull
                               @NotNull CommandSender sender,
                               @NotNull
                               @NotNull String commandLabel,
                               @NotNull
                               @NotNull String[] args)
        Executes the command, returning its success
        Specified by:
        execute in class Command
        Parameters:
        sender - Source object which is executing this command
        commandLabel - The alias of the command used
        args - All arguments passed to the command, split via ' '
        Returns:
        true if the command was successful, otherwise false
      • setExecutor

        public void setExecutor​(@Nullable
                                @Nullable CommandExecutor executor)
        Sets the CommandExecutor to run when parsing this command
        Parameters:
        executor - New executor to run
      • getExecutor

        @NotNull
        public @NotNull CommandExecutor getExecutor()
        Gets the CommandExecutor associated with this command
        Returns:
        CommandExecutor object linked to this command
      • setTabCompleter

        public void setTabCompleter​(@Nullable
                                    @Nullable TabCompleter completer)
        Sets the TabCompleter to run when tab-completing this command.

        If no TabCompleter is specified, and the command's executor implements TabCompleter, then the executor will be used for tab completion.

        Parameters:
        completer - New tab completer
      • getTabCompleter

        @Nullable
        public @Nullable TabCompleter getTabCompleter()
        Gets the TabCompleter associated with this command.
        Returns:
        TabCompleter object linked to this command
      • tabComplete

        @NotNull
        public List<String> tabComplete​(@NotNull
                                        @NotNull CommandSender sender,
                                        @NotNull
                                        @NotNull String alias,
                                        @NotNull
                                        @NotNull String[] args)
                                 throws CommandException,
                                        IllegalArgumentException
        Executed on tab completion for this command, returning a list of options the player can tab through.

        Delegates to the tab completer if present.

        If it is not present or returns null, will delegate to the current command executor if it implements TabCompleter. If a non-null list has not been found, will default to standard player name completion in Command.tabComplete(CommandSender, String, String[]).

        This method does not consider permissions.

        Overrides:
        tabComplete in class Command
        Parameters:
        sender - Source object which is executing this command
        alias - the alias being used
        args - All arguments passed to the command, split via ' '
        Returns:
        a list of tab-completions for the specified arguments. This will never be null. List may be immutable.
        Throws:
        CommandException - if the completer or executor throw an exception during the process of tab-completing.
        IllegalArgumentException - if sender, alias, or args is null