Package org.incendo.cloud.bukkit.parser
Class NamespacedKeyParser<C>
java.lang.Object
org.incendo.cloud.bukkit.parser.NamespacedKeyParser<C>
- Type Parameters:
C- sender type
- All Implemented Interfaces:
ArgumentParser<C,,NamespacedKey> BlockingSuggestionProvider<C>,BlockingSuggestionProvider.Strings<C>,SuggestionProvider<C>,SuggestionProviderHolder<C>
public final class NamespacedKeyParser<C>
extends Object
implements ArgumentParser<C,NamespacedKey>, BlockingSuggestionProvider.Strings<C>
Parser for
NamespacedKey.- Since:
- 1.7.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classException used whenNamespacedKeyParserfails.Nested classes/interfaces inherited from interface org.incendo.cloud.parser.ArgumentParser
ArgumentParser.FutureArgumentParser<C,T> Nested classes/interfaces inherited from interface org.incendo.cloud.suggestion.BlockingSuggestionProvider
BlockingSuggestionProvider.Strings<C> -
Constructor Summary
ConstructorsConstructorDescriptionNamespacedKeyParser(boolean requireExplicitNamespace, String defaultNamespace) Create a newNamespacedKeyParser. -
Method Summary
Modifier and TypeMethodDescriptionstatic <C> @NonNull CommandComponent.Builder<C, NamespacedKey> Returns aCommandComponent.BuilderusingnamespacedKeyParser()as the parser.static <C> @NonNull ParserDescriptor<C, NamespacedKey> Creates a new namespaced key parser that does not require a specific namespace, and usesNamespacedKey.MINECRAFTif no namespace is given.static <C> @NonNull ParserDescriptor<C, NamespacedKey> namespacedKeyParser(boolean requireExplicitNamespace) Creates a new namespaced key parser that usesNamespacedKey.MINECRAFTif no namespace is given andrequireExplicitNamespaceisfalse.static <C> @NonNull ParserDescriptor<C, NamespacedKey> namespacedKeyParser(boolean requireExplicitNamespace, @NonNull String defaultNamespace) Creates a new namespaced key parser.parse(@NonNull CommandContext<C> commandContext, @NonNull CommandInput commandInput) stringSuggestions(@NonNull CommandContext<C> commandContext, @NonNull CommandInput input) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.incendo.cloud.parser.ArgumentParser
flatMap, flatMapSuccess, mapSuccess, parseFuture, suggestionProviderMethods inherited from interface org.incendo.cloud.suggestion.BlockingSuggestionProvider
suggestionsFutureMethods inherited from interface org.incendo.cloud.suggestion.BlockingSuggestionProvider.Strings
suggestions
-
Constructor Details
-
NamespacedKeyParser
Create a newNamespacedKeyParser.- Parameters:
requireExplicitNamespace- whether to require an explicit namespacedefaultNamespace- default namespace- Since:
- 1.7.0
-
-
Method Details
-
namespacedKeyParser
@API(status=STABLE, since="2.0.0") public static <C> @NonNull ParserDescriptor<C,NamespacedKey> namespacedKeyParser()Creates a new namespaced key parser that does not require a specific namespace, and usesNamespacedKey.MINECRAFTif no namespace is given.- Type Parameters:
C- command sender type- Returns:
- the created parser
- Since:
- 2.0.0
-
namespacedKeyParser
@API(status=STABLE, since="2.0.0") public static <C> @NonNull ParserDescriptor<C,NamespacedKey> namespacedKeyParser(boolean requireExplicitNamespace) Creates a new namespaced key parser that usesNamespacedKey.MINECRAFTif no namespace is given andrequireExplicitNamespaceisfalse.- Type Parameters:
C- command sender type- Parameters:
requireExplicitNamespace- whether a namespace is required- Returns:
- the created parser
- Since:
- 2.0.0
-
namespacedKeyParser
@API(status=STABLE, since="2.0.0") public static <C> @NonNull ParserDescriptor<C,NamespacedKey> namespacedKeyParser(boolean requireExplicitNamespace, @NonNull String defaultNamespace) Creates a new namespaced key parser.- Type Parameters:
C- command sender type- Parameters:
requireExplicitNamespace- whether a namespace is requireddefaultNamespace- the namespace to use if no namespace is given- Returns:
- the created parser
- Since:
- 2.0.0
-
namespacedKeyComponent
@API(status=STABLE, since="2.0.0") public static <C> @NonNull CommandComponent.Builder<C,NamespacedKey> namespacedKeyComponent()Returns aCommandComponent.BuilderusingnamespacedKeyParser()as the parser.- Type Parameters:
C- the command sender type- Returns:
- the component builder
- Since:
- 2.0.0
-
parse
public @NonNull ArgumentParseResult<NamespacedKey> parse(@NonNull CommandContext<C> commandContext, @NonNull CommandInput commandInput) - Specified by:
parsein interfaceArgumentParser<C,NamespacedKey>
-
stringSuggestions
public @NonNull Iterable<@NonNull String> stringSuggestions(@NonNull CommandContext<C> commandContext, @NonNull CommandInput input) - Specified by:
stringSuggestionsin interfaceBlockingSuggestionProvider.Strings<C>
-