Class CommandArgument

java.lang.Object
dev.ua.theroer.magicutils.commands.CommandArgument

public class CommandArgument extends Object
Represents a command argument with its properties and permission requirements.
  • Method Details

    • hasPermission

      public boolean hasPermission()
      Checks if argument has permission.
      Returns:
      true if permission is set
    • getAllowedSenders

      public AllowedSender[] getAllowedSenders()
      Allowed sender kinds for this parameter.
      Returns:
      array of allowed senders
    • isOption

      public boolean isOption()
      Returns true if this argument supports named options.
      Returns:
      true when option names are defined
    • isFlag

      public boolean isFlag()
      Returns true if this option is a flag (no value required).
      Returns:
      true if flag
    • getShortOptionNames

      public List<String> getShortOptionNames()
      Short option names without "-" prefix.
      Returns:
      list of short names
    • getLongOptionNames

      public List<String> getLongOptionNames()
      Long option names without "--" prefix.
      Returns:
      list of long names
    • getContextArgs

      public List<String> getContextArgs()
      Returns the names of arguments whose parsed values should be available when generating suggestions.
      Returns:
      copy of the list of context argument names
    • hasPermissionCondition

      public boolean hasPermissionCondition()
      Checks if argument has permission condition.
      Returns:
      true if permission condition is set
    • getPermissionConditionArgs

      public String[] getPermissionConditionArgs()
      Names of arguments participating in the permission condition.
      Returns:
      array of argument names
    • hasSuggestion

      public boolean hasSuggestion(String suggestion)
      Checks if argument contains specific suggestion.
      Parameters:
      suggestion - the suggestion to check
      Returns:
      true if suggestion exists
    • getSuggestions

      public List<String> getSuggestions()
      Available suggestions for this argument.
      Returns:
      copy of suggestion list
    • builder

      public static CommandArgument.Builder builder(String name, Class<?> type)
      Creates a builder for CommandArgument.
      Parameters:
      name - the argument name
      type - the argument type
      Returns:
      a new Builder instance
    • toString

      public String toString()
      Overrides:
      toString in class Object