Class Parameter<T>
java.lang.Object
com.kamikazejam.kamicommon.command.Parameter<T>
One declared argument of a
KamiCommand, pairing a Type with a display name and an optional
default value. Build one with of(Type) and the fluent builder; a parameter is required exactly
when no default was supplied, and a default of null is legal and different from having none.
KamiCommand.addParameter(Parameter) enforces ordering, throwing IllegalArgumentException
for a required parameter declared after an optional one and IllegalStateException for anything
declared after a concatenating one.- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> Parameter.Builder<T> @Nullable String@NotNull StringgetTemplate(@Nullable CommandSender sender) booleanbooleanbooleanisOptionalFor(CommandSender sender) booleanbooleanisRequiredFor(@Nullable CommandSender sender) static <T> Parameter.Builder<T>
-
Method Details
-
isRequired
public boolean isRequired() -
isOptional
public boolean isOptional() -
isDefaultValueSet
public boolean isDefaultValueSet()- Returns:
- IFF a default value is set (may still be null)
-
getDefaultDesc
- Returns:
- null if no default value is set, or the description of the default value if set, otherwise the default value as a string
-
isRequiredFor
-
isOptionalFor
-
getTemplate
-
builder
-
of
-