Class ListArgument

  • All Implemented Interfaces:
    CommandArgument<java.lang.String>

    public class ListArgument
    extends AbstractArgument<java.lang.String>
    An argument that accepts a single string from a list.
    • Constructor Summary

      Constructors 
      Constructor Description
      ListArgument​(java.lang.String name, java.lang.String description, boolean isOptional, java.util.List<java.lang.String> values)  
    • Constructor Detail

      • ListArgument

        public ListArgument​(java.lang.String name,
                            java.lang.String description,
                            boolean isOptional,
                            java.util.List<java.lang.String> values)
        Parameters:
        name - this argument's name
        description - this argument's description
        isOptional - whether this argument will be displayed as optional
        values - a set of acceptable values for this argument
    • Method Detail

      • getValue

        public java.lang.String getValue​(java.util.Queue<java.lang.String> args,
                                         CommandContext<?> ctx)
        Description copied from interface: CommandArgument
        Reads from a queue to get the value for this argument.
        Parameters:
        args - a queue of strings containing the raw arguments. Pop as many as needed and no more.
        ctx - the context that this command has been executed in. Be aware that arguments may not yet be populated.
        Returns:
        the parsed string value of this argument.
      • tabComplete

        @Nullable
        public @Nullable java.util.List<java.lang.String> tabComplete​(java.util.Queue<java.lang.String> value,
                                                                      CommandContext<?> ctx)
        Description copied from interface: CommandArgument
        Tab-completes this node.
        Parameters:
        value - a queue of strings containing the raw arguments. Pop as many as needed and no more.
        ctx - the context that this command has been executed in. Be aware that arguments may not yet be populated.
        Returns:
        the tabcompleted value of this node, or if not applicable, null