🚚 More removal of javax annotations
This commit is contained in:
parent
4556b392b0
commit
26f11e3a7e
47 changed files with 594 additions and 691 deletions
|
|
@ -57,9 +57,9 @@ import com.mojang.brigadier.suggestion.SuggestionProvider;
|
|||
import com.mojang.brigadier.suggestion.Suggestions;
|
||||
import com.mojang.brigadier.suggestion.SuggestionsBuilder;
|
||||
import com.mojang.brigadier.tree.LiteralCommandNode;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
import org.checkerframework.checker.nullness.qual.Nullable;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.LinkedList;
|
||||
|
|
@ -94,8 +94,8 @@ public final class CloudBrigadierManager<C, S> {
|
|||
* @param commandManager Command manager
|
||||
* @param dummyContextProvider Provider of dummy context for completions
|
||||
*/
|
||||
public CloudBrigadierManager(@Nonnull final CommandManager<C> commandManager,
|
||||
@Nonnull final Supplier<CommandContext<C>>
|
||||
public CloudBrigadierManager(@NonNull final CommandManager<C> commandManager,
|
||||
@NonNull final Supplier<@NonNull CommandContext<C>>
|
||||
dummyContextProvider) {
|
||||
this.mappers = new HashMap<>();
|
||||
this.defaultArgumentTypeSuppliers = new HashMap<>();
|
||||
|
|
@ -194,9 +194,9 @@ public final class CloudBrigadierManager<C, S> {
|
|||
* @param <K> cloud argument type
|
||||
* @param <O> Brigadier argument type value
|
||||
*/
|
||||
public <T, K extends ArgumentParser<C, T>, O> void registerMapping(@Nonnull final TypeToken<K> argumentType,
|
||||
@Nonnull final Function<? extends K,
|
||||
? extends ArgumentType<O>> mapper) {
|
||||
public <T, K extends ArgumentParser<C, T>, O> void registerMapping(@NonNull final TypeToken<K> argumentType,
|
||||
@NonNull final Function<@NonNull ? extends K,
|
||||
@NonNull ? extends ArgumentType<O>> mapper) {
|
||||
this.mappers.put(GenericTypeReflector.erase(argumentType.getType()), mapper);
|
||||
}
|
||||
|
||||
|
|
@ -206,17 +206,16 @@ public final class CloudBrigadierManager<C, S> {
|
|||
* @param clazz Type to map
|
||||
* @param supplier Supplier that supplies the argument type
|
||||
*/
|
||||
public void registerDefaultArgumentTypeSupplier(@Nonnull final Class<?> clazz,
|
||||
@Nonnull final Supplier<ArgumentType<?>> supplier) {
|
||||
public void registerDefaultArgumentTypeSupplier(@NonNull final Class<?> clazz,
|
||||
@NonNull final Supplier<@NonNull ArgumentType<?>> supplier) {
|
||||
this.defaultArgumentTypeSuppliers.put(clazz, supplier);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@SuppressWarnings("all")
|
||||
private <T, K extends ArgumentParser<?, ?>> Pair<ArgumentType<?>, Boolean> getArgument(
|
||||
@Nonnull final TypeToken<?> valueType,
|
||||
@Nonnull final TypeToken<T> argumentType,
|
||||
@Nonnull final K argument) {
|
||||
private <T, K extends ArgumentParser<?, ?>> @Nullable Pair<@NonNull ArgumentType<?>, @NonNull Boolean> getArgument(
|
||||
@NonNull final TypeToken<?> valueType,
|
||||
@NonNull final TypeToken<T> argumentType,
|
||||
@NonNull final K argument) {
|
||||
final ArgumentParser<C, ?> commandArgument = (ArgumentParser<C, ?>) argument;
|
||||
Function function = this.mappers.get(GenericTypeReflector.erase(argumentType.getType()));
|
||||
if (function == null) {
|
||||
|
|
@ -225,11 +224,11 @@ public final class CloudBrigadierManager<C, S> {
|
|||
return new Pair<>((ArgumentType<?>) function.apply(commandArgument), !(argument instanceof StringArgument.StringParser));
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
private <T, K extends ArgumentParser<C, T>> Pair<ArgumentType<?>, Boolean> createDefaultMapper(
|
||||
@Nonnull final TypeToken<?> clazz,
|
||||
@Nonnull final ArgumentParser<C, T> argument) {
|
||||
final Supplier<ArgumentType<?>> argumentTypeSupplier = this.defaultArgumentTypeSuppliers.get(clazz.getRawType());
|
||||
private <T, K extends ArgumentParser<C, T>> @NonNull Pair<@NonNull ArgumentType<?>, @NonNull Boolean> createDefaultMapper(
|
||||
@NonNull final TypeToken<?> clazz,
|
||||
@NonNull final ArgumentParser<C, T> argument) {
|
||||
final Supplier<ArgumentType<?>> argumentTypeSupplier = this.defaultArgumentTypeSuppliers
|
||||
.get(GenericTypeReflector.erase(clazz.getType()));
|
||||
if (argumentTypeSupplier != null) {
|
||||
return new Pair<>(argumentTypeSupplier.get(), true);
|
||||
}
|
||||
|
|
@ -245,10 +244,11 @@ public final class CloudBrigadierManager<C, S> {
|
|||
* @param executor Command executor
|
||||
* @return Literal command node
|
||||
*/
|
||||
public LiteralCommandNode<S> createLiteralCommandNode(@Nonnull final String label,
|
||||
@Nonnull final Command<C> cloudCommand,
|
||||
@Nonnull final BiPredicate<S, CommandPermission> permissionChecker,
|
||||
@Nonnull final com.mojang.brigadier.Command<S> executor) {
|
||||
public @NonNull LiteralCommandNode<S> createLiteralCommandNode(@NonNull final String label,
|
||||
@NonNull final Command<C> cloudCommand,
|
||||
@NonNull final BiPredicate<@NonNull S,
|
||||
@NonNull CommandPermission> permissionChecker,
|
||||
final com.mojang.brigadier.@NonNull Command<S> executor) {
|
||||
final CommandTree.Node<CommandArgument<C, ?>> node = this.commandManager
|
||||
.getCommandTree().getNamedNode(cloudCommand.getArguments().get(0).getName());
|
||||
final SuggestionProvider<S> provider = (context, builder) -> this.buildSuggestions(node.getValue(), context, builder);
|
||||
|
|
@ -275,12 +275,12 @@ public final class CloudBrigadierManager<C, S> {
|
|||
* @param permissionChecker Permission checker
|
||||
* @return Constructed literal command node
|
||||
*/
|
||||
@Nonnull
|
||||
public LiteralCommandNode<S> createLiteralCommandNode(@Nonnull final CommandTree.Node<CommandArgument<C, ?>> cloudCommand,
|
||||
@Nonnull final LiteralCommandNode<S> root,
|
||||
@Nonnull final SuggestionProvider<S> suggestionProvider,
|
||||
@Nonnull final com.mojang.brigadier.Command<S> executor,
|
||||
@Nonnull final BiPredicate<S, CommandPermission> permissionChecker) {
|
||||
public @NonNull LiteralCommandNode<S> createLiteralCommandNode(
|
||||
final CommandTree.@NonNull Node<@NonNull CommandArgument<C, ?>> cloudCommand,
|
||||
@NonNull final LiteralCommandNode<S> root,
|
||||
@NonNull final SuggestionProvider<S> suggestionProvider,
|
||||
final com.mojang.brigadier.@NonNull Command<S> executor,
|
||||
@NonNull final BiPredicate<@NonNull S, @NonNull CommandPermission> permissionChecker) {
|
||||
final LiteralArgumentBuilder<S> literalArgumentBuilder = LiteralArgumentBuilder.<S>literal(root.getLiteral())
|
||||
.requires(sender -> permissionChecker.test(sender, (CommandPermission) cloudCommand.getNodeMeta()
|
||||
.getOrDefault("permission", Permission.empty())));
|
||||
|
|
@ -295,11 +295,12 @@ public final class CloudBrigadierManager<C, S> {
|
|||
return constructedRoot;
|
||||
}
|
||||
|
||||
private ArgumentBuilder<S, ?> constructCommandNode(final boolean forceExecutor,
|
||||
@Nonnull final CommandTree.Node<CommandArgument<C, ?>> root,
|
||||
@Nonnull final BiPredicate<S, CommandPermission> permissionChecker,
|
||||
@Nonnull final com.mojang.brigadier.Command<S> executor,
|
||||
@Nonnull final SuggestionProvider<S> suggestionProvider) {
|
||||
private @NonNull ArgumentBuilder<S, ?> constructCommandNode(
|
||||
final boolean forceExecutor,
|
||||
final CommandTree.@NonNull Node<CommandArgument<C, ?>> root,
|
||||
@NonNull final BiPredicate<@NonNull S, @NonNull CommandPermission> permissionChecker,
|
||||
final com.mojang.brigadier.@NonNull Command<S> executor,
|
||||
final SuggestionProvider<S> suggestionProvider) {
|
||||
if (root.getValue() instanceof CompoundArgument) {
|
||||
@SuppressWarnings("unchecked")
|
||||
final CompoundArgument<?, C, ?> compoundArgument = (CompoundArgument<?, C, ?>) root.getValue();
|
||||
|
|
@ -313,8 +314,8 @@ public final class CloudBrigadierManager<C, S> {
|
|||
for (int i = parsers.length - 1; i >= 0; i--) {
|
||||
@SuppressWarnings("unchecked")
|
||||
final ArgumentParser<C, ?> parser = (ArgumentParser<C, ?>) parsers[i];
|
||||
final Pair<ArgumentType<?>, Boolean> pair = this.getArgument(TypeToken.of((Class<?>) types[i]),
|
||||
TypeToken.of(parser.getClass()),
|
||||
final Pair<ArgumentType<?>, Boolean> pair = this.getArgument(TypeToken.get((Class<?>) types[i]),
|
||||
TypeToken.get(parser.getClass()),
|
||||
parser);
|
||||
final SuggestionProvider<S> provider = pair.getRight() ? null : suggestionProvider;
|
||||
final ArgumentBuilder<S, ?> fragmentBuilder = RequiredArgumentBuilder
|
||||
|
|
@ -369,10 +370,10 @@ public final class CloudBrigadierManager<C, S> {
|
|||
return argumentBuilder;
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
private CompletableFuture<Suggestions> buildSuggestions(@Nonnull final CommandArgument<C, ?> argument,
|
||||
@Nonnull final com.mojang.brigadier.context.CommandContext<S> s,
|
||||
@Nonnull final SuggestionsBuilder builder) {
|
||||
private @NonNull CompletableFuture<Suggestions> buildSuggestions(
|
||||
@NonNull final CommandArgument<C, ?> argument,
|
||||
final com.mojang.brigadier.context.@NonNull CommandContext<S> s,
|
||||
@NonNull final SuggestionsBuilder builder) {
|
||||
final CommandContext<C> commandContext = this.dummyContextProvider.get();
|
||||
final LinkedList<String> inputQueue = new LinkedList<>(Collections.singletonList(builder.getInput()));
|
||||
final CommandPreprocessingContext<C> commandPreprocessingContext =
|
||||
|
|
@ -416,18 +417,17 @@ public final class CloudBrigadierManager<C, S> {
|
|||
private final L left;
|
||||
private final R right;
|
||||
|
||||
private Pair(@Nonnull final L left, @Nonnull final R right) {
|
||||
private Pair(@NonNull final L left,
|
||||
@NonNull final R right) {
|
||||
this.left = left;
|
||||
this.right = right;
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
private L getLeft() {
|
||||
private @NonNull L getLeft() {
|
||||
return this.left;
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
private R getRight() {
|
||||
private @NonNull R getRight() {
|
||||
return this.right;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -34,8 +34,8 @@ import org.bukkit.ChatColor;
|
|||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.command.PluginIdentifiableCommand;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CompletionException;
|
||||
|
||||
|
|
@ -51,11 +51,11 @@ final class BukkitCommand<C> extends org.bukkit.command.Command implements Plugi
|
|||
private final Command<C> cloudCommand;
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
BukkitCommand(@Nonnull final String label,
|
||||
@Nonnull final List<String> aliases,
|
||||
@Nonnull final Command<C> cloudCommand,
|
||||
@Nonnull final CommandArgument<C, ?> command,
|
||||
@Nonnull final BukkitCommandManager<C> manager) {
|
||||
BukkitCommand(@NonNull final String label,
|
||||
@NonNull final List<@NonNull String> aliases,
|
||||
@NonNull final Command<C> cloudCommand,
|
||||
@NonNull final CommandArgument<C, ?> command,
|
||||
@NonNull final BukkitCommandManager<C> manager) {
|
||||
super(label,
|
||||
cloudCommand.getCommandMeta().getOrDefault("description", ""),
|
||||
"",
|
||||
|
|
|
|||
|
|
@ -34,8 +34,8 @@ import org.bukkit.Material;
|
|||
import org.bukkit.World;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.EnumSet;
|
||||
import java.util.Set;
|
||||
import java.util.function.Function;
|
||||
|
|
@ -71,11 +71,11 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
* @param backwardsCommandSenderMapper Function that maps the command sender type to {@link CommandSender}
|
||||
* @throws Exception If the construction of the manager fails
|
||||
*/
|
||||
public BukkitCommandManager(@Nonnull final Plugin owningPlugin,
|
||||
@Nonnull final Function<CommandTree<C>,
|
||||
CommandExecutionCoordinator<C>> commandExecutionCoordinator,
|
||||
@Nonnull final Function<CommandSender, C> commandSenderMapper,
|
||||
@Nonnull final Function<C, CommandSender> backwardsCommandSenderMapper)
|
||||
public BukkitCommandManager(@NonNull final Plugin owningPlugin,
|
||||
@NonNull final Function<@NonNull CommandTree<C>,
|
||||
@NonNull CommandExecutionCoordinator<C>> commandExecutionCoordinator,
|
||||
@NonNull final Function<@NonNull CommandSender, @NonNull C> commandSenderMapper,
|
||||
@NonNull final Function<@NonNull C, @NonNull CommandSender> backwardsCommandSenderMapper)
|
||||
throws Exception {
|
||||
super(commandExecutionCoordinator, new BukkitPluginRegistrationHandler<>());
|
||||
((BukkitPluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).initialize(this);
|
||||
|
|
@ -117,8 +117,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @return Owning plugin
|
||||
*/
|
||||
@Nonnull
|
||||
public Plugin getOwningPlugin() {
|
||||
public @NonNull Plugin getOwningPlugin() {
|
||||
return this.owningPlugin;
|
||||
}
|
||||
|
||||
|
|
@ -127,9 +126,8 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @return Meta data
|
||||
*/
|
||||
@Nonnull
|
||||
@Override
|
||||
public BukkitCommandMeta createDefaultCommandMeta() {
|
||||
public @NonNull BukkitCommandMeta createDefaultCommandMeta() {
|
||||
return BukkitCommandMetaBuilder.builder().withDescription("").build();
|
||||
}
|
||||
|
||||
|
|
@ -138,13 +136,12 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @return Command sender mapper
|
||||
*/
|
||||
@Nonnull
|
||||
public final Function<CommandSender, C> getCommandSenderMapper() {
|
||||
public final @NonNull Function<@NonNull CommandSender, @NonNull C> getCommandSenderMapper() {
|
||||
return this.commandSenderMapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public final boolean hasPermission(@Nonnull final C sender, @Nonnull final String permission) {
|
||||
public final boolean hasPermission(@NonNull final C sender, @NonNull final String permission) {
|
||||
if (permission.isEmpty()) {
|
||||
return true;
|
||||
}
|
||||
|
|
@ -172,7 +169,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
* @param capability Capability
|
||||
* @return {@code true} if the manager has the given capability, else {@code false}
|
||||
*/
|
||||
public final boolean queryCapability(@Nonnull final CloudBukkitCapabilities capability) {
|
||||
public final boolean queryCapability(@NonNull final CloudBukkitCapabilities capability) {
|
||||
return this.queryCapabilities().contains(capability);
|
||||
}
|
||||
|
||||
|
|
@ -181,7 +178,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @return A set containing all capabilities of the instance
|
||||
*/
|
||||
public final Set<CloudBukkitCapabilities> queryCapabilities() {
|
||||
public final @NonNull Set<@NonNull CloudBukkitCapabilities> queryCapabilities() {
|
||||
if (this.paper) {
|
||||
if (this.minecraftVersion >= BRIGADIER_MINIMAL_VERSION) {
|
||||
if (this.minecraftVersion >= PAPER_BRIGADIER_VERSION) {
|
||||
|
|
@ -226,8 +223,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @return The backwards command sender mapper
|
||||
*/
|
||||
@Nonnull
|
||||
public final Function<C, CommandSender> getBackwardsCommandSenderMapper() {
|
||||
public final @NonNull Function<@NonNull C, @NonNull CommandSender> getBackwardsCommandSenderMapper() {
|
||||
return this.backwardsCommandSenderMapper;
|
||||
}
|
||||
|
||||
|
|
@ -248,7 +244,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @param reason Reason
|
||||
*/
|
||||
public BrigadierFailureException(@Nonnull final BrigadierFailureReason reason) {
|
||||
public BrigadierFailureException(@NonNull final BrigadierFailureReason reason) {
|
||||
this.reason = reason;
|
||||
}
|
||||
|
||||
|
|
@ -258,7 +254,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
* @param reason Reason
|
||||
* @param cause Cause
|
||||
*/
|
||||
public BrigadierFailureException(@Nonnull final BrigadierFailureReason reason, @Nonnull final Throwable cause) {
|
||||
public BrigadierFailureException(@NonNull final BrigadierFailureReason reason, @NonNull final Throwable cause) {
|
||||
super(cause);
|
||||
this.reason = reason;
|
||||
}
|
||||
|
|
@ -268,8 +264,7 @@ public class BukkitCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @return Reason
|
||||
*/
|
||||
@Nonnull
|
||||
public BrigadierFailureReason getReason() {
|
||||
public @NonNull BrigadierFailureReason getReason() {
|
||||
return this.reason;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -25,8 +25,7 @@ package cloud.commandframework.bukkit;
|
|||
|
||||
import com.google.common.base.Objects;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
/**
|
||||
* Command sender that proxies {@link org.bukkit.command.CommandSender}
|
||||
|
|
@ -41,7 +40,7 @@ public abstract class BukkitCommandSender {
|
|||
*
|
||||
* @param internalSender Bukkit command sender
|
||||
*/
|
||||
public BukkitCommandSender(@Nonnull final org.bukkit.command.CommandSender internalSender) {
|
||||
public BukkitCommandSender(final org.bukkit.command.@NonNull CommandSender internalSender) {
|
||||
this.internalSender = internalSender;
|
||||
}
|
||||
|
||||
|
|
@ -51,8 +50,7 @@ public abstract class BukkitCommandSender {
|
|||
* @param player Player instance
|
||||
* @return Constructed command sender
|
||||
*/
|
||||
@Nonnull
|
||||
public static BukkitCommandSender player(@Nonnull final Player player) {
|
||||
public static @NonNull BukkitCommandSender player(@NonNull final Player player) {
|
||||
return new BukkitPlayerSender(player);
|
||||
}
|
||||
|
||||
|
|
@ -61,8 +59,7 @@ public abstract class BukkitCommandSender {
|
|||
*
|
||||
* @return Constructed command sender
|
||||
*/
|
||||
@Nonnull
|
||||
public static BukkitCommandSender console() {
|
||||
public static @NonNull BukkitCommandSender console() {
|
||||
return new BukkitConsoleSender();
|
||||
}
|
||||
|
||||
|
|
@ -72,8 +69,7 @@ public abstract class BukkitCommandSender {
|
|||
* @param sender Bukkit command sender
|
||||
* @return Constructed command sender
|
||||
*/
|
||||
@Nonnull
|
||||
public static BukkitCommandSender of(@Nonnull final org.bukkit.command.CommandSender sender) {
|
||||
public static @NonNull BukkitCommandSender of(final org.bukkit.command.@NonNull CommandSender sender) {
|
||||
if (sender instanceof Player) {
|
||||
return player((Player) sender);
|
||||
}
|
||||
|
|
@ -102,8 +98,7 @@ public abstract class BukkitCommandSender {
|
|||
*
|
||||
* @return Proxied command sneder
|
||||
*/
|
||||
@Nonnull
|
||||
public org.bukkit.command.CommandSender getInternalSender() {
|
||||
public org.bukkit.command.@NonNull CommandSender getInternalSender() {
|
||||
return this.internalSender;
|
||||
}
|
||||
|
||||
|
|
@ -120,15 +115,14 @@ public abstract class BukkitCommandSender {
|
|||
*
|
||||
* @return Player object
|
||||
*/
|
||||
@Nonnull
|
||||
public abstract Player asPlayer();
|
||||
public abstract @NonNull Player asPlayer();
|
||||
|
||||
/**
|
||||
* Send a message to the command sender
|
||||
*
|
||||
* @param message Message to send
|
||||
*/
|
||||
public void sendMessage(@Nonnull final String message) {
|
||||
public void sendMessage(@NonNull final String message) {
|
||||
this.internalSender.sendMessage(message);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -24,12 +24,11 @@
|
|||
package cloud.commandframework.bukkit;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
final class BukkitPlayerSender extends BukkitCommandSender {
|
||||
|
||||
BukkitPlayerSender(@Nonnull final Player player) {
|
||||
BukkitPlayerSender(@NonNull final Player player) {
|
||||
super(player);
|
||||
}
|
||||
|
||||
|
|
@ -38,9 +37,8 @@ final class BukkitPlayerSender extends BukkitCommandSender {
|
|||
return true;
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
public Player asPlayer() {
|
||||
public @NonNull Player asPlayer() {
|
||||
return (Player) this.getInternalSender();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,8 +35,8 @@ import net.md_5.bungee.api.CommandSender;
|
|||
import net.md_5.bungee.api.chat.ComponentBuilder;
|
||||
import net.md_5.bungee.api.plugin.Command;
|
||||
import net.md_5.bungee.api.plugin.TabExecutor;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.concurrent.CompletionException;
|
||||
|
||||
public final class BungeeCommand<C> extends Command implements TabExecutor {
|
||||
|
|
@ -51,9 +51,9 @@ public final class BungeeCommand<C> extends Command implements TabExecutor {
|
|||
private final cloud.commandframework.Command<C> cloudCommand;
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
BungeeCommand(@Nonnull final cloud.commandframework.Command<C> cloudCommand,
|
||||
@Nonnull final CommandArgument<C, ?> command,
|
||||
@Nonnull final BungeeCommandManager<C> manager) {
|
||||
BungeeCommand(final cloud.commandframework.@NonNull Command<C> cloudCommand,
|
||||
@NonNull final CommandArgument<C, ?> command,
|
||||
@NonNull final BungeeCommandManager<C> manager) {
|
||||
super(command.getName(),
|
||||
cloudCommand.getCommandPermission().toString(),
|
||||
((StaticArgument<C>) command).getAlternativeAliases().toArray(new String[0]));
|
||||
|
|
|
|||
|
|
@ -29,8 +29,8 @@ import cloud.commandframework.execution.CommandExecutionCoordinator;
|
|||
import cloud.commandframework.meta.SimpleCommandMeta;
|
||||
import net.md_5.bungee.api.CommandSender;
|
||||
import net.md_5.bungee.api.plugin.Plugin;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.function.Function;
|
||||
|
||||
public class BungeeCommandManager<C> extends CommandManager<C> {
|
||||
|
|
@ -48,11 +48,11 @@ public class BungeeCommandManager<C> extends CommandManager<C> {
|
|||
* @param backwardsCommandSenderMapper Function that maps the command sender type to {@link CommandSender}
|
||||
* @throws Exception If the construction of the manager fails
|
||||
*/
|
||||
public BungeeCommandManager(@Nonnull final Plugin owningPlugin,
|
||||
@Nonnull final Function<CommandTree<C>,
|
||||
CommandExecutionCoordinator<C>> commandExecutionCoordinator,
|
||||
@Nonnull final Function<CommandSender, C> commandSenderMapper,
|
||||
@Nonnull final Function<C, CommandSender> backwardsCommandSenderMapper)
|
||||
public BungeeCommandManager(@NonNull final Plugin owningPlugin,
|
||||
@NonNull final Function<@NonNull CommandTree<C>,
|
||||
@NonNull CommandExecutionCoordinator<C>> commandExecutionCoordinator,
|
||||
@NonNull final Function<@NonNull CommandSender, @NonNull C> commandSenderMapper,
|
||||
@NonNull final Function<@NonNull C, @NonNull CommandSender> backwardsCommandSenderMapper)
|
||||
throws Exception {
|
||||
super(commandExecutionCoordinator, new BungeePluginRegistrationHandler<>());
|
||||
((BungeePluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).initialize(this);
|
||||
|
|
@ -62,22 +62,20 @@ public class BungeeCommandManager<C> extends CommandManager<C> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public final boolean hasPermission(@Nonnull final C sender,
|
||||
@Nonnull final String permission) {
|
||||
public final boolean hasPermission(@NonNull final C sender,
|
||||
@NonNull final String permission) {
|
||||
if (permission.isEmpty()) {
|
||||
return true;
|
||||
}
|
||||
return this.backwardsCommandSenderMapper.apply(sender).hasPermission(permission);
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
public final SimpleCommandMeta createDefaultCommandMeta() {
|
||||
public final @NonNull SimpleCommandMeta createDefaultCommandMeta() {
|
||||
return SimpleCommandMeta.empty();
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
final Function<CommandSender, C> getCommandSenderMapper() {
|
||||
final @NonNull Function<@NonNull CommandSender, @NonNull C> getCommandSenderMapper() {
|
||||
return this.commandSenderMapper;
|
||||
}
|
||||
|
||||
|
|
@ -86,8 +84,7 @@ public class BungeeCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @return Owning plugin
|
||||
*/
|
||||
@Nonnull
|
||||
public Plugin getOwningPlugin() {
|
||||
public @NonNull Plugin getOwningPlugin() {
|
||||
return this.owningPlugin;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -26,8 +26,8 @@ package cloud.commandframework.bungee;
|
|||
import cloud.commandframework.Command;
|
||||
import cloud.commandframework.arguments.CommandArgument;
|
||||
import cloud.commandframework.internal.CommandRegistrationHandler;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -40,12 +40,12 @@ final class BungeePluginRegistrationHandler<C> implements CommandRegistrationHan
|
|||
BungeePluginRegistrationHandler() {
|
||||
}
|
||||
|
||||
void initialize(@Nonnull final BungeeCommandManager<C> bungeeCommandManager) {
|
||||
void initialize(@NonNull final BungeeCommandManager<C> bungeeCommandManager) {
|
||||
this.bungeeCommandManager = bungeeCommandManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean registerCommand(@Nonnull final Command<?> command) {
|
||||
public boolean registerCommand(@NonNull final Command<?> command) {
|
||||
/* We only care about the root command argument */
|
||||
final CommandArgument<?, ?> commandArgument = command.getArguments().get(0);
|
||||
if (this.registeredCommands.containsKey(commandArgument)) {
|
||||
|
|
|
|||
|
|
@ -29,11 +29,11 @@ import cloud.commandframework.annotations.CommandMethod;
|
|||
import cloud.commandframework.annotations.specifier.Range;
|
||||
import cloud.commandframework.execution.CommandExecutionCoordinator;
|
||||
import cloud.commandframework.meta.SimpleCommandMeta;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
import org.cloudburstmc.server.command.CommandSender;
|
||||
import org.cloudburstmc.server.plugin.PluginBase;
|
||||
import org.cloudburstmc.server.utils.TextFormat;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.function.Function;
|
||||
|
||||
/**
|
||||
|
|
@ -61,8 +61,8 @@ public final class CloudCloudburstTest extends PluginBase {
|
|||
}
|
||||
|
||||
@CommandMethod("test <num> [str]")
|
||||
private void testCommand(@Nonnull @Argument(value = "str", defaultValue = "potato") final String string,
|
||||
@Nonnull final CommandSender source,
|
||||
private void testCommand(@NonNull @Argument(value = "str", defaultValue = "potato") final String string,
|
||||
@NonNull final CommandSender source,
|
||||
@Argument("num") @Range(min = "10", max = "33") final int num) {
|
||||
source.sendMessage(TextFormat.RED + "You said: "
|
||||
+ TextFormat.GOLD + string
|
||||
|
|
|
|||
|
|
@ -24,18 +24,18 @@
|
|||
package cloud.commandframework.cloudburst;
|
||||
|
||||
import cloud.commandframework.Command;
|
||||
import cloud.commandframework.exceptions.InvalidSyntaxException;
|
||||
import cloud.commandframework.exceptions.NoPermissionException;
|
||||
import cloud.commandframework.arguments.CommandArgument;
|
||||
import cloud.commandframework.exceptions.ArgumentParseException;
|
||||
import cloud.commandframework.exceptions.InvalidCommandSenderException;
|
||||
import cloud.commandframework.exceptions.InvalidSyntaxException;
|
||||
import cloud.commandframework.exceptions.NoPermissionException;
|
||||
import cloud.commandframework.exceptions.NoSuchCommandException;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
import org.cloudburstmc.server.command.CommandSender;
|
||||
import org.cloudburstmc.server.command.PluginCommand;
|
||||
import org.cloudburstmc.server.command.data.CommandData;
|
||||
import org.cloudburstmc.server.plugin.Plugin;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CompletionException;
|
||||
|
||||
|
|
@ -50,11 +50,11 @@ final class CloudburstCommand<C> extends PluginCommand<Plugin> {
|
|||
private final CloudburstCommandManager<C> manager;
|
||||
private final Command<C> cloudCommand;
|
||||
|
||||
CloudburstCommand(@Nonnull final String label,
|
||||
@Nonnull final List<String> aliases,
|
||||
@Nonnull final Command<C> cloudCommand,
|
||||
@Nonnull final CommandArgument<C, ?> command,
|
||||
@Nonnull final CloudburstCommandManager<C> manager) {
|
||||
CloudburstCommand(@NonNull final String label,
|
||||
@NonNull final List<@NonNull String> aliases,
|
||||
@NonNull final Command<C> cloudCommand,
|
||||
@NonNull final CommandArgument<C, ?> command,
|
||||
@NonNull final CloudburstCommandManager<C> manager) {
|
||||
super(manager.getOwningPlugin(), CommandData.builder(label)
|
||||
.addAliases(aliases.toArray(new String[0]))
|
||||
.addPermission(cloudCommand.getCommandPermission().toString())
|
||||
|
|
|
|||
|
|
@ -28,10 +28,10 @@ import cloud.commandframework.CommandTree;
|
|||
import cloud.commandframework.execution.CommandExecutionCoordinator;
|
||||
import cloud.commandframework.meta.CommandMeta;
|
||||
import cloud.commandframework.meta.SimpleCommandMeta;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
import org.cloudburstmc.server.command.CommandSender;
|
||||
import org.cloudburstmc.server.plugin.Plugin;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.function.Function;
|
||||
|
||||
/**
|
||||
|
|
@ -54,11 +54,11 @@ public class CloudburstCommandManager<C> extends CommandManager<C> {
|
|||
* @param commandSenderMapper Function that maps {@link CommandSender} to the command sender type
|
||||
* @param backwardsCommandSenderMapper Function that maps the command sender type to {@link CommandSender}
|
||||
*/
|
||||
public CloudburstCommandManager(@Nonnull final Plugin owningPlugin,
|
||||
@Nonnull final Function<CommandTree<C>,
|
||||
CommandExecutionCoordinator<C>> commandExecutionCoordinator,
|
||||
@Nonnull final Function<CommandSender, C> commandSenderMapper,
|
||||
@Nonnull final Function<C, CommandSender> backwardsCommandSenderMapper) {
|
||||
public CloudburstCommandManager(@NonNull final Plugin owningPlugin,
|
||||
@NonNull final Function<@NonNull CommandTree<C>,
|
||||
@NonNull CommandExecutionCoordinator<C>> commandExecutionCoordinator,
|
||||
@NonNull final Function<@NonNull CommandSender, @NonNull C> commandSenderMapper,
|
||||
@NonNull final Function<@NonNull C, @NonNull CommandSender> backwardsCommandSenderMapper) {
|
||||
super(commandExecutionCoordinator, new CloudburstPluginRegistrationHandler<>());
|
||||
((CloudburstPluginRegistrationHandler<C>) this.getCommandRegistrationHandler()).initialize(this);
|
||||
this.commandSenderMapper = commandSenderMapper;
|
||||
|
|
@ -67,19 +67,17 @@ public class CloudburstCommandManager<C> extends CommandManager<C> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public final boolean hasPermission(@Nonnull final C sender,
|
||||
@Nonnull final String permission) {
|
||||
public final boolean hasPermission(@NonNull final C sender,
|
||||
@NonNull final String permission) {
|
||||
return this.backwardsCommandSenderMapper.apply(sender).hasPermission(permission);
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
public final CommandMeta createDefaultCommandMeta() {
|
||||
public final @NonNull CommandMeta createDefaultCommandMeta() {
|
||||
return SimpleCommandMeta.builder().build();
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
final Function<CommandSender, C> getCommandSenderMapper() {
|
||||
final @NonNull Function<@NonNull CommandSender, @NonNull C> getCommandSenderMapper() {
|
||||
return this.commandSenderMapper;
|
||||
}
|
||||
|
||||
|
|
@ -88,8 +86,7 @@ public class CloudburstCommandManager<C> extends CommandManager<C> {
|
|||
*
|
||||
* @return Owning plugin
|
||||
*/
|
||||
@Nonnull
|
||||
public final Plugin getOwningPlugin() {
|
||||
public final @NonNull Plugin getOwningPlugin() {
|
||||
return this.owningPlugin;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -23,14 +23,14 @@
|
|||
//
|
||||
package cloud.commandframework.cloudburst;
|
||||
|
||||
import cloud.commandframework.arguments.CommandArgument;
|
||||
import cloud.commandframework.Command;
|
||||
import cloud.commandframework.arguments.CommandArgument;
|
||||
import cloud.commandframework.arguments.StaticArgument;
|
||||
import cloud.commandframework.internal.CommandRegistrationHandler;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
import org.cloudburstmc.server.Server;
|
||||
import org.cloudburstmc.server.plugin.Plugin;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -43,12 +43,12 @@ class CloudburstPluginRegistrationHandler<C> implements CommandRegistrationHandl
|
|||
CloudburstPluginRegistrationHandler() {
|
||||
}
|
||||
|
||||
void initialize(@Nonnull final CloudburstCommandManager<C> cloudburstCommandManager) {
|
||||
void initialize(@NonNull final CloudburstCommandManager<C> cloudburstCommandManager) {
|
||||
this.cloudburstCommandManager = cloudburstCommandManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
public final boolean registerCommand(@Nonnull final Command<?> command) {
|
||||
public final boolean registerCommand(@NonNull final Command<?> command) {
|
||||
/* We only care about the root command argument */
|
||||
final CommandArgument<?, ?> commandArgument = command.getArguments().get(0);
|
||||
if (this.registeredCommands.containsKey(commandArgument)) {
|
||||
|
|
|
|||
|
|
@ -24,8 +24,8 @@
|
|||
package cloud.commandframework;
|
||||
|
||||
import net.kyori.adventure.audience.Audience;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.function.Function;
|
||||
|
||||
/**
|
||||
|
|
@ -34,7 +34,7 @@ import java.util.function.Function;
|
|||
* @param <C> Command sender type
|
||||
*/
|
||||
@FunctionalInterface
|
||||
public interface AudienceProvider<C> extends Function<C, Audience> {
|
||||
public interface AudienceProvider<C> extends Function<@NonNull C, @NonNull Audience> {
|
||||
|
||||
/**
|
||||
* Convert a command sender to an {@link Audience}
|
||||
|
|
@ -43,7 +43,6 @@ public interface AudienceProvider<C> extends Function<C, Audience> {
|
|||
* @return Mapped audience
|
||||
*/
|
||||
@Override
|
||||
@Nonnull
|
||||
Audience apply(@Nonnull C sender);
|
||||
@NonNull Audience apply(@NonNull C sender);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@ import cloud.commandframework.arguments.StaticArgument;
|
|||
import net.kyori.adventure.audience.Audience;
|
||||
import net.kyori.adventure.text.minimessage.MiniMessage;
|
||||
import net.kyori.adventure.text.minimessage.Template;
|
||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
|
|
@ -73,9 +73,9 @@ public final class MinecraftHelp<C> {
|
|||
* @param audienceProvider Provider that maps the command sender type to {@link Audience}
|
||||
* @param commandManager Command manager instance
|
||||
*/
|
||||
public MinecraftHelp(@Nonnull final String commandPrefix,
|
||||
@Nonnull final AudienceProvider<C> audienceProvider,
|
||||
@Nonnull final CommandManager<C> commandManager) {
|
||||
public MinecraftHelp(@NonNull final String commandPrefix,
|
||||
@NonNull final AudienceProvider<C> audienceProvider,
|
||||
@NonNull final CommandManager<C> commandManager) {
|
||||
this.commandPrefix = commandPrefix;
|
||||
this.audienceProvider = audienceProvider;
|
||||
this.commandManager = commandManager;
|
||||
|
|
@ -109,8 +109,7 @@ public final class MinecraftHelp<C> {
|
|||
*
|
||||
* @return Command manager
|
||||
*/
|
||||
@Nonnull
|
||||
public CommandManager<C> getCommandManager() {
|
||||
public @NonNull CommandManager<C> getCommandManager() {
|
||||
return this.commandManager;
|
||||
}
|
||||
|
||||
|
|
@ -119,8 +118,7 @@ public final class MinecraftHelp<C> {
|
|||
*
|
||||
* @return Audience provider
|
||||
*/
|
||||
@Nonnull
|
||||
public AudienceProvider<C> getAudienceProvider() {
|
||||
public @NonNull AudienceProvider<C> getAudienceProvider() {
|
||||
return this.audienceProvider;
|
||||
}
|
||||
|
||||
|
|
@ -130,8 +128,7 @@ public final class MinecraftHelp<C> {
|
|||
* @param sender Sender to map
|
||||
* @return Mapped audience
|
||||
*/
|
||||
@Nonnull
|
||||
public Audience getAudience(@Nonnull final C sender) {
|
||||
public @NonNull Audience getAudience(@NonNull final C sender) {
|
||||
return this.audienceProvider.apply(sender);
|
||||
}
|
||||
|
||||
|
|
@ -141,7 +138,8 @@ public final class MinecraftHelp<C> {
|
|||
* @param key Message key
|
||||
* @param message Message
|
||||
*/
|
||||
public void setMessage(@Nonnull final String key, @Nonnull final String message) {
|
||||
public void setMessage(@NonNull final String key,
|
||||
@NonNull final String message) {
|
||||
this.messageMap.put(key, message);
|
||||
}
|
||||
|
||||
|
|
@ -151,17 +149,17 @@ public final class MinecraftHelp<C> {
|
|||
* @param query Command query (without leading '/')
|
||||
* @param recipient Recipient
|
||||
*/
|
||||
public void queryCommands(@Nonnull final String query,
|
||||
@Nonnull final C recipient) {
|
||||
public void queryCommands(@NonNull final String query,
|
||||
@NonNull final C recipient) {
|
||||
final Audience audience = this.getAudience(recipient);
|
||||
audience.sendMessage(this.miniMessage.parse(this.messageMap.get(MESSAGE_HELP_HEADER)));
|
||||
this.printTopic(recipient, query, this.commandManager.getCommandHelpHandler().queryHelp(query));
|
||||
audience.sendMessage(this.miniMessage.parse(this.messageMap.get(MESSAGE_HELP_FOOTER)));
|
||||
}
|
||||
|
||||
private void printTopic(@Nonnull final C sender,
|
||||
@Nonnull final String query,
|
||||
@Nonnull final CommandHelpHandler.HelpTopic<C> helpTopic) {
|
||||
private void printTopic(@NonNull final C sender,
|
||||
@NonNull final String query,
|
||||
final CommandHelpHandler.@NonNull HelpTopic<C> helpTopic) {
|
||||
this.getAudience(sender).sendMessage(this.miniMessage.parse(this.messageMap.get(MESSAGE_QUERY_QUERY),
|
||||
Template.of("query", query)));
|
||||
if (helpTopic instanceof CommandHelpHandler.IndexHelpTopic) {
|
||||
|
|
@ -175,7 +173,8 @@ public final class MinecraftHelp<C> {
|
|||
}
|
||||
}
|
||||
|
||||
private void printIndexHelpTopic(@Nonnull final C sender, @Nonnull final CommandHelpHandler.IndexHelpTopic<C> helpTopic) {
|
||||
private void printIndexHelpTopic(@NonNull final C sender,
|
||||
final CommandHelpHandler.@NonNull IndexHelpTopic<C> helpTopic) {
|
||||
final Audience audience = this.getAudience(sender);
|
||||
audience.sendMessage(this.miniMessage.parse(this.messageMap.get(MESSAGE_QUERY_AVAILABLE_COMMANDS)));
|
||||
final Iterator<CommandHelpHandler.VerboseHelpEntry<C>> iterator = helpTopic.getEntries().iterator();
|
||||
|
|
@ -202,7 +201,8 @@ public final class MinecraftHelp<C> {
|
|||
}
|
||||
}
|
||||
|
||||
private void printMultiHelpTopic(@Nonnull final C sender, @Nonnull final CommandHelpHandler.MultiHelpTopic<C> helpTopic) {
|
||||
private void printMultiHelpTopic(@NonNull final C sender,
|
||||
final CommandHelpHandler.@NonNull MultiHelpTopic<C> helpTopic) {
|
||||
final Audience audience = this.getAudience(sender);
|
||||
audience.sendMessage(this.miniMessage.parse(this.messageMap.get(MESSAGE_QUERY_LONGEST_PATH),
|
||||
Template.of("command", helpTopic.getLongestPath())));
|
||||
|
|
@ -236,7 +236,8 @@ public final class MinecraftHelp<C> {
|
|||
}
|
||||
}
|
||||
|
||||
private void printVerboseHelpTopic(@Nonnull final C sender, @Nonnull final CommandHelpHandler.VerboseHelpTopic<C> helpTopic) {
|
||||
private void printVerboseHelpTopic(@NonNull final C sender,
|
||||
final CommandHelpHandler.@NonNull VerboseHelpTopic<C> helpTopic) {
|
||||
final Audience audience = this.getAudience(sender);
|
||||
final String command = this.commandManager.getCommandSyntaxFormatter()
|
||||
.apply(helpTopic.getCommand().getArguments(), null);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue