chore(core): deprecate prefixed accessors/mutators in CommandManager (#377)

chore(core): deprecate prefixed accessors/mutators in CommandManager.java

All prefixed (actual) getters/setters in CommandManager have been deprecated, and non-prefixed alternatives have been introduced. I've also put some effort into improving the JavaDocs of these methods.
This commit is contained in:
Alexander Söderberg 2022-06-13 10:57:12 +02:00 committed by Jason
parent 687cd4c536
commit 296539d56c
48 changed files with 400 additions and 157 deletions

View file

@ -430,7 +430,7 @@ public final class CloudBrigadierManager<C, S> {
final com.mojang.brigadier.@NonNull Command<S> executor
) {
final CommandTree.Node<CommandArgument<C, ?>> node = this.commandManager
.getCommandTree().getNamedNode(cloudCommand.getArguments().get(0).getName());
.commandTree().getNamedNode(cloudCommand.getArguments().get(0).getName());
final SuggestionProvider<S> provider = (context, builder) -> this.buildSuggestions(
context,
null, /* parent node, null for the literal command node root */

View file

@ -196,7 +196,7 @@ final class BukkitCommand<C> extends org.bukkit.command.Command implements Plugi
@Override
public @NonNull String getUsage() {
return this.manager.getCommandSyntaxFormatter().apply(
return this.manager.commandSyntaxFormatter().apply(
Collections.singletonList(Objects.requireNonNull(this.namedNode().getValue())),
this.namedNode()
);
@ -229,6 +229,6 @@ final class BukkitCommand<C> extends org.bukkit.command.Command implements Plugi
}
private CommandTree.@Nullable Node<CommandArgument<C, ?>> namedNode() {
return this.manager.getCommandTree().getNamedNode(this.command.getName());
return this.manager.commandTree().getNamedNode(this.command.getName());
}
}

View file

@ -125,7 +125,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> implements Brigad
)
throws Exception {
super(commandExecutionCoordinator, new BukkitPluginRegistrationHandler<>());
((BukkitPluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).initialize(this);
((BukkitPluginRegistrationHandler<C>) this.commandRegistrationHandler()).initialize(this);
this.owningPlugin = owningPlugin;
this.commandSenderMapper = commandSenderMapper;
this.backwardsCommandSenderMapper = backwardsCommandSenderMapper;
@ -141,39 +141,39 @@ public class BukkitCommandManager<C> extends CommandManager<C> implements Brigad
this.registerCommandPreProcessor(new BukkitCommandPreprocessor<>(this));
/* Register Bukkit Parsers */
this.getParserRegistry().registerParserSupplier(TypeToken.get(World.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(World.class), parserParameters ->
new WorldArgument.WorldParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(Material.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(Material.class), parserParameters ->
new MaterialArgument.MaterialParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(Player.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(Player.class), parserParameters ->
new PlayerArgument.PlayerParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(OfflinePlayer.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(OfflinePlayer.class), parserParameters ->
new OfflinePlayerArgument.OfflinePlayerParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(Enchantment.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(Enchantment.class), parserParameters ->
new EnchantmentArgument.EnchantmentParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(Location.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(Location.class), parserParameters ->
new LocationArgument.LocationParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(Location2D.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(Location2D.class), parserParameters ->
new Location2DArgument.Location2DParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(ProtoItemStack.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(ProtoItemStack.class), parserParameters ->
new ItemStackArgument.Parser<>());
/* Register Entity Selector Parsers */
this.getParserRegistry().registerParserSupplier(TypeToken.get(SingleEntitySelector.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(SingleEntitySelector.class), parserParameters ->
new SingleEntitySelectorArgument.SingleEntitySelectorParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(SinglePlayerSelector.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(SinglePlayerSelector.class), parserParameters ->
new SinglePlayerSelectorArgument.SinglePlayerSelectorParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(MultipleEntitySelector.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(MultipleEntitySelector.class), parserParameters ->
new MultipleEntitySelectorArgument.MultipleEntitySelectorParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(MultiplePlayerSelector.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(MultiplePlayerSelector.class), parserParameters ->
new MultiplePlayerSelectorArgument.MultiplePlayerSelectorParser<>());
if (CraftBukkitReflection.classExists("org.bukkit.NamespacedKey")) {
this.registerParserSupplierFor(NamespacedKeyArgument.class);
this.getParserRegistry().registerAnnotationMapper(
this.parserRegistry().registerAnnotationMapper(
RequireExplicitNamespace.class,
(annotation, type) -> ParserParameters.single(BukkitParserParameters.REQUIRE_EXPLICIT_NAMESPACE, true)
);
this.getParserRegistry().registerAnnotationMapper(
this.parserRegistry().registerAnnotationMapper(
DefaultNamespace.class,
(annotation, type) -> ParserParameters.single(BukkitParserParameters.DEFAULT_NAMESPACE, annotation.value())
);
@ -191,7 +191,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> implements Brigad
this.owningPlugin
);
this.setCaptionRegistry(new BukkitCaptionRegistryFactory<C>().create());
this.captionRegistry(new BukkitCaptionRegistryFactory<C>().create());
}
/**
@ -323,7 +323,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> implements Brigad
try {
final CloudCommodoreManager<C> cloudCommodoreManager = new CloudCommodoreManager<>(this);
cloudCommodoreManager.initialize(this);
this.setCommandRegistrationHandler(cloudCommodoreManager);
this.commandRegistrationHandler(cloudCommodoreManager);
this.setSplitAliases(true);
} catch (final Throwable e) {
throw new BrigadierFailureException(BrigadierFailureReason.COMMODORE_NOT_PRESENT, e);
@ -337,8 +337,8 @@ public class BukkitCommandManager<C> extends CommandManager<C> implements Brigad
*/
@Override
public @Nullable CloudBrigadierManager<C, ?> brigadierManager() {
if (this.getCommandRegistrationHandler() instanceof CloudCommodoreManager) {
return ((CloudCommodoreManager<C>) this.getCommandRegistrationHandler()).brigadierManager();
if (this.commandRegistrationHandler() instanceof CloudCommodoreManager) {
return ((CloudCommodoreManager<C>) this.commandRegistrationHandler()).brigadierManager();
}
return null;
}

View file

@ -75,7 +75,7 @@ public class BukkitPluginRegistrationHandler<C> implements CommandRegistrationHa
public final boolean registerCommand(final @NonNull Command<?> command) {
/* We only care about the root command argument */
final CommandArgument<?, ?> commandArgument = command.getArguments().get(0);
if (!(this.bukkitCommandManager.getCommandRegistrationHandler() instanceof CloudCommodoreManager)
if (!(this.bukkitCommandManager.commandRegistrationHandler() instanceof CloudCommodoreManager)
&& this.registeredCommands.containsKey(commandArgument)) {
return false;
}

View file

@ -97,7 +97,7 @@ class CloudCommodoreManager<C> extends BukkitPluginRegistrationHandler<C> {
final LiteralCommandNode<?> literalCommandNode = this.brigadierManager
.createLiteralCommandNode(label, command, (commandSourceStack, commandPermission) -> {
// We need to check that the command still exists...
if (this.commandManager.getCommandTree().getNamedNode(label) == null) {
if (this.commandManager.commandTree().getNamedNode(label) == null) {
return false;
}

View file

@ -356,7 +356,7 @@ public final class NamespacedKeyArgument<C> extends CommandArgument<C, Namespace
*/
@SuppressWarnings("unused")
private static <C> void registerParserSupplier(final @NonNull BukkitCommandManager<C> commandManager) {
commandManager.getParserRegistry()
commandManager.parserRegistry()
.registerParserSupplier(TypeToken.get(NamespacedKey.class), params -> new Parser<>(
params.has(BukkitParserParameters.REQUIRE_EXPLICIT_NAMESPACE),
params.get(BukkitParserParameters.DEFAULT_NAMESPACE, NamespacedKey.MINECRAFT)

View file

@ -335,7 +335,7 @@ public final class BlockPredicateArgument<C> extends CommandArgument<C, BlockPre
*/
@SuppressWarnings("unused")
private static <C> void registerParserSupplier(final @NonNull BukkitCommandManager<C> commandManager) {
commandManager.getParserRegistry()
commandManager.parserRegistry()
.registerParserSupplier(TypeToken.get(BlockPredicate.class), params -> new BlockPredicateArgument.Parser<>());
}
}

View file

@ -271,7 +271,7 @@ public final class ItemStackPredicateArgument<C> extends CommandArgument<C, Item
*/
@SuppressWarnings("unused")
private static <C> void registerParserSupplier(final @NonNull BukkitCommandManager<C> commandManager) {
commandManager.getParserRegistry().registerParserSupplier(
commandManager.parserRegistry().registerParserSupplier(
TypeToken.get(ItemStackPredicate.class),
params -> new ItemStackPredicateArgument.Parser<>()
);

View file

@ -71,7 +71,7 @@ public class BungeeCommandManager<C> extends CommandManager<C> {
final @NonNull Function<@NonNull C, @NonNull CommandSender> backwardsCommandSenderMapper
) {
super(commandExecutionCoordinator, new BungeePluginRegistrationHandler<>());
((BungeePluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).initialize(this);
((BungeePluginRegistrationHandler<C>) this.commandRegistrationHandler()).initialize(this);
this.owningPlugin = owningPlugin;
this.commandSenderMapper = commandSenderMapper;
this.backwardsCommandSenderMapper = backwardsCommandSenderMapper;
@ -80,15 +80,15 @@ public class BungeeCommandManager<C> extends CommandManager<C> {
this.registerCommandPreProcessor(new BungeeCommandPreprocessor<>(this));
/* Register Bungee Parsers */
this.getParserRegistry().registerParserSupplier(TypeToken.get(ProxiedPlayer.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(ProxiedPlayer.class), parserParameters ->
new PlayerArgument.PlayerParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(ServerInfo.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(ServerInfo.class), parserParameters ->
new ServerArgument.ServerParser<>());
/* Register default captions */
if (this.getCaptionRegistry() instanceof FactoryDelegatingCaptionRegistry) {
if (this.captionRegistry() instanceof FactoryDelegatingCaptionRegistry) {
final FactoryDelegatingCaptionRegistry<C> factoryDelegatingCaptionRegistry = (FactoryDelegatingCaptionRegistry<C>)
this.getCaptionRegistry();
this.captionRegistry();
factoryDelegatingCaptionRegistry.registerMessageFactory(
BungeeCaptionKeys.ARGUMENT_PARSE_FAILURE_PLAYER,
(context, key) -> ARGUMENT_PARSE_FAILURE_PLAYER

View file

@ -65,7 +65,7 @@ public class CloudburstCommandManager<C> extends CommandManager<C> {
final @NonNull Function<@NonNull C, @NonNull CommandSender> backwardsCommandSenderMapper
) {
super(commandExecutionCoordinator, new CloudburstPluginRegistrationHandler<>());
((CloudburstPluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).initialize(this);
((CloudburstPluginRegistrationHandler<C>) this.commandRegistrationHandler()).initialize(this);
this.commandSenderMapper = commandSenderMapper;
this.backwardsCommandSenderMapper = backwardsCommandSenderMapper;
this.owningPlugin = owningPlugin;
@ -95,7 +95,7 @@ public class CloudburstCommandManager<C> extends CommandManager<C> {
@Override
public final boolean isCommandRegistrationAllowed() {
return this.getRegistrationState() != RegistrationState.AFTER_REGISTRATION;
return this.registrationState() != RegistrationState.AFTER_REGISTRATION;
}
final @NonNull Function<@NonNull CommandSender, @NonNull C> getCommandSenderMapper() {

View file

@ -152,10 +152,10 @@ public abstract class FabricCommandManager<C, S extends SharedSuggestionProvider
this.brigadierManager.backwardsBrigadierSenderMapper(this.backwardsCommandSourceMapper);
this.brigadierManager.brigadierSenderMapper(this.commandSourceMapper);
this.registerNativeBrigadierMappings(this.brigadierManager);
this.setCaptionRegistry(new FabricCaptionRegistry<>());
this.captionRegistry(new FabricCaptionRegistry<>());
this.registerCommandPreProcessor(new FabricCommandPreprocessor<>(this));
((FabricCommandRegistrationHandler<C, S>) this.getCommandRegistrationHandler()).initialize(this);
((FabricCommandRegistrationHandler<C, S>) this.commandRegistrationHandler()).initialize(this);
}
private void registerNativeBrigadierMappings(final @NonNull CloudBrigadierManager<C, S> brigadier) {
@ -165,7 +165,7 @@ public abstract class FabricCommandManager<C, S extends SharedSuggestionProvider
this.registerRegistryEntryMappings();
brigadier.registerMapping(new TypeToken<TeamArgument.TeamParser<C>>() {
}, builder -> builder.toConstant(net.minecraft.commands.arguments.TeamArgument.team()));
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(PlayerTeam.class),
params -> new TeamArgument.TeamParser<>()
);
@ -190,7 +190,7 @@ public abstract class FabricCommandManager<C, S extends SharedSuggestionProvider
/* Wrapped/Constant Brigadier types, mapped value type */
this.registerConstantNativeParserSupplier(MessageArgument.Message.class, MessageArgument.message());
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(MinecraftTime.class),
params -> FabricArgumentParsers.time()
);
@ -251,7 +251,7 @@ public abstract class FabricCommandManager<C, S extends SharedSuggestionProvider
seenClasses.add(GenericTypeReflector.erase(valueType));
/* and now, finally, we can register */
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(valueType),
params -> new RegistryEntryArgument.Parser(key)
);
@ -270,7 +270,7 @@ public abstract class FabricCommandManager<C, S extends SharedSuggestionProvider
final @NonNull Class<T> type,
final @NonNull Function<CommandBuildContext, @NonNull ArgumentType<T>> argument
) {
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(type),
params -> FabricArgumentParsers.contextual(argument)
);
@ -300,7 +300,7 @@ public abstract class FabricCommandManager<C, S extends SharedSuggestionProvider
final @NonNull TypeToken<T> type,
final @NonNull ArgumentType<T> argument
) {
this.getParserRegistry().registerParserSupplier(type, params -> new WrappedBrigadierParser<>(argument));
this.parserRegistry().registerParserSupplier(type, params -> new WrappedBrigadierParser<>(argument));
}
@Override

View file

@ -136,50 +136,50 @@ public final class FabricServerCommandManager<C> extends FabricCommandManager<C,
}
private void registerParsers() {
this.getParserRegistry().registerParserSupplier(TypeToken.get(Message.class), params -> FabricArgumentParsers.message());
this.parserRegistry().registerParserSupplier(TypeToken.get(Message.class), params -> FabricArgumentParsers.message());
// Location arguments
this.getParserRegistry().registerAnnotationMapper(
this.parserRegistry().registerAnnotationMapper(
Center.class,
(annotation, type) -> ParserParameters.single(FabricParserParameters.CENTER_INTEGERS, true)
);
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(Coordinates.class),
params -> FabricArgumentParsers.vec3(params.get(
FabricParserParameters.CENTER_INTEGERS,
false
))
);
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(Coordinates.CoordinatesXZ.class),
params -> FabricArgumentParsers.vec2(params.get(
FabricParserParameters.CENTER_INTEGERS,
false
))
);
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(Coordinates.BlockCoordinates.class),
params -> FabricArgumentParsers.blockPos()
);
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(Coordinates.ColumnCoordinates.class),
params -> FabricArgumentParsers.columnPos()
);
// Entity selectors
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(SinglePlayerSelector.class),
params -> FabricArgumentParsers.singlePlayerSelector()
);
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(MultiplePlayerSelector.class),
params -> FabricArgumentParsers.multiplePlayerSelector()
);
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(SingleEntitySelector.class),
params -> FabricArgumentParsers.singleEntitySelector()
);
this.getParserRegistry().registerParserSupplier(
this.parserRegistry().registerParserSupplier(
TypeToken.get(MultipleEntitySelector.class),
params -> FabricArgumentParsers.multipleEntitySelector()
);

View file

@ -326,7 +326,7 @@ public final class MinecraftHelp<C> {
recipient,
query,
page,
this.commandManager.getCommandHelpHandler(this.commandFilter).queryHelp(recipient, query)
this.commandManager.createCommandHelpHandler(this.commandFilter).queryHelp(recipient, query)
);
}
@ -471,7 +471,7 @@ public final class MinecraftHelp<C> {
final Audience audience = this.getAudience(sender);
audience.sendMessage(this.basicHeader(sender));
audience.sendMessage(this.showingResults(sender, query));
final String command = this.commandManager.getCommandSyntaxFormatter()
final String command = this.commandManager.commandSyntaxFormatter()
.apply(helpTopic.getCommand().getArguments(), null);
audience.sendMessage(text()
.append(this.lastBranch())
@ -521,7 +521,7 @@ public final class MinecraftHelp<C> {
final CommandComponent<C> component = iterator.next();
final CommandArgument<C, ?> argument = component.getArgument();
final String syntax = this.commandManager.getCommandSyntaxFormatter()
final String syntax = this.commandManager.commandSyntaxFormatter()
.apply(Collections.singletonList(argument), null);
final TextComponent.Builder textComponent = text()

View file

@ -52,7 +52,7 @@ final class AsyncCommandSuggestionsListener<C> implements Listener {
@SuppressWarnings("unchecked")
final BukkitPluginRegistrationHandler<C> bukkitPluginRegistrationHandler =
(BukkitPluginRegistrationHandler<C>) this.paperCommandManager.getCommandRegistrationHandler();
(BukkitPluginRegistrationHandler<C>) this.paperCommandManager.commandRegistrationHandler();
/* Turn 'plugin:command arg1 arg2 ...' into 'plugin:command' */
final String commandLabel = strippedBuffer.split(" ")[0];

View file

@ -77,7 +77,7 @@ class PaperBrigadierListener<C> implements Listener {
return;
}
final CommandTree<C> commandTree = this.paperCommandManager.getCommandTree();
final CommandTree<C> commandTree = this.paperCommandManager.commandTree();
final String label;
if (event.getCommandLabel().contains(":")) {

View file

@ -210,9 +210,9 @@ final class CloudCommandCallable<C> implements CommandCallable {
@Override
public Text getUsage(final @NonNull CommandSource source) {
return Text.of(this.manager.getCommandSyntaxFormatter().apply(
return Text.of(this.manager.commandSyntaxFormatter().apply(
Collections.emptyList(),
this.manager.getCommandTree().getNamedNode(this.command.getName())
this.manager.commandTree().getNamedNode(this.command.getName())
));
}
}

View file

@ -78,7 +78,7 @@ public class SpongeCommandManager<C> extends CommandManager<C> {
this.owningPlugin = requireNonNull(container, "container");
this.forwardMapper = requireNonNull(forwardMapper, "forwardMapper");
this.reverseMapper = requireNonNull(reverseMapper, "reverseMapper");
((SpongePluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).initialize(this);
((SpongePluginRegistrationHandler<C>) this.commandRegistrationHandler()).initialize(this);
}
@Override

View file

@ -109,7 +109,7 @@ public class VelocityCommandManager<C> extends CommandManager<C> implements Brig
final @NonNull Function<@NonNull C, @NonNull CommandSource> backwardsCommandSenderMapper
) {
super(commandExecutionCoordinator, new VelocityPluginRegistrationHandler<>());
((VelocityPluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).initialize(this);
((VelocityPluginRegistrationHandler<C>) this.commandRegistrationHandler()).initialize(this);
this.proxyServer = proxyServer;
this.commandSenderMapper = commandSenderMapper;
this.backwardsCommandSenderMapper = backwardsCommandSenderMapper;
@ -118,15 +118,15 @@ public class VelocityCommandManager<C> extends CommandManager<C> implements Brig
this.registerCommandPreProcessor(new VelocityCommandPreprocessor<>(this));
/* Register Velocity Parsers */
this.getParserRegistry().registerParserSupplier(TypeToken.get(Player.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(Player.class), parserParameters ->
new PlayerArgument.PlayerParser<>());
this.getParserRegistry().registerParserSupplier(TypeToken.get(RegisteredServer.class), parserParameters ->
this.parserRegistry().registerParserSupplier(TypeToken.get(RegisteredServer.class), parserParameters ->
new ServerArgument.ServerParser<>());
/* Register default captions */
if (this.getCaptionRegistry() instanceof FactoryDelegatingCaptionRegistry) {
if (this.captionRegistry() instanceof FactoryDelegatingCaptionRegistry) {
final FactoryDelegatingCaptionRegistry<C> factoryDelegatingCaptionRegistry = (FactoryDelegatingCaptionRegistry<C>)
this.getCaptionRegistry();
this.captionRegistry();
factoryDelegatingCaptionRegistry.registerMessageFactory(
VelocityCaptionKeys.ARGUMENT_PARSE_FAILURE_PLAYER,
(context, key) -> ARGUMENT_PARSE_FAILURE_PLAYER
@ -163,7 +163,7 @@ public class VelocityCommandManager<C> extends CommandManager<C> implements Brig
@SuppressWarnings("unchecked")
@Override
public @NonNull CloudBrigadierManager<C, CommandSource> brigadierManager() {
return ((VelocityPluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).brigadierManager();
return ((VelocityPluginRegistrationHandler<C>) this.commandRegistrationHandler()).brigadierManager();
}
final @NonNull ProxyServer proxyServer() {