Deprecate argument newBuilder methods and add builder methods to align with newer arguments (#419)

This commit is contained in:
Jason 2022-12-13 08:54:54 -07:00
parent 306a1def9a
commit 99d388b708
39 changed files with 634 additions and 204 deletions

View file

@ -36,6 +36,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import org.apiguardian.api.API;
import org.bukkit.NamespacedKey;
import org.bukkit.enchantments.Enchantment;
import org.checkerframework.checker.nullness.qual.NonNull;
@ -67,15 +68,31 @@ public class EnchantmentArgument<C> extends CommandArgument<C, Enchantment> {
);
}
/**
* Create a new {@link Builder}.
*
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new EnchantmentArgument.Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
public static <C> EnchantmentArgument.@NonNull Builder<C> newBuilder(final @NonNull String name) {
return new EnchantmentArgument.Builder<>(name);
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
@ -86,7 +103,7 @@ public class EnchantmentArgument<C> extends CommandArgument<C, Enchantment> {
* @return Created argument
*/
public static <C> @NonNull CommandArgument<C, Enchantment> of(final @NonNull String name) {
return EnchantmentArgument.<C>newBuilder(name).asRequired().build();
return EnchantmentArgument.<C>builder(name).asRequired().build();
}
/**
@ -97,7 +114,7 @@ public class EnchantmentArgument<C> extends CommandArgument<C, Enchantment> {
* @return Created argument
*/
public static <C> @NonNull CommandArgument<C, Enchantment> optional(final @NonNull String name) {
return EnchantmentArgument.<C>newBuilder(name).asOptional().build();
return EnchantmentArgument.<C>builder(name).asOptional().build();
}
/**
@ -112,7 +129,7 @@ public class EnchantmentArgument<C> extends CommandArgument<C, Enchantment> {
final @NonNull String name,
final @NonNull Enchantment enchantment
) {
return EnchantmentArgument.<C>newBuilder(name).asOptionalWithDefault(enchantment.getKey().toString()).build();
return EnchantmentArgument.<C>builder(name).asOptionalWithDefault(enchantment.getKey().toString()).build();
}
public static final class Builder<C> extends CommandArgument.Builder<C, Enchantment> {

View file

@ -36,6 +36,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import org.apiguardian.api.API;
import org.bukkit.Material;
import org.checkerframework.checker.nullness.qual.NonNull;
import org.checkerframework.checker.nullness.qual.Nullable;
@ -58,15 +59,31 @@ public class MaterialArgument<C> extends CommandArgument<C, Material> {
super(required, name, new MaterialParser<>(), defaultValue, Material.class, suggestionsProvider, defaultDescription);
}
/**
* Create a new {@link Builder}.
*
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
public static <C> MaterialArgument.@NonNull Builder<C> newBuilder(final @NonNull String name) {
return new MaterialArgument.Builder<>(name);
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
@ -77,7 +94,7 @@ public class MaterialArgument<C> extends CommandArgument<C, Material> {
* @return Created argument
*/
public static <C> @NonNull CommandArgument<C, Material> of(final @NonNull String name) {
return MaterialArgument.<C>newBuilder(name).asRequired().build();
return MaterialArgument.<C>builder(name).asRequired().build();
}
/**
@ -88,7 +105,7 @@ public class MaterialArgument<C> extends CommandArgument<C, Material> {
* @return Created argument
*/
public static <C> @NonNull CommandArgument<C, Material> optional(final @NonNull String name) {
return MaterialArgument.<C>newBuilder(name).asOptional().build();
return MaterialArgument.<C>builder(name).asOptional().build();
}
/**
@ -103,7 +120,7 @@ public class MaterialArgument<C> extends CommandArgument<C, Material> {
final @NonNull String name,
final @NonNull Material material
) {
return MaterialArgument.<C>newBuilder(name).asOptionalWithDefault(material.name().toLowerCase()).build();
return MaterialArgument.<C>builder(name).asOptionalWithDefault(material.name().toLowerCase()).build();
}
public static final class Builder<C> extends CommandArgument.Builder<C, Material> {

View file

@ -37,6 +37,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import org.apiguardian.api.API;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.command.CommandSender;
@ -74,15 +75,31 @@ public final class OfflinePlayerArgument<C> extends CommandArgument<C, OfflinePl
);
}
/**
* Create a new {@link Builder}.
*
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the component
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return new Builder<>(name);
return builder(name);
}
/**
@ -93,7 +110,7 @@ public final class OfflinePlayerArgument<C> extends CommandArgument<C, OfflinePl
* @return Created component
*/
public static <C> @NonNull CommandArgument<C, OfflinePlayer> of(final @NonNull String name) {
return OfflinePlayerArgument.<C>newBuilder(name).asRequired().build();
return OfflinePlayerArgument.<C>builder(name).asRequired().build();
}
/**
@ -104,7 +121,7 @@ public final class OfflinePlayerArgument<C> extends CommandArgument<C, OfflinePl
* @return Created component
*/
public static <C> @NonNull CommandArgument<C, OfflinePlayer> optional(final @NonNull String name) {
return OfflinePlayerArgument.<C>newBuilder(name).asOptional().build();
return OfflinePlayerArgument.<C>builder(name).asOptional().build();
}
/**
@ -119,7 +136,7 @@ public final class OfflinePlayerArgument<C> extends CommandArgument<C, OfflinePl
final @NonNull String name,
final @NonNull String defaultPlayer
) {
return OfflinePlayerArgument.<C>newBuilder(name).asOptionalWithDefault(defaultPlayer).build();
return OfflinePlayerArgument.<C>builder(name).asOptionalWithDefault(defaultPlayer).build();
}

View file

@ -37,6 +37,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import org.apiguardian.api.API;
import org.bukkit.Bukkit;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -62,15 +63,31 @@ public final class PlayerArgument<C> extends CommandArgument<C, Player> {
super(required, name, new PlayerParser<>(), defaultValue, Player.class, suggestionsProvider, defaultDescription);
}
/**
* Create a new {@link Builder}.
*
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the component
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return new Builder<>(name);
return builder(name);
}
/**
@ -81,7 +98,7 @@ public final class PlayerArgument<C> extends CommandArgument<C, Player> {
* @return Created component
*/
public static <C> @NonNull CommandArgument<C, Player> of(final @NonNull String name) {
return PlayerArgument.<C>newBuilder(name).asRequired().build();
return PlayerArgument.<C>builder(name).asRequired().build();
}
/**
@ -92,7 +109,7 @@ public final class PlayerArgument<C> extends CommandArgument<C, Player> {
* @return Created component
*/
public static <C> @NonNull CommandArgument<C, Player> optional(final @NonNull String name) {
return PlayerArgument.<C>newBuilder(name).asOptional().build();
return PlayerArgument.<C>builder(name).asOptional().build();
}
/**
@ -107,7 +124,7 @@ public final class PlayerArgument<C> extends CommandArgument<C, Player> {
final @NonNull String name,
final @NonNull String defaultPlayer
) {
return PlayerArgument.<C>newBuilder(name).asOptionalWithDefault(defaultPlayer).build();
return PlayerArgument.<C>builder(name).asOptionalWithDefault(defaultPlayer).build();
}

View file

@ -36,6 +36,7 @@ import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import java.util.stream.Collectors;
import org.apiguardian.api.API;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.checkerframework.checker.nullness.qual.NonNull;
@ -58,15 +59,31 @@ public class WorldArgument<C> extends CommandArgument<C, World> {
super(required, name, new WorldParser<>(), defaultValue, World.class, suggestionsProvider, defaultDescription);
}
/**
* Create a new {@link Builder}.
*
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
public static <C> CommandArgument.@NonNull Builder<C, World> newBuilder(final @NonNull String name) {
return new WorldArgument.Builder<>(name);
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
@ -77,7 +94,7 @@ public class WorldArgument<C> extends CommandArgument<C, World> {
* @return Created argument
*/
public static <C> @NonNull CommandArgument<C, World> of(final @NonNull String name) {
return WorldArgument.<C>newBuilder(name).asRequired().build();
return WorldArgument.<C>builder(name).asRequired().build();
}
/**
@ -88,7 +105,7 @@ public class WorldArgument<C> extends CommandArgument<C, World> {
* @return Created argument
*/
public static <C> @NonNull CommandArgument<C, World> optional(final @NonNull String name) {
return WorldArgument.<C>newBuilder(name).asOptional().build();
return WorldArgument.<C>builder(name).asOptional().build();
}
/**
@ -103,7 +120,7 @@ public class WorldArgument<C> extends CommandArgument<C, World> {
final @NonNull String name,
final @NonNull String defaultValue
) {
return WorldArgument.<C>newBuilder(name).asOptionalWithDefault(defaultValue).build();
return WorldArgument.<C>builder(name).asOptionalWithDefault(defaultValue).build();
}

View file

@ -36,6 +36,7 @@ import java.util.LinkedList;
import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import org.apiguardian.api.API;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.command.BlockCommandSender;
@ -76,18 +77,32 @@ public final class Location2DArgument<C> extends CommandArgument<C, Location2D>
}
/**
* Create a new argument builder
* Create a new {@link Builder}.
*
* @param name Argument name
* @param <C> Command sender type
* @return Builder instance
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
public static <C> @NonNull Builder<C> newBuilder(
final @NonNull String name
) {
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
* Create a new required argument
*
@ -98,9 +113,7 @@ public final class Location2DArgument<C> extends CommandArgument<C, Location2D>
public static <C> @NonNull CommandArgument<C, Location2D> of(
final @NonNull String name
) {
return Location2DArgument.<C>newBuilder(
name
).asRequired().build();
return Location2DArgument.<C>builder(name).asRequired().build();
}
/**
@ -113,9 +126,7 @@ public final class Location2DArgument<C> extends CommandArgument<C, Location2D>
public static <C> @NonNull CommandArgument<C, Location2D> optional(
final @NonNull String name
) {
return Location2DArgument.<C>newBuilder(
name
).asOptional().build();
return Location2DArgument.<C>builder(name).asOptional().build();
}

View file

@ -41,6 +41,7 @@ import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import java.util.stream.Collectors;
import org.apiguardian.api.API;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.command.BlockCommandSender;
@ -81,18 +82,32 @@ public final class LocationArgument<C> extends CommandArgument<C, Location> {
}
/**
* Create a new argument builder
* Create a new {@link Builder}.
*
* @param name Argument name
* @param <C> Command sender type
* @return Builder instance
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
public static <C> @NonNull Builder<C> newBuilder(
final @NonNull String name
) {
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
* Create a new required argument
*
@ -103,9 +118,7 @@ public final class LocationArgument<C> extends CommandArgument<C, Location> {
public static <C> @NonNull CommandArgument<C, Location> of(
final @NonNull String name
) {
return LocationArgument.<C>newBuilder(
name
).asRequired().build();
return LocationArgument.<C>builder(name).asRequired().build();
}
/**
@ -118,9 +131,7 @@ public final class LocationArgument<C> extends CommandArgument<C, Location> {
public static <C> @NonNull CommandArgument<C, Location> optional(
final @NonNull String name
) {
return LocationArgument.<C>newBuilder(
name
).asOptional().build();
return LocationArgument.<C>builder(name).asOptional().build();
}

View file

@ -41,6 +41,7 @@ import java.util.function.BiFunction;
import java.util.stream.Collectors;
import net.md_5.bungee.api.ProxyServer;
import net.md_5.bungee.api.connection.ProxiedPlayer;
import org.apiguardian.api.API;
import org.checkerframework.checker.nullness.qual.NonNull;
import org.checkerframework.checker.nullness.qual.Nullable;
@ -74,20 +75,30 @@ public final class PlayerArgument<C> extends CommandArgument<C, ProxiedPlayer> {
}
/**
* Create a new argument builder
* Create a new {@link Builder}.
*
* @param name Argument name
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Constructed builder
**/
public static <C> CommandArgument.@NonNull Builder<C, ProxiedPlayer> newBuilder(
final @NonNull String name
) {
return new Builder<C>(
name
).withParser(
new PlayerParser<>()
);
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
@ -100,7 +111,7 @@ public final class PlayerArgument<C> extends CommandArgument<C, ProxiedPlayer> {
public static <C> CommandArgument<C, ProxiedPlayer> of(
final @NonNull String name
) {
return PlayerArgument.<C>newBuilder(name).asRequired().build();
return PlayerArgument.<C>builder(name).asRequired().build();
}
/**
@ -113,7 +124,7 @@ public final class PlayerArgument<C> extends CommandArgument<C, ProxiedPlayer> {
public static <C> CommandArgument<C, ProxiedPlayer> optional(
final @NonNull String name
) {
return PlayerArgument.<C>newBuilder(name).asOptional().build();
return PlayerArgument.<C>builder(name).asOptional().build();
}

View file

@ -41,6 +41,7 @@ import java.util.Queue;
import java.util.function.BiFunction;
import net.md_5.bungee.api.ProxyServer;
import net.md_5.bungee.api.config.ServerInfo;
import org.apiguardian.api.API;
import org.checkerframework.checker.nullness.qual.NonNull;
import org.checkerframework.checker.nullness.qual.Nullable;
@ -74,20 +75,30 @@ public final class ServerArgument<C> extends CommandArgument<C, ServerInfo> {
}
/**
* Create a new argument builder
* Create a new {@link Builder}.
*
* @param name Argument name
* @param <C> Command sender type
* @return Constructed builder
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
public static <C> CommandArgument.@NonNull Builder<C, ServerInfo> newBuilder(
final @NonNull String name
) {
return new Builder<C>(
name
).withParser(
new ServerParser<>()
);
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
@ -100,7 +111,7 @@ public final class ServerArgument<C> extends CommandArgument<C, ServerInfo> {
public static <C> @NonNull CommandArgument<C, ServerInfo> of(
final @NonNull String name
) {
return ServerArgument.<C>newBuilder(name).asRequired().build();
return ServerArgument.<C>builder(name).asRequired().build();
}
/**
@ -113,7 +124,7 @@ public final class ServerArgument<C> extends CommandArgument<C, ServerInfo> {
public static <C> @NonNull CommandArgument<C, ServerInfo> optional(
final @NonNull String name
) {
return ServerArgument.<C>newBuilder(name).asOptional().build();
return ServerArgument.<C>builder(name).asOptional().build();
}
public static final class Builder<C> extends CommandArgument.Builder<C, ServerInfo> {

View file

@ -129,7 +129,7 @@ public final class FabricClientExample implements ClientModInitializer {
commandManager.command(base.literal("flag_test")
.argument(StringArgument.optional("parameter"))
.flag(CommandFlag.newBuilder("flag").withAliases("f"))
.flag(CommandFlag.builder("flag").withAliases("f"))
.handler(ctx -> ctx.getSender().sendFeedback(Component.literal("Had flag: " + ctx.flags().isPresent("flag")))));
}

View file

@ -78,7 +78,7 @@ public final class FabricExample implements ModInitializer {
final Command.Builder<CommandSourceStack> base = manager.commandBuilder("cloudtest");
final CommandArgument<CommandSourceStack, String> name = StringArgument.of("name");
final CommandArgument<CommandSourceStack, Integer> hugs = IntegerArgument.<CommandSourceStack>newBuilder("hugs")
final CommandArgument<CommandSourceStack, Integer> hugs = IntegerArgument.<CommandSourceStack>builder("hugs")
.asOptionalWithDefault("1")
.build();
@ -148,7 +148,7 @@ public final class FabricExample implements ModInitializer {
.permission("cloud.give")
.argument(MultiplePlayerSelectorArgument.of("targets"))
.argument(ItemInputArgument.of("item"))
.argument(IntegerArgument.<CommandSourceStack>newBuilder("amount")
.argument(IntegerArgument.<CommandSourceStack>builder("amount")
.withMin(1)
.asOptionalWithDefault("1"))
.handler(ctx -> {

View file

@ -41,6 +41,7 @@ import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import java.util.stream.Collectors;
import org.apiguardian.api.API;
import org.checkerframework.checker.nullness.qual.NonNull;
import org.checkerframework.checker.nullness.qual.Nullable;
@ -74,20 +75,30 @@ public final class PlayerArgument<C> extends CommandArgument<C, Player> {
}
/**
* Create a new argument builder
* Create a new {@link Builder}.
*
* @param name Argument name
* @param <C> Command sender type
* @return Constructed builder
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
public static <C> CommandArgument.@NonNull Builder<C, Player> newBuilder(
final @NonNull String name
) {
return new Builder<C>(
name
).withParser(
new PlayerParser<>()
);
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
@ -100,7 +111,7 @@ public final class PlayerArgument<C> extends CommandArgument<C, Player> {
public static <C> @NonNull CommandArgument<C, Player> of(
final @NonNull String name
) {
return PlayerArgument.<C>newBuilder(name).asRequired().build();
return PlayerArgument.<C>builder(name).asRequired().build();
}
/**
@ -113,7 +124,7 @@ public final class PlayerArgument<C> extends CommandArgument<C, Player> {
public static <C> @NonNull CommandArgument<C, Player> optional(
final @NonNull String name
) {
return PlayerArgument.<C>newBuilder(name).asOptional().build();
return PlayerArgument.<C>builder(name).asOptional().build();
}

View file

@ -41,6 +41,7 @@ import java.util.List;
import java.util.Queue;
import java.util.function.BiFunction;
import java.util.stream.Collectors;
import org.apiguardian.api.API;
import org.checkerframework.checker.nullness.qual.NonNull;
import org.checkerframework.checker.nullness.qual.Nullable;
@ -74,20 +75,30 @@ public final class ServerArgument<C> extends CommandArgument<C, RegisteredServer
}
/**
* Create a new argument builder
* Create a new {@link Builder}.
*
* @param name Argument name
* @param <C> Command sender type
* @return Constructed builder
* @param name argument name
* @param <C> sender type
* @return new {@link Builder}
* @since 1.8.0
*/
public static <C> CommandArgument.@NonNull Builder<C, RegisteredServer> newBuilder(
final @NonNull String name
) {
return new Builder<C>(
name
).withParser(
new ServerParser<>()
);
@API(status = API.Status.STABLE, since = "1.8.0")
public static <C> @NonNull Builder<C> builder(final @NonNull String name) {
return new Builder<>(name);
}
/**
* Create a new builder
*
* @param name Name of the argument
* @param <C> Command sender type
* @return Created builder
* @deprecated prefer {@link #builder(String)}
*/
@API(status = API.Status.DEPRECATED, since = "1.8.0")
@Deprecated
public static <C> @NonNull Builder<C> newBuilder(final @NonNull String name) {
return builder(name);
}
/**
@ -100,7 +111,7 @@ public final class ServerArgument<C> extends CommandArgument<C, RegisteredServer
public static <C> @NonNull CommandArgument<C, RegisteredServer> of(
final @NonNull String name
) {
return ServerArgument.<C>newBuilder(name).asRequired().build();
return ServerArgument.<C>builder(name).asRequired().build();
}
/**
@ -111,7 +122,7 @@ public final class ServerArgument<C> extends CommandArgument<C, RegisteredServer
* @return Created argument
*/
public static <C> @NonNull CommandArgument<C, RegisteredServer> optional(final @NonNull String name) {
return ServerArgument.<C>newBuilder(name).asOptional().build();
return ServerArgument.<C>builder(name).asOptional().build();
}
public static final class Builder<C> extends CommandArgument.Builder<C, RegisteredServer> {