Interface CommandManager


  • public interface CommandManager
    Handles the registration and execution of commands.
    • Method Detail

      • register

        @Deprecated
        void register​(Command command,
                      String... aliases)
        Deprecated.
        This method requires at least one alias, but this is only enforced at runtime. Prefer register(String, Command, String...)
        Registers the specified command with the specified aliases.
        Parameters:
        command - the command to register
        aliases - the command aliases
        Throws:
        IllegalArgumentException - if one of the given aliases is already registered
      • register

        void register​(String alias,
                      Command command,
                      String... otherAliases)
        Registers the specified command with the specified aliases.
        Parameters:
        alias - the first command alias
        command - the command to register
        otherAliases - additional aliases
        Throws:
        IllegalArgumentException - if one of the given aliases is already registered
      • 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 metadata
        command - the command to register
        Throws:
        IllegalArgumentException - if one of the given aliases is already registered
      • unregister

        void unregister​(String alias)
        Unregisters the specified command alias from the manager, if registered.
        Parameters:
        alias - the command alias to unregister
      • execute

        @Deprecated
        boolean execute​(CommandSource source,
                        String cmdLine)
        Deprecated.
        this method blocks the current thread during the event call and the command execution. Prefer executeAsync(CommandSource, String) instead.
        Attempts to execute a command from the given cmdLine in a blocking fashion.
        Parameters:
        source - the source to execute the command for
        cmdLine - the command to run
        Returns:
        true if the command was found and executed
      • executeImmediately

        @Deprecated
        boolean executeImmediately​(CommandSource source,
                                   String cmdLine)
        Deprecated.
        this methods blocks the current thread during the command execution. Prefer executeImmediatelyAsync(CommandSource, String) instead.
        Attempts to execute a command from the given cmdLine without firing a CommandExecuteEvent in a blocking fashion.
        Parameters:
        source - the source to execute the command for
        cmdLine - the command to run
        Returns:
        true if the command was found and executed
      • executeAsync

        CompletableFuture<Boolean> executeAsync​(CommandSource source,
                                                String cmdLine)
        Attempts to asynchronously execute a command from the given cmdLine.
        Parameters:
        source - the source to execute the command for
        cmdLine - 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 given cmdLine without firing a CommandExecuteEvent.
        Parameters:
        source - the source to execute the command for
        cmdLine - 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.
      • 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