Package com.velocitypowered.api.command
Interface CommandManager
-
public interface CommandManagerHandles the registration and execution of commands.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description CompletableFuture<Boolean>executeAsync(CommandSource source, String cmdLine)Attempts to asynchronously execute a command from the givencmdLine.CompletableFuture<Boolean>executeImmediatelyAsync(CommandSource source, String cmdLine)Attempts to asynchronously execute a command from the givencmdLinewithout firing aCommandExecuteEvent.Collection<String>getAliases()Returns an immutable collection of the case-insensitive aliases registered on this manager.@Nullable CommandMetagetCommandMeta(String alias)Retrieves theCommandMetafrom the specified command alias, if registered.booleanhasCommand(String alias)Returns whether the given alias is registered on this manager.CommandMeta.BuildermetaBuilder(BrigadierCommand command)Returns a builder to create aCommandMetafor the given Brigadier command.CommandMeta.BuildermetaBuilder(String alias)Returns a builder to create aCommandMetawith the given alias.voidregister(BrigadierCommand command)Registers the specified Brigadier command.voidregister(CommandMeta meta, Command command)Registers the specified command with the given metadata.default voidregister(String alias, Command command, String... otherAliases)Registers the specified command with the specified aliases.voidunregister(CommandMeta meta)Unregisters the specified command from the manager, if registered.voidunregister(String alias)Unregisters the specified command alias from the manager, if registered.
-
-
-
Method Detail
-
metaBuilder
CommandMeta.Builder metaBuilder(String alias)
Returns a builder to create aCommandMetawith the given alias.- Parameters:
alias- the first command alias- Returns:
- a
CommandMetabuilder
-
metaBuilder
CommandMeta.Builder metaBuilder(BrigadierCommand command)
Returns a builder to create aCommandMetafor the given Brigadier command.- Parameters:
command- the command- Returns:
- a
CommandMetabuilder
-
register
default void register(String alias, Command command, String... otherAliases)
Registers the specified command with the specified aliases.- Parameters:
alias- the first command aliascommand- the command to registerotherAliases- additional aliases- Throws:
IllegalArgumentException- if one of the given aliases is already registered, or the given command does not implement a registrableCommandsubinterface- See Also:
for a list of registrable subinterfaces
-
register
void register(BrigadierCommand command)
Registers the specified Brigadier command.- Parameters:
command- the command to register- Throws:
IllegalArgumentException- if the node alias is already registered
-
register
void register(CommandMeta meta, Command command)
Registers the specified command with the given metadata.- Parameters:
meta- the command metadatacommand- the command to register- Throws:
IllegalArgumentException- if one of the given aliases is already registered, or the given command does not implement a registrableCommandsubinterface- See Also:
for a list of registrable subinterfaces
-
unregister
void unregister(String alias)
Unregisters the specified command alias from the manager, if registered.- Parameters:
alias- the command alias to unregister
-
unregister
void unregister(CommandMeta meta)
Unregisters the specified command from the manager, if registered.- Parameters:
meta- the command to unregister
-
getCommandMeta
@Nullable CommandMeta getCommandMeta(String alias)
Retrieves theCommandMetafrom the specified command alias, if registered.- Parameters:
alias- the command alias to lookup- Returns:
- an
CommandMetaof the alias
-
executeAsync
CompletableFuture<Boolean> executeAsync(CommandSource source, String cmdLine)
Attempts to asynchronously execute a command from the givencmdLine.- Parameters:
source- the source to execute the command forcmdLine- the command to run- Returns:
- a future that may be completed with the result of the command execution. Can be completed exceptionally if an exception is thrown during execution.
-
executeImmediatelyAsync
CompletableFuture<Boolean> executeImmediatelyAsync(CommandSource source, String cmdLine)
Attempts to asynchronously execute a command from the givencmdLinewithout firing aCommandExecuteEvent.- Parameters:
source- the source to execute the command forcmdLine- the command to run- Returns:
- a future that may be completed with the result of the command execution. Can be completed exceptionally if an exception is thrown during execution.
-
getAliases
Collection<String> getAliases()
Returns an immutable collection of the case-insensitive aliases registered on this manager.- Returns:
- the registered aliases
-
hasCommand
boolean hasCommand(String alias)
Returns whether the given alias is registered on this manager.- Parameters:
alias- the command alias to check- Returns:
- true if the alias is registered; false otherwise
-
-