Class CommandContext<S>

java.lang.Object
io.github.mqzn.commands.base.context.CommandContext<S>
All Implemented Interfaces:
Context<S>

public final class CommandContext<S> extends Object implements Context<S>
  • Method Summary

    Modifier and Type
    Method
    Description
    @NotNull Command<S>
    The command found and used in the context made by the command sender
    static <S> CommandContext<S>
    create(@NotNull CommandManager<?,S> manager, @NotNull CommandSyntax<S> syntax, @NotNull DelegateCommandContext<S> context)
     
    The flags used in the command
    int
    Fetches the number of flags used in the raw arguments
    <T> T
    getArgument(int index)
    Fetches the parsed argument value may return null if the value parsed is not valid some cases of failed argument parsing may be like this one: an integer argument with min of 1 and max of 10, however the input was "one" or may be "-1" which is not a valid value .
    <T> T
    Fetches the parsed argument value may return null if the value parsed is not valid some cases of failed argument parsing may be like this one: an integer argument with min of 1 and max of 10, however the input was "one" or may be "-1" which is not a valid value .
    @Nullable String
    getRawArgument(int index)
    Fetches the raw argument from the input in the constructor
    @NotNull List<String>
    The raw arguments used in the context made by the command sender
    @Nullable Argument<?>
    Fetches the original required argument stated by the syntax executed
    int
    The length of the args used in the raw context
    <T> void
    Parses the arguments into the used syntax this algorithm should provide good reasonable performance
    int
    The number of parsed args
    @NotNull String
    The raw arguments formatted using the command used
    Fetches the sender for this context
    @NotNull CommandSyntax<S>
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.github.mqzn.commands.base.context.Context

    getLastIndex
  • Method Details

    • create

      public static <S> CommandContext<S> create(@NotNull @NotNull CommandManager<?,S> manager, @NotNull @NotNull CommandSyntax<S> syntax, @NotNull @NotNull DelegateCommandContext<S> context)
    • parse

      public <T> void parse() throws ArgumentParseException
      Parses the arguments into the used syntax this algorithm should provide good reasonable performance
      Specified by:
      parse in interface Context<S>
      Type Parameters:
      T - the type of arguments that is being parsed
      Throws:
      ArgumentParseException
    • parsedArguments

      public int parsedArguments()
      The number of parsed args
      Specified by:
      parsedArguments in interface Context<S>
      Returns:
      the number of arguments parsed in the context
    • flags

      @NotNull public @NotNull ContextFlagRegistry<S> flags()
      The flags used in the command
      Specified by:
      flags in interface Context<S>
      Returns:
      the flag registry for the flags used in the context of the command executed by the command sender
    • syntaxUsed

      @NotNull public @NotNull CommandSyntax<S> syntaxUsed()
      Specified by:
      syntaxUsed in interface Context<S>
      Returns:
      The syntax used in the context of the command
    • length

      public int length()
      The length of the args used in the raw context
      Specified by:
      length in interface Context<S>
      Returns:
      The length of the args used in the raw context
    • flagsUsed

      public int flagsUsed()
      Fetches the number of flags used in the raw arguments
      Specified by:
      flagsUsed in interface Context<S>
      Returns:
      the count of flags used in raw args
    • sender

      @NotNull public S sender()
      Fetches the sender for this context
      Specified by:
      sender in interface Context<S>
      Returns:
      the context command sender
    • commandUsed

      @NotNull public @NotNull Command<S> commandUsed()
      The command found and used in the context made by the command sender
      Specified by:
      commandUsed in interface Context<S>
      Returns:
      the command used !
      See Also:
    • getRawArguments

      @NotNull public @NotNull List<String> getRawArguments()
      The raw arguments used in the context made by the command sender
      Specified by:
      getRawArguments in interface Context<S>
      Returns:
      The raw arguments
    • rawFormat

      @NotNull public @NotNull String rawFormat()
      The raw arguments formatted using the command used
      Specified by:
      rawFormat in interface Context<S>
      Returns:
      the raw format used in the context
      See Also:
    • getRawArgument

      @Nullable public @Nullable String getRawArgument(int index)
      Fetches the raw argument from the input in the constructor
      Specified by:
      getRawArgument in interface Context<S>
      Parameters:
      index - the index of the raw argument to fetch
      Returns:
      the raw argument at a specific position
    • getArgument

      @Nullable public <T> T getArgument(String id)
      Fetches the parsed argument value may return null if the value parsed is not valid some cases of failed argument parsing may be like this one: an integer argument with min of 1 and max of 10, however the input was "one" or may be "-1" which is not a valid value .
      Specified by:
      getArgument in interface Context<S>
      Type Parameters:
      T - the type of arg value
      Parameters:
      id - the argument name/id
      Returns:
      the parsed value of the argument
    • getArgument

      @Nullable public <T> T getArgument(int index)
      Fetches the parsed argument value may return null if the value parsed is not valid some cases of failed argument parsing may be like this one: an integer argument with min of 1 and max of 10, however the input was "one" or may be "-1" which is not a valid value .
      Specified by:
      getArgument in interface Context<S>
      Type Parameters:
      T - the type of arg value
      Parameters:
      index - the argument index/position
      Returns:
      the parsed value of the argument
    • getRequiredArgument

      @Nullable public @Nullable Argument<?> getRequiredArgument(int index)
      Fetches the original required argument stated by the syntax executed
      Specified by:
      getRequiredArgument in interface Context<S>
      Parameters:
      index - the index of the arg
      Returns:
      the original required argument