Package cloud.commandframework.arguments
Class CommandArgument.Builder<C,T>
- java.lang.Object
-
- cloud.commandframework.arguments.CommandArgument.Builder<C,T>
-
- Type Parameters:
C
- Command sender typeT
- Argument value type
- Direct Known Subclasses:
BooleanArgument.Builder
,ByteArgument.Builder
,CharArgument.Builder
,DoubleArgument.Builder
,EnumArgument.Builder
,FloatArgument.Builder
,IntegerArgument.Builder
,LongArgument.Builder
,ShortArgument.Builder
,StringArgument.Builder
,UUIDArgument.Builder
- Enclosing class:
- CommandArgument<C,T>
public static class CommandArgument.Builder<C,T> extends java.lang.Object
Mutable builder forCommandArgument
instances
-
-
Method Summary
Modifier and Type Method Description @NonNull CommandArgument.Builder<@NonNull C,@NonNull T>
asOptional()
Indicates that the argument is optional.@NonNull CommandArgument.Builder<@NonNull C,@NonNull T>
asOptionalWithDefault(@NonNull java.lang.String defaultValue)
Indicates that the argument is optional.@NonNull CommandArgument.Builder<@NonNull C,@NonNull T>
asRequired()
Indicates that the argument is required.@NonNull CommandArgument<@NonNull C,@NonNull T>
build()
Construct a command argument from the builder settingsprotected @NonNull java.lang.String
getDefaultValue()
protected @NonNull java.lang.String
getName()
protected @NonNull ArgumentParser<@NonNull C,@NonNull T>
getParser()
protected @NonNull java.util.function.BiFunction<@NonNull CommandContext<C>,@NonNull java.lang.String,@NonNull java.util.List<java.lang.String>>
getSuggestionsProvider()
protected boolean
isRequired()
@NonNull CommandArgument.Builder<@NonNull C,@NonNull T>
manager(@NonNull CommandManager<C> manager)
Set the command manager.@NonNull CommandArgument.Builder<@NonNull C,@NonNull T>
withParser(@NonNull ArgumentParser<@NonNull C,@NonNull T> parser)
Set the argument parser@NonNull CommandArgument.Builder<@NonNull C,@NonNull T>
withSuggestionsProvider(@NonNull java.util.function.BiFunction<@NonNull CommandContext<C>,@NonNull java.lang.String,@NonNull java.util.List<java.lang.String>> suggestionsProvider)
Set the suggestions provider
-
-
-
Method Detail
-
manager
public @NonNull CommandArgument.Builder<@NonNull C,@NonNull T> manager(@NonNull CommandManager<C> manager)
Set the command manager. Will be used to create a default parser if none was provided- Parameters:
manager
- Command manager- Returns:
- Builder instance
-
asRequired
public @NonNull CommandArgument.Builder<@NonNull C,@NonNull T> asRequired()
Indicates that the argument is required. All arguments prior to any other required argument must also be required, such that the predicate (∀ c_i ∈ required)({c_0, ..., c_i-1} ⊂ required) holds true, where {c_0, ..., c_n-1} is the set of command arguments.- Returns:
- Builder instance
-
asOptional
public @NonNull CommandArgument.Builder<@NonNull C,@NonNull T> asOptional()
Indicates that the argument is optional. All arguments prior to any other required argument must also be required, such that the predicate (∀ c_i ∈ required)({c_0, ..., c_i-1} ⊂ required) holds true, where {c_0, ..., c_n-1} is the set of command arguments.- Returns:
- Builder instance
-
asOptionalWithDefault
public @NonNull CommandArgument.Builder<@NonNull C,@NonNull T> asOptionalWithDefault(@NonNull java.lang.String defaultValue)
Indicates that the argument is optional. All arguments prior to any other required argument must also be required, such that the predicate (∀ c_i ∈ required)({c_0, ..., c_i-1} ⊂ required) holds true, where {c_0, ..., c_n-1} is the set of command arguments.- Parameters:
defaultValue
- Default value that will be used if none was supplied- Returns:
- Builder instance
-
withParser
public @NonNull CommandArgument.Builder<@NonNull C,@NonNull T> withParser(@NonNull ArgumentParser<@NonNull C,@NonNull T> parser)
Set the argument parser- Parameters:
parser
- Argument parser- Returns:
- Builder instance
-
withSuggestionsProvider
public @NonNull CommandArgument.Builder<@NonNull C,@NonNull T> withSuggestionsProvider(@NonNull java.util.function.BiFunction<@NonNull CommandContext<C>,@NonNull java.lang.String,@NonNull java.util.List<java.lang.String>> suggestionsProvider)
Set the suggestions provider- Parameters:
suggestionsProvider
- Suggestions provider- Returns:
- Builder instance
-
build
public @NonNull CommandArgument<@NonNull C,@NonNull T> build()
Construct a command argument from the builder settings- Returns:
- Constructed argument
-
getName
protected final @NonNull java.lang.String getName()
-
isRequired
protected final boolean isRequired()
-
getParser
protected final @NonNull ArgumentParser<@NonNull C,@NonNull T> getParser()
-
getDefaultValue
protected final @NonNull java.lang.String getDefaultValue()
-
getSuggestionsProvider
protected final @NonNull java.util.function.BiFunction<@NonNull CommandContext<C>,@NonNull java.lang.String,@NonNull java.util.List<java.lang.String>> getSuggestionsProvider()
-
-