Class FlagContext

java.lang.Object
cloud.commandframework.arguments.flags.FlagContext

public final class FlagContext extends Object
Flag value mappings
  • Field Details

    • FLAG_PRESENCE_VALUE

      public static final Object FLAG_PRESENCE_VALUE
      Dummy object stored as a flag value when the flag has no associated parser
  • Method Details

    • create

      public static @NonNull FlagContext create()
      Create a new flag context instance
      Returns:
      Constructed instance
    • addPresenceFlag

      public void addPresenceFlag(@NonNull CommandFlag<?> flag)
      Indicate that a presence flag was supplied
      Parameters:
      flag - Flag instance
    • addValueFlag

      public <T> void addValueFlag(@NonNull CommandFlag<T> flag, @NonNull T value)
      Store a value associated with a value flag
      Type Parameters:
      T - Value type
      Parameters:
      flag - Value flag
      value - Flag value
    • isPresent

      public boolean isPresent(@NonNull String flag)
      Check whether a presence flag is present. This will return false for all value flags.
      Parameters:
      flag - Flag name
      Returns:
      true if the flag is a presence flag and is present, else false
    • isPresent

      public boolean isPresent(@NonNull CommandFlag<Void> flag)
      Check whether a presence flag is present. This will return false for all value flags.
      Parameters:
      flag - A presence flag instance
      Returns:
      true if the flag is a presence flag and is present, else false
      Since:
      1.4.0
    • getValue

      public <T> @NonNull Optional<T> getValue(@NonNull String name)
      Get a flag value as an optional. Will be empty if the value is not present.
      Type Parameters:
      T - Value type
      Parameters:
      name - Flag name
      Returns:
      Optional containing stored value if present
      Since:
      1.2.0
    • getValue

      public <T> @NonNull Optional<T> getValue(@NonNull CommandFlag<T> flag)
      Get a flag value as an optional. Will be empty if the value is not present.
      Type Parameters:
      T - Value type
      Parameters:
      flag - Flag type
      Returns:
      Optional containing stored value if present
      Since:
      1.4.0
    • getValue

      public <T> @Nullable T getValue(@NonNull String name, @Nullable T defaultValue)
      Get a flag value
      Type Parameters:
      T - Value type
      Parameters:
      name - Flag name
      defaultValue - Default value
      Returns:
      Stored value, or the supplied default value
    • getValue

      public <T> @Nullable T getValue(@NonNull CommandFlag<T> name, @Nullable T defaultValue)
      Get a flag value
      Type Parameters:
      T - Value type
      Parameters:
      name - Flag value
      defaultValue - Default value
      Returns:
      Stored value, or the supplied default value
      Since:
      1.4.0
    • hasFlag

      public boolean hasFlag(@NonNull String name)
      Check whether a flag is present. This will return true if the flag is a presence flag and is present, or if the flag is a value flag and has a value provided.
      Parameters:
      name - Flag name
      Returns:
      whether the flag is present
      Since:
      1.2.0
    • hasFlag

      public boolean hasFlag(@NonNull CommandFlag<?> flag)
      Check whether a flag is present. This will return true if the flag is a presence flag and is present, or if the flag is a value flag and has a value provided.
      Parameters:
      flag - The flag instance
      Returns:
      whether the flag is present
      Since:
      1.4.0
    • contains

      public boolean contains(@NonNull String name)
      Check whether a flag is present. This will return true if the flag is a presence flag and is present, or if the flag is a value flag and has a value provided.
      Parameters:
      name - Flag name
      Returns:
      whether the flag is present
      Since:
      1.3.0
    • contains

      public boolean contains(@NonNull CommandFlag<?> flag)
      Check whether a flag is present. This will return true if the flag is a presence flag and is present, or if the flag is a value flag and has a value provided.
      Parameters:
      flag - Flag instance
      Returns:
      whether the flag is present
      Since:
      1.4.0
    • get

      public <T> @Nullable T get(@NonNull String name)
      Get a flag value
      Type Parameters:
      T - Value type
      Parameters:
      name - Flag name
      Returns:
      Stored value if present, else null
      Since:
      1.3.0
    • get

      public <T> @Nullable T get(@NonNull CommandFlag<T> flag)
      Get a flag value
      Type Parameters:
      T - Value type
      Parameters:
      flag - Flag name
      Returns:
      Stored value if present, else null
      Since:
      1.4.0