Package org.bukkit.command
Class PluginCommand
- java.lang.Object
-
- org.bukkit.command.Command
-
- org.bukkit.command.PluginCommand
-
- All Implemented Interfaces:
PluginIdentifiableCommand
public final class PluginCommand extends Command implements PluginIdentifiableCommand
Represents aCommand
belonging to a plugin
-
-
Field Summary
-
Fields inherited from class org.bukkit.command.Command
description, timings, usageMessage
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
PluginCommand(@NotNull String name, @NotNull Plugin owner)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
execute(@NotNull CommandSender sender, @NotNull String commandLabel, @NotNull String[] args)
Executes the command, returning its success@NotNull CommandExecutor
getExecutor()
Gets theCommandExecutor
associated with this command@NotNull Plugin
getPlugin()
Gets the owner of this PluginCommand@Nullable TabCompleter
getTabCompleter()
Gets theTabCompleter
associated with this command.void
setExecutor(@Nullable CommandExecutor executor)
Sets theCommandExecutor
to run when parsing this commandvoid
setTabCompleter(@Nullable TabCompleter completer)
Sets theTabCompleter
to run when tab-completing this command.List<String>
tabComplete(@NotNull CommandSender sender, @NotNull String alias, @NotNull String[] args)
Executed on tab completion for this command, returning a list of options the player can tab through.String
toString()
-
Methods inherited from class org.bukkit.command.Command
broadcastCommandMessage, broadcastCommandMessage, getAliases, getDescription, getLabel, getName, getPermission, getPermissionMessage, getUsage, isRegistered, register, setAliases, setDescription, setLabel, setName, setPermission, setPermissionMessage, setUsage, tabComplete, testPermission, testPermissionSilent, unregister
-
-
-
-
Method Detail
-
execute
public boolean execute(@NotNull @NotNull CommandSender sender, @NotNull @NotNull String commandLabel, @NotNull @NotNull String[] args)
Executes the command, returning its success
-
setExecutor
public void setExecutor(@Nullable @Nullable CommandExecutor executor)
Sets theCommandExecutor
to run when parsing this command- Parameters:
executor
- New executor to run
-
getExecutor
@NotNull public @NotNull CommandExecutor getExecutor()
Gets theCommandExecutor
associated with this command- Returns:
- CommandExecutor object linked to this command
-
setTabCompleter
public void setTabCompleter(@Nullable @Nullable TabCompleter completer)
Sets theTabCompleter
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 theTabCompleter
associated with this command.- Returns:
- TabCompleter object linked to this command
-
getPlugin
@NotNull public @NotNull Plugin getPlugin()
Gets the owner of this PluginCommand- Specified by:
getPlugin
in interfacePluginIdentifiableCommand
- Returns:
- Plugin that owns 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 inCommand.tabComplete(CommandSender, String, String[])
.This method does not consider permissions.
- Overrides:
tabComplete
in classCommand
- Parameters:
sender
- Source object which is executing this commandalias
- the alias being usedargs
- 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
-
-