Class VariableValueParameters
- java.lang.Object
-
- org.spongepowered.api.command.parameter.managed.standard.VariableValueParameters
-
public final class VariableValueParameters extends Object
Builders and factory for parameters that require configuration.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceVariableValueParameters.DynamicChoicesBuilder<T>A builder that creates aValueParameterthat tries to match an argument against a dynamic set of choices and returns an appropriate object based on the supplied argument.static interfaceVariableValueParameters.FactoryA factory that createsValueParameters or their builders.static interfaceVariableValueParameters.LiteralBuilder<T>A builder that createsValueParameters that requires a specific sequence of arguments.static interfaceVariableValueParameters.NumberRangeBuilder<T extends Number>A builder that creates a parameter that can parse a boundedNumber.static interfaceVariableValueParameters.RegistryEntryBuilder<T>A builder that creates aValueParameterthat attempts to get a specificregistryentry by the supplied ID.static interfaceVariableValueParameters.StaticChoicesBuilder<T>A builder that creates aValueParameterthat tries to match an argument against a fixed set of choices and returns an appropriate object based on the supplied argument.static interfaceVariableValueParameters.TextBuilderA builder that creates a parameter that serializes strings intoComponent.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static VariableValueParameters.NumberRangeBuilder<Double>doubleRange()Creates aVariableValueParameters.NumberRangeBuilderthat creates a bounded doubleValueParameter.static <T> VariableValueParameters.DynamicChoicesBuilder<T>dynamicChoicesBuilder(Class<T> returnType)Creates a builder that can build aValueParameterthat tries to match an argument against a dynamic list of choices.static <T extends Enum<T>>
ValueParameter<T>enumChoices(Class<T> enumClass)Creates aValueParameterthat tries to match an argument with a value from a specified enum case-insensitively.static VariableValueParameters.NumberRangeBuilder<Float>floatRange()Creates aVariableValueParameters.NumberRangeBuilderthat creates a bounded floatValueParameter.static VariableValueParameters.NumberRangeBuilder<Integer>integerRange()Creates aVariableValueParameters.NumberRangeBuilderthat creates a bounded integerValueParameter.static <T> VariableValueParameters.LiteralBuilder<T>literalBuilder(Class<T> returnType)Creates a builder that builds aValueParameterthat tries to match an a series of arguments with a supplied literal.static VariableValueParameters.NumberRangeBuilder<Long>longRange()Creates aVariableValueParameters.NumberRangeBuilderthat creates a bounded longValueParameter.static <T> VariableValueParameters.RegistryEntryBuilder<T>registryEntryBuilder(Function<CommandContext,@Nullable RegistryHolder> holderProvider, RegistryType<T> registryKey)Creates a builder that can build aValueParameterthat returns an appropriateregistryentry from an argument.static <T> VariableValueParameters.RegistryEntryBuilder<T>registryEntryBuilder(List<Function<CommandContext,@Nullable RegistryHolder>> holderProviders, RegistryType<T> registryKey)Creates a builder that can build aValueParameterthat returns an appropriateregistryentry from an argument.static <T> VariableValueParameters.RegistryEntryBuilder<T>registryEntryBuilder(DefaultedRegistryType<T> type)Creates a builder that can build aValueParameterthat returns an appropriate type from the providedRegistryfrom an argument.static <T> VariableValueParameters.StaticChoicesBuilder<T>staticChoicesBuilder(Class<T> returnType)Creates a builder that can build aValueParameterthat tries to match an argument against a fixed list of choices.static VariableValueParameters.TextBuildertextBuilder()Creates a builder that builds aValueParameterthat tries to construct aComponentfrom an argument.static ValueParameter<String>validatedString(Pattern pattern)Creates aValueParameterthat validates the input.
-
-
-
Method Detail
-
registryEntryBuilder
public static <T> VariableValueParameters.RegistryEntryBuilder<T> registryEntryBuilder(Function<CommandContext,@Nullable RegistryHolder> holderProvider, RegistryType<T> registryKey)
Creates a builder that can build aValueParameterthat returns an appropriateregistryentry from an argument.- Type Parameters:
T- The type in theRegistry- Parameters:
holderProvider- The provider for aRegistryHolderto retrieve the selectedRegistryfromregistryKey- TheRegistryKeythat represents the targetRegistryto get objects from- Returns:
- The builder
-
registryEntryBuilder
public static <T> VariableValueParameters.RegistryEntryBuilder<T> registryEntryBuilder(List<Function<CommandContext,@Nullable RegistryHolder>> holderProviders, RegistryType<T> registryKey)
Creates a builder that can build aValueParameterthat returns an appropriateregistryentry from an argument.- Type Parameters:
T- The type in theRegistry- Parameters:
holderProviders- The providers forRegistryHolders to retrieve the selectedRegistryfromregistryKey- TheRegistryKeythat represents the targetRegistryto get objects from- Returns:
- The builder
-
registryEntryBuilder
public static <T> VariableValueParameters.RegistryEntryBuilder<T> registryEntryBuilder(DefaultedRegistryType<T> type)
Creates a builder that can build aValueParameterthat returns an appropriate type from the providedRegistryfrom an argument.- Type Parameters:
T- The type in theRegistry- Parameters:
type- TheDefaultedRegistryTypeto use to retrieve aRegistrythat contains the objects to retrieve- Returns:
- The builder
-
staticChoicesBuilder
public static <T> VariableValueParameters.StaticChoicesBuilder<T> staticChoicesBuilder(Class<T> returnType)
Creates a builder that can build aValueParameterthat tries to match an argument against a fixed list of choices.If the list of choices changes during the lifetime of the server, use
dynamicChoicesBuilder(Class)instead.- Type Parameters:
T- The type that will be returned- Parameters:
returnType- The type of object that the resultingValueParameterwill return.- Returns:
- The builder
-
dynamicChoicesBuilder
public static <T> VariableValueParameters.DynamicChoicesBuilder<T> dynamicChoicesBuilder(Class<T> returnType)
Creates a builder that can build aValueParameterthat tries to match an argument against a dynamic list of choices.If the list of choices does not change during the lifetime of the server, use
staticChoicesBuilder(Class)instead.- Type Parameters:
T- The type that will be returned- Parameters:
returnType- The type of object that the resultingValueParameterwill return.- Returns:
- The builder
-
literalBuilder
public static <T> VariableValueParameters.LiteralBuilder<T> literalBuilder(Class<T> returnType)
Creates a builder that builds aValueParameterthat tries to match an a series of arguments with a supplied literal.- Type Parameters:
T- The type that will be returned- Parameters:
returnType- The type of object that the resultingValueParameterwill return.- Returns:
- The builder
-
textBuilder
public static VariableValueParameters.TextBuilder textBuilder()
Creates a builder that builds aValueParameterthat tries to construct aComponentfrom an argument.- Returns:
- The new builder
-
enumChoices
public static <T extends Enum<T>> ValueParameter<T> enumChoices(Class<T> enumClass)
Creates aValueParameterthat tries to match an argument with a value from a specified enum case-insensitively.- Type Parameters:
T- TheEnumclass type- Parameters:
enumClass- TheEnumclass type that this will represent- Returns:
- The appropriate
ValueParameter
-
doubleRange
public static VariableValueParameters.NumberRangeBuilder<Double> doubleRange()
Creates aVariableValueParameters.NumberRangeBuilderthat creates a bounded doubleValueParameter.- Returns:
- The
VariableValueParameters.NumberRangeBuilder
-
floatRange
public static VariableValueParameters.NumberRangeBuilder<Float> floatRange()
Creates aVariableValueParameters.NumberRangeBuilderthat creates a bounded floatValueParameter.- Returns:
- The
VariableValueParameters.NumberRangeBuilder
-
integerRange
public static VariableValueParameters.NumberRangeBuilder<Integer> integerRange()
Creates aVariableValueParameters.NumberRangeBuilderthat creates a bounded integerValueParameter.- Returns:
- The
VariableValueParameters.NumberRangeBuilder
-
longRange
public static VariableValueParameters.NumberRangeBuilder<Long> longRange()
Creates aVariableValueParameters.NumberRangeBuilderthat creates a bounded longValueParameter.- Returns:
- The
VariableValueParameters.NumberRangeBuilder
-
validatedString
public static ValueParameter<String> validatedString(Pattern pattern)
Creates aValueParameterthat validates the input.- Parameters:
pattern- ThePatternused to validate the string- Returns:
- The
ValueParameter
-
-