Interface IServer

All Superinterfaces:
ICommandSender, IMessageable
All Known Implementing Classes:
SpigotServer

public interface IServer extends ICommandSender
Represents the server as an ICommandSender
  • Method Details

    • getPlayer

      default Optional<IPlayer> getPlayer()
      Description copied from interface: ICommandSender
      Gets the IPlayer that issued the command.
      Specified by:
      getPlayer in interface ICommandSender
      Returns:
      The IPlayer that issued the command, if it was a player that issued the command. Otherwise, an empty Optional is returned.
    • isPlayer

      default boolean isPlayer()
      Description copied from interface: ICommandSender
      Checks if the command sender is a player.
      Specified by:
      isPlayer in interface ICommandSender
      Returns:
      True if the command sender is a player.
    • formatCommand

      @FormatMethod default String formatCommand(String commandName, @FormatString String subCommandFormat, @Nullable Object @Nullable ... args)
      Description copied from interface: ICommandSender
      Formats a command appropriately for this command sender.

      Players receive commands with a leading slash (e.g., "/command"), while non-players (console, command blocks) receive commands without the leading slash (e.g., "command").

      Specified by:
      formatCommand in interface ICommandSender
      Parameters:
      commandName - The name of the command (without leading slash).
      subCommandFormat - The format string for the subcommand and its arguments.
      args - Arguments referenced by the format specifiers in the subcommand format string.
      Returns:
      The formatted command appropriate for this sender.
    • hasPermission

      default CompletableFuture<Boolean> hasPermission(String permission)
      Description copied from interface: ICommandSender
      Checks if this sender has a given permission.
      Specified by:
      hasPermission in interface ICommandSender
      Parameters:
      permission - The permission node to check.
      Returns:
      True if the player has access to the provided permission, otherwise false.
    • hasPermission

      default CompletableFuture<PermissionsStatus> hasPermission(CommandDefinition command)
      Description copied from interface: ICommandSender
      Checks if this sender has a given command.

      Both the user permission (See CommandDefinition.getUserPermission()) and the admin permission (See CommandDefinition.getAdminPermission()) are checked.

      Specified by:
      hasPermission in interface ICommandSender
      Parameters:
      command - The CommandDefinition of a command to check.
      Returns:
      A PermissionsStatus that is true if the player has access to the provided permissions, otherwise false for the user and the admin permission nodes respectively.