diff --git a/paper-api/src/main/java/com/destroystokyo/paper/event/brigadier/CommandRegisteredEvent.java b/paper-api/src/main/java/com/destroystokyo/paper/event/brigadier/CommandRegisteredEvent.java index acc2bd2ec56e..8dc9dbc8f919 100644 --- a/paper-api/src/main/java/com/destroystokyo/paper/event/brigadier/CommandRegisteredEvent.java +++ b/paper-api/src/main/java/com/destroystokyo/paper/event/brigadier/CommandRegisteredEvent.java @@ -9,7 +9,6 @@ import org.bukkit.event.Cancellable; import org.bukkit.event.HandlerList; import org.bukkit.event.server.ServerEvent; -import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; /** @@ -19,10 +18,8 @@ * This is done at Plugin Enable time after commands have been registered, but may also * run at a later point in the server lifetime due to plugins, a server reload, etc.

* - *

This is a draft/experimental API and is subject to change.

* @deprecated For removal, use the new brigadier api. */ -@ApiStatus.Experimental @Deprecated(since = "1.20.6") @Warning(reason = "This event has been superseded by the Commands API and will be removed in a future release. Listen to LifecycleEvents.COMMANDS instead.", value = true) public class CommandRegisteredEvent extends ServerEvent implements Cancellable { diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/BasicCommand.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/BasicCommand.java index c89d6c4c38e2..d067bb896685 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/BasicCommand.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/BasicCommand.java @@ -4,15 +4,12 @@ import java.util.Collections; import org.bukkit.command.CommandSender; import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; import org.jspecify.annotations.Nullable; /** * Implementing this interface allows for easily creating "Bukkit-style" {@code String[] args} commands. * The implementation handles converting the command to a representation compatible with Brigadier on registration, usually in the form of {@literal /commandlabel }. */ -@ApiStatus.Experimental -@NullMarked @FunctionalInterface public interface BasicCommand { diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/CommandSourceStack.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/CommandSourceStack.java index 109c0a89e252..a6e01ffa3f30 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/CommandSourceStack.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/CommandSourceStack.java @@ -6,7 +6,6 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Entity; import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; import org.jspecify.annotations.Nullable; /** @@ -21,8 +20,6 @@ * exist yet, or no specific sender is available. Methods on such a {@link CommandSender} * will either have no effect or throw an {@link UnsupportedOperationException}.

*/ -@ApiStatus.Experimental -@NullMarked @ApiStatus.NonExtendable public interface CommandSourceStack { diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/Commands.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/Commands.java index 3c2d08662da8..6545a34b54a9 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/Commands.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/Commands.java @@ -17,7 +17,6 @@ import java.util.function.Predicate; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Unmodifiable; -import org.jspecify.annotations.NullMarked; import org.jspecify.annotations.Nullable; /** @@ -60,8 +59,6 @@ * * @see io.papermc.paper.plugin.lifecycle.event.types.LifecycleEvents#COMMANDS */ -@ApiStatus.Experimental -@NullMarked @ApiStatus.NonExtendable public interface Commands extends Registrar { diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/MessageComponentSerializer.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/MessageComponentSerializer.java index 19f3dc12426b..ea19ba9ba724 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/MessageComponentSerializer.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/MessageComponentSerializer.java @@ -1,16 +1,15 @@ package io.papermc.paper.command.brigadier; import com.mojang.brigadier.Message; +import java.util.Optional; +import java.util.ServiceLoader; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.serializer.ComponentSerializer; import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; /** * A component serializer for converting between {@link Message} and {@link Component}. */ -@ApiStatus.Experimental -@NullMarked @ApiStatus.NonExtendable public interface MessageComponentSerializer extends ComponentSerializer { @@ -20,6 +19,10 @@ public interface MessageComponentSerializer extends ComponentSerializer PROVIDER = ServiceLoader.load(MessageComponentSerializer.class) + .findFirst(); + } + return Holder.PROVIDER.orElseThrow(); } } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/MessageComponentSerializerHolder.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/MessageComponentSerializerHolder.java deleted file mode 100644 index 2db12952461c..000000000000 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/MessageComponentSerializerHolder.java +++ /dev/null @@ -1,12 +0,0 @@ -package io.papermc.paper.command.brigadier; - -import java.util.Optional; -import java.util.ServiceLoader; -import org.jetbrains.annotations.ApiStatus; - -@ApiStatus.Internal -final class MessageComponentSerializerHolder { - - static final Optional PROVIDER = ServiceLoader.load(MessageComponentSerializer.class) - .findFirst(); -} diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/ArgumentTypes.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/ArgumentTypes.java index 440cfcfa58a1..3e54a49a7743 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/ArgumentTypes.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/ArgumentTypes.java @@ -28,8 +28,6 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.scoreboard.Criteria; import org.bukkit.scoreboard.DisplaySlot; -import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; import static io.papermc.paper.command.brigadier.argument.VanillaArgumentProvider.provider; @@ -41,8 +39,6 @@ * *

{@link CustomArgumentType} is provided for customizing parsing or result types server-side, while sending the vanilla argument type to the client.

*/ -@ApiStatus.Experimental -@NullMarked public final class ArgumentTypes { /** diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/CustomArgumentType.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/CustomArgumentType.java index 14be89fab5bf..1b38609134b8 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/CustomArgumentType.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/CustomArgumentType.java @@ -9,7 +9,6 @@ import java.util.Collection; import java.util.concurrent.CompletableFuture; import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; /** * An argument type that wraps around a native-to-vanilla argument type. @@ -23,8 +22,6 @@ * @param custom type * @param type with an argument native to vanilla Minecraft (from {@link ArgumentTypes}) */ -@ApiStatus.Experimental -@NullMarked public interface CustomArgumentType extends ArgumentType { /** @@ -107,7 +104,6 @@ default CompletableFuture listSuggestions(final CommandContext< * @param custom type * @param type with an argument native to vanilla Minecraft (from {@link ArgumentTypes}) */ - @ApiStatus.Experimental interface Converted extends CustomArgumentType { @ApiStatus.NonExtendable diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/RegistryArgumentExtractor.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/RegistryArgumentExtractor.java index c6123342df96..5c72fffd7893 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/RegistryArgumentExtractor.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/RegistryArgumentExtractor.java @@ -3,12 +3,10 @@ import com.mojang.brigadier.context.CommandContext; import io.papermc.paper.registry.RegistryKey; import io.papermc.paper.registry.TypedKey; -import org.jspecify.annotations.NullMarked; /** * Utilities for extracting registry-related arguments from a {@link CommandContext}. */ -@NullMarked public final class RegistryArgumentExtractor { /** diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/SignedMessageResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/SignedMessageResolver.java index 2f2c1729c5d9..d77a89cd2523 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/SignedMessageResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/SignedMessageResolver.java @@ -6,15 +6,12 @@ import java.util.concurrent.CompletableFuture; import net.kyori.adventure.chat.SignedMessage; import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; /** * A resolver for a {@link SignedMessage} * * @see ArgumentTypes#signedMessage() */ -@ApiStatus.Experimental -@NullMarked @ApiStatus.NonExtendable public interface SignedMessageResolver { @@ -38,5 +35,4 @@ public interface SignedMessageResolver { * @throws CommandSyntaxException syntax exception */ CompletableFuture resolveSignedMessage(String argumentName, CommandContext context) throws CommandSyntaxException; - } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/VanillaArgumentProvider.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/VanillaArgumentProvider.java index 7f30fc567d84..b70b32a3bec1 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/VanillaArgumentProvider.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/VanillaArgumentProvider.java @@ -31,10 +31,8 @@ import org.bukkit.scoreboard.Criteria; import org.bukkit.scoreboard.DisplaySlot; import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; @ApiStatus.Internal -@NullMarked interface VanillaArgumentProvider { Optional PROVIDER = ServiceLoader.load(VanillaArgumentProvider.class) diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/package-info.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/package-info.java new file mode 100644 index 000000000000..e2056d494cdf --- /dev/null +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/package-info.java @@ -0,0 +1,7 @@ +/** + * Arguments. + */ +@NullMarked +package io.papermc.paper.command.brigadier.argument; + +import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/predicate/ItemStackPredicate.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/predicate/ItemStackPredicate.java index ba0cfb3c53f6..d943b810c922 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/predicate/ItemStackPredicate.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/predicate/ItemStackPredicate.java @@ -9,7 +9,6 @@ * * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#itemPredicate() */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface ItemStackPredicate extends Predicate { } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/predicate/package-info.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/predicate/package-info.java new file mode 100644 index 000000000000..6f8a8ed057dd --- /dev/null +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/predicate/package-info.java @@ -0,0 +1,7 @@ +/** + * Predicates for argument types. + */ +@NullMarked +package io.papermc.paper.command.brigadier.argument.predicate; + +import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/DoubleRangeProvider.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/DoubleRangeProvider.java index 82c978ba42a7..639f011788df 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/DoubleRangeProvider.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/DoubleRangeProvider.java @@ -7,8 +7,6 @@ * * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#doubleRange() */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public non-sealed interface DoubleRangeProvider extends RangeProvider { - } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/IntegerRangeProvider.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/IntegerRangeProvider.java index 06ffff68d265..9eb21f9fe2f0 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/IntegerRangeProvider.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/IntegerRangeProvider.java @@ -7,8 +7,6 @@ * * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#integerRange() */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public non-sealed interface IntegerRangeProvider extends RangeProvider { - } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/RangeProvider.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/RangeProvider.java index af1c01ab0d21..55c438cfd7c0 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/RangeProvider.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/RangeProvider.java @@ -1,8 +1,6 @@ package io.papermc.paper.command.brigadier.argument.range; import com.google.common.collect.Range; -import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; /** * A provider for a range of numbers @@ -10,8 +8,6 @@ * @param * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes */ -@ApiStatus.Experimental -@NullMarked public sealed interface RangeProvider> permits DoubleRangeProvider, IntegerRangeProvider { /** diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/package-info.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/package-info.java new file mode 100644 index 000000000000..647543a80675 --- /dev/null +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/range/package-info.java @@ -0,0 +1,7 @@ +/** + * Range providers. + */ +@NullMarked +package io.papermc.paper.command.brigadier.argument.range; + +import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/ArgumentResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/ArgumentResolver.java index 60439269d8b1..c4ee1c4ddb1d 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/ArgumentResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/ArgumentResolver.java @@ -3,7 +3,6 @@ import com.mojang.brigadier.exceptions.CommandSyntaxException; import io.papermc.paper.command.brigadier.CommandSourceStack; import org.jetbrains.annotations.ApiStatus; -import org.jspecify.annotations.NullMarked; /** * An {@link ArgumentResolver} is capable of resolving @@ -12,8 +11,6 @@ * @param resolved type * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes */ -@ApiStatus.Experimental -@NullMarked @ApiStatus.NonExtendable public interface ArgumentResolver { diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/BlockPositionResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/BlockPositionResolver.java index 908f40dbf3e5..e36eb473e781 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/BlockPositionResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/BlockPositionResolver.java @@ -10,7 +10,6 @@ * * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#blockPosition() */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface BlockPositionResolver extends ArgumentResolver { } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/FinePositionResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/FinePositionResolver.java index e2fc26016b8d..eec86caefbae 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/FinePositionResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/FinePositionResolver.java @@ -11,7 +11,6 @@ * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#finePosition() * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#finePosition(boolean) */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface FinePositionResolver extends ArgumentResolver { } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/PlayerProfileListResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/PlayerProfileListResolver.java index 89024e67fd81..be7581e81988 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/PlayerProfileListResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/PlayerProfileListResolver.java @@ -11,7 +11,6 @@ * * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#playerProfiles() */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface PlayerProfileListResolver extends ArgumentResolver> { } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/RotationResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/RotationResolver.java index fe697d183c15..f492be72244e 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/RotationResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/RotationResolver.java @@ -10,7 +10,6 @@ * * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#rotation() */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface RotationResolver extends ArgumentResolver { } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/package-info.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/package-info.java new file mode 100644 index 000000000000..e9ae2e330651 --- /dev/null +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/package-info.java @@ -0,0 +1,7 @@ +/** + * Argument resolvers. + */ +@NullMarked +package io.papermc.paper.command.brigadier.argument.resolvers; + +import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/EntitySelectorArgumentResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/EntitySelectorArgumentResolver.java index 15d05c280401..2be666576970 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/EntitySelectorArgumentResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/EntitySelectorArgumentResolver.java @@ -13,7 +13,6 @@ * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#entity() * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#entities() */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface EntitySelectorArgumentResolver extends SelectorArgumentResolver> { } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/PlayerSelectorArgumentResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/PlayerSelectorArgumentResolver.java index a973555b7a01..5b19949cfe6f 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/PlayerSelectorArgumentResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/PlayerSelectorArgumentResolver.java @@ -13,7 +13,6 @@ * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#player() * @see io.papermc.paper.command.brigadier.argument.ArgumentTypes#players() */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface PlayerSelectorArgumentResolver extends SelectorArgumentResolver> { } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/SelectorArgumentResolver.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/SelectorArgumentResolver.java index 906ce6eff30e..46542a155f94 100644 --- a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/SelectorArgumentResolver.java +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/SelectorArgumentResolver.java @@ -11,7 +11,6 @@ * @param resolved type * @see Target Selectors */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface SelectorArgumentResolver extends ArgumentResolver { } diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/package-info.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/package-info.java new file mode 100644 index 000000000000..35fc5b0bc96f --- /dev/null +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/argument/resolvers/selector/package-info.java @@ -0,0 +1,7 @@ +/** + * Entity selector argument resolvers. + */ +@NullMarked +package io.papermc.paper.command.brigadier.argument.resolvers.selector; + +import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/command/brigadier/package-info.java b/paper-api/src/main/java/io/papermc/paper/command/brigadier/package-info.java new file mode 100644 index 000000000000..8b4ac5c70399 --- /dev/null +++ b/paper-api/src/main/java/io/papermc/paper/command/brigadier/package-info.java @@ -0,0 +1,7 @@ +/** + * Brigadier connection API. + */ +@NullMarked +package io.papermc.paper.command.brigadier; + +import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/datacomponent/DataComponentView.java b/paper-api/src/main/java/io/papermc/paper/datacomponent/DataComponentView.java index 2eebdb41e0b8..4e6e5a774cfb 100644 --- a/paper-api/src/main/java/io/papermc/paper/datacomponent/DataComponentView.java +++ b/paper-api/src/main/java/io/papermc/paper/datacomponent/DataComponentView.java @@ -15,7 +15,6 @@ @NullMarked @ApiStatus.NonExtendable public interface DataComponentView { - // Paper start - data component API /** * Gets the value for the data component type on this stack. * diff --git a/paper-api/src/main/java/io/papermc/paper/plugin/configuration/PluginMeta.java b/paper-api/src/main/java/io/papermc/paper/plugin/configuration/PluginMeta.java index 3c768d5ccf49..2114651bd68c 100644 --- a/paper-api/src/main/java/io/papermc/paper/plugin/configuration/PluginMeta.java +++ b/paper-api/src/main/java/io/papermc/paper/plugin/configuration/PluginMeta.java @@ -12,7 +12,6 @@ /** * This class acts as an abstraction for a plugin configuration. */ -@ApiStatus.Experimental // Subject to change! @NullMarked @ApiStatus.NonExtendable public interface PluginMeta { @@ -161,7 +160,6 @@ default String getDisplayName() { * * @return an immutable list of permissions */ - // TODO: Do we even want this? Why not just use the bootstrapper List getPermissions(); /** @@ -170,7 +168,6 @@ default String getDisplayName() { * @return the bukkit permission default container. * @see #getPermissions() */ - // TODO: Do we even want this? Why not just use the bootstrapper PermissionDefault getPermissionDefault(); /** diff --git a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/handler/configuration/package-info.java b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/handler/configuration/package-info.java index 2bfedd627045..9d9172244667 100644 --- a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/handler/configuration/package-info.java +++ b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/handler/configuration/package-info.java @@ -1,6 +1,4 @@ -@ApiStatus.Experimental @NullMarked package io.papermc.paper.plugin.lifecycle.event.handler.configuration; -import org.jetbrains.annotations.ApiStatus; import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/handler/package-info.java b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/handler/package-info.java index 15cf1464cc36..6e769d8ed53c 100644 --- a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/handler/package-info.java +++ b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/handler/package-info.java @@ -1,6 +1,4 @@ -@ApiStatus.Experimental @NullMarked package io.papermc.paper.plugin.lifecycle.event.handler; -import org.jetbrains.annotations.ApiStatus; import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/package-info.java b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/package-info.java index 2047a99c61c0..8fe8f0eae222 100644 --- a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/package-info.java +++ b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/package-info.java @@ -1,6 +1,4 @@ -@ApiStatus.Experimental @NullMarked package io.papermc.paper.plugin.lifecycle.event; -import org.jetbrains.annotations.ApiStatus; import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/registrar/package-info.java b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/registrar/package-info.java index 4b55c80ac3c5..26d51efd04c2 100644 --- a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/registrar/package-info.java +++ b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/registrar/package-info.java @@ -1,6 +1,4 @@ -@ApiStatus.Experimental @NullMarked package io.papermc.paper.plugin.lifecycle.event.registrar; -import org.jetbrains.annotations.ApiStatus; import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/types/LifecycleEvents.java b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/types/LifecycleEvents.java index 4145cda3930d..d5b63fb1c6a1 100644 --- a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/types/LifecycleEvents.java +++ b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/types/LifecycleEvents.java @@ -29,6 +29,7 @@ public final class LifecycleEvents { * These events are for registering tags to the server's tag system. You can register a handler for these events * only in {@link io.papermc.paper.plugin.bootstrap.PluginBootstrap#bootstrap(BootstrapContext)}. */ + @ApiStatus.Experimental public static final TagEventTypeProvider TAGS = LifecycleEventTypeProvider.provider().tagProvider(); @@ -37,6 +38,7 @@ public final class LifecycleEvents { * can register a handler for this event only in {@link io.papermc.paper.plugin.bootstrap.PluginBootstrap#bootstrap(BootstrapContext)}. * @see DatapackRegistrar an example of a datapack being discovered */ + @ApiStatus.Experimental public static final LifecycleEventType.Prioritizable> DATAPACK_DISCOVERY = bootstrapPrioritized("datapack_discovery"); // diff --git a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/types/package-info.java b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/types/package-info.java index a3257da32ebe..624b43c4da2c 100644 --- a/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/types/package-info.java +++ b/paper-api/src/main/java/io/papermc/paper/plugin/lifecycle/event/types/package-info.java @@ -1,6 +1,4 @@ -@ApiStatus.Experimental @NullMarked package io.papermc.paper.plugin.lifecycle.event.types; -import org.jetbrains.annotations.ApiStatus; import org.jspecify.annotations.NullMarked; diff --git a/paper-api/src/main/java/io/papermc/paper/registry/RegistryKey.java b/paper-api/src/main/java/io/papermc/paper/registry/RegistryKey.java index d26c40e9b84b..ef057b02d842 100644 --- a/paper-api/src/main/java/io/papermc/paper/registry/RegistryKey.java +++ b/paper-api/src/main/java/io/papermc/paper/registry/RegistryKey.java @@ -36,7 +36,6 @@ import org.bukkit.map.MapCursor; import org.bukkit.potion.PotionEffectType; import org.bukkit.potion.PotionType; -import org.jetbrains.annotations.ApiStatus; import org.jspecify.annotations.NullMarked; import static io.papermc.paper.registry.RegistryKeyImpl.create; @@ -253,7 +252,6 @@ default TypedKey typedKey(@KeyPattern final String key) { * @param key the key of the typed key. * @return the constructed tag key. */ - @ApiStatus.Experimental default TagKey tagKey(final Key key) { return TagKey.create(this, key); } @@ -264,7 +262,6 @@ default TagKey tagKey(final Key key) { * @param key the string representation of the key that will be passed to {@link Key#key(String)}. * @return the constructed tag key. */ - @ApiStatus.Experimental default TagKey tagKey(@KeyPattern final String key) { return TagKey.create(this, key); } diff --git a/paper-api/src/main/java/io/papermc/paper/registry/event/RegistryComposeEvent.java b/paper-api/src/main/java/io/papermc/paper/registry/event/RegistryComposeEvent.java index 465d0fc40482..346cca9055c4 100644 --- a/paper-api/src/main/java/io/papermc/paper/registry/event/RegistryComposeEvent.java +++ b/paper-api/src/main/java/io/papermc/paper/registry/event/RegistryComposeEvent.java @@ -14,7 +14,6 @@ * @param registry entry type * @param registry entry builder type */ -@ApiStatus.Experimental @ApiStatus.NonExtendable public interface RegistryComposeEvent> extends RegistryEvent { diff --git a/paper-api/src/main/java/io/papermc/paper/registry/tag/TagKey.java b/paper-api/src/main/java/io/papermc/paper/registry/tag/TagKey.java index 4dda9298604c..c530c86384f5 100644 --- a/paper-api/src/main/java/io/papermc/paper/registry/tag/TagKey.java +++ b/paper-api/src/main/java/io/papermc/paper/registry/tag/TagKey.java @@ -1,15 +1,12 @@ package io.papermc.paper.registry.tag; import io.papermc.paper.registry.RegistryKey; -import io.papermc.paper.registry.TypedKey; import net.kyori.adventure.key.Key; import net.kyori.adventure.key.KeyPattern; import net.kyori.adventure.key.Keyed; -import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Contract; import org.jspecify.annotations.NullMarked; -@ApiStatus.Experimental @NullMarked public sealed interface TagKey extends Keyed permits TagKeyImpl { @@ -35,7 +32,6 @@ static TagKey create(final RegistryKey registryKey, final Key key) { * @return a new tag key * @see Key#key(String) */ - @ApiStatus.Experimental static TagKey create(final RegistryKey registryKey, @KeyPattern final String key) { return create(registryKey, Key.key(key)); } diff --git a/paper-api/src/main/java/org/bukkit/FeatureFlag.java b/paper-api/src/main/java/org/bukkit/FeatureFlag.java index 3d8bd1f169a9..bd2f1d8b7db6 100644 --- a/paper-api/src/main/java/org/bukkit/FeatureFlag.java +++ b/paper-api/src/main/java/org/bukkit/FeatureFlag.java @@ -1,12 +1,10 @@ package org.bukkit; -// Paper start - overhaul FeatureFlag API import com.google.common.base.Preconditions; import java.util.List; import net.kyori.adventure.key.Key; import net.kyori.adventure.util.Index; import org.intellij.lang.annotations.Subst; -// Paper end - overhaul FeatureFlag API import org.jetbrains.annotations.ApiStatus; /** @@ -75,6 +73,5 @@ private static FeatureFlag create(@Subst("vanilla") final String name) { private static FeatureFlag deprecated(@Subst("vanilla") final String name) { return new FeatureFlagImpl.Deprecated(NamespacedKey.minecraft(name)); } - // Paper end - overhaul FeatureFlag API } diff --git a/paper-api/src/main/java/org/bukkit/Input.java b/paper-api/src/main/java/org/bukkit/Input.java index 7665b18e32f5..d09605b97a57 100644 --- a/paper-api/src/main/java/org/bukkit/Input.java +++ b/paper-api/src/main/java/org/bukkit/Input.java @@ -1,11 +1,8 @@ package org.bukkit; -import org.jetbrains.annotations.ApiStatus; - /** * Represents a movement input applied to an entity. */ -@ApiStatus.Experimental public interface Input { /** diff --git a/paper-api/src/main/java/org/bukkit/JukeboxSong.java b/paper-api/src/main/java/org/bukkit/JukeboxSong.java index 3561888f62e4..5d61a862b17c 100644 --- a/paper-api/src/main/java/org/bukkit/JukeboxSong.java +++ b/paper-api/src/main/java/org/bukkit/JukeboxSong.java @@ -2,13 +2,12 @@ import io.papermc.paper.registry.RegistryAccess; import io.papermc.paper.registry.RegistryKey; -import org.jetbrains.annotations.ApiStatus; -import org.jetbrains.annotations.NotNull; +import org.jspecify.annotations.NullMarked; /** * Represents a song which may play in a Jukebox. */ -@ApiStatus.Experimental +@NullMarked public interface JukeboxSong extends Keyed, Translatable { // Start generate - JukeboxSong @@ -56,18 +55,15 @@ public interface JukeboxSong extends Keyed, Translatable { JukeboxSong WARD = get("ward"); // End generate - JukeboxSong - @NotNull - private static JukeboxSong get(@NotNull String key) { + private static JukeboxSong get(String key) { return RegistryAccess.registryAccess().getRegistry(RegistryKey.JUKEBOX_SONG).getOrThrow(NamespacedKey.minecraft(key)); } - // Paper start - adventure /** * @deprecated this method assumes that jukebox song description will * always be a translatable component which is not guaranteed. */ @Override @Deprecated(forRemoval = true) - @org.jetbrains.annotations.NotNull String getTranslationKey(); - // Paper end - adventure + String getTranslationKey(); } diff --git a/paper-api/src/main/java/org/bukkit/Material.java b/paper-api/src/main/java/org/bukkit/Material.java index 71692549035f..f4048590c428 100644 --- a/paper-api/src/main/java/org/bukkit/Material.java +++ b/paper-api/src/main/java/org/bukkit/Material.java @@ -3577,9 +3577,7 @@ public float getCompostChance() { * Tries to convert this Material to an item type * * @return the converted item type or null - * @apiNote only for internal use */ - @ApiStatus.Internal @Nullable @org.jetbrains.annotations.Contract(pure = true) // Paper public ItemType asItemType() { @@ -3590,9 +3588,7 @@ public ItemType asItemType() { * Tries to convert this Material to a block type * * @return the converted block type or null - * @apiNote only for internal use */ - @ApiStatus.Internal @Nullable @org.jetbrains.annotations.Contract(pure = true) // Paper public BlockType asBlockType() { diff --git a/paper-api/src/main/java/org/bukkit/Registry.java b/paper-api/src/main/java/org/bukkit/Registry.java index e882045d19e1..9bf238bab6d7 100644 --- a/paper-api/src/main/java/org/bukkit/Registry.java +++ b/paper-api/src/main/java/org/bukkit/Registry.java @@ -122,7 +122,6 @@ public Iterator iterator() { * * @see BlockType */ - @ApiStatus.Experimental Registry BLOCK = registryFor(RegistryKey.BLOCK); /** * Custom boss bars. @@ -179,7 +178,6 @@ public Iterator iterator() { * * @see ItemType */ - @ApiStatus.Experimental Registry ITEM = registryFor(RegistryKey.ITEM); /** * Default server loot tables. @@ -480,7 +478,6 @@ default NamespacedKey getKeyOrThrow(final T value) { * @throws UnsupportedOperationException if this registry doesn't have or support tags * @see #getTag(TagKey) */ - @ApiStatus.Experimental boolean hasTag(TagKey key); /** @@ -507,8 +504,8 @@ default NamespacedKey getKeyOrThrow(final T value) { * @see Tag#resolve(Registry) */ @ApiStatus.Experimental - default Collection getTagValues(TagKey key) { - Tag tag = getTag(key); + default Collection getTagValues(final TagKey key) { + Tag tag = this.getTag(key); return tag.resolve(this); } diff --git a/paper-api/src/main/java/org/bukkit/block/BlockState.java b/paper-api/src/main/java/org/bukkit/block/BlockState.java index ce7cdcf0cd92..93129898b309 100644 --- a/paper-api/src/main/java/org/bukkit/block/BlockState.java +++ b/paper-api/src/main/java/org/bukkit/block/BlockState.java @@ -60,7 +60,6 @@ public interface BlockState extends Metadatable { * @return a copy of the block state */ @NotNull - @ApiStatus.Experimental BlockState copy(); /** @@ -70,7 +69,6 @@ public interface BlockState extends Metadatable { * @return the new block state */ @NotNull - @ApiStatus.Experimental BlockState copy(@NotNull Location location); /** diff --git a/paper-api/src/main/java/org/bukkit/block/data/BlockData.java b/paper-api/src/main/java/org/bukkit/block/data/BlockData.java index 0ecc54bd810a..3a6184e2165b 100644 --- a/paper-api/src/main/java/org/bukkit/block/data/BlockData.java +++ b/paper-api/src/main/java/org/bukkit/block/data/BlockData.java @@ -277,7 +277,6 @@ public interface BlockData extends Cloneable { * @return a new {@link BlockState} */ @NotNull - @ApiStatus.Experimental BlockState createBlockState(); // Paper start - destroy speed API diff --git a/paper-api/src/main/java/org/bukkit/damage/DamageEffect.java b/paper-api/src/main/java/org/bukkit/damage/DamageEffect.java index 2e442f146907..ecf6ea91f62b 100644 --- a/paper-api/src/main/java/org/bukkit/damage/DamageEffect.java +++ b/paper-api/src/main/java/org/bukkit/damage/DamageEffect.java @@ -10,7 +10,6 @@ * Represents a type of effect that occurs when damage is inflicted. Currently, * effects only determine the sound that plays. */ -@ApiStatus.Experimental public interface DamageEffect { /** diff --git a/paper-api/src/main/java/org/bukkit/damage/DamageScaling.java b/paper-api/src/main/java/org/bukkit/damage/DamageScaling.java index 1c8ad044d86d..fea254fe46f3 100644 --- a/paper-api/src/main/java/org/bukkit/damage/DamageScaling.java +++ b/paper-api/src/main/java/org/bukkit/damage/DamageScaling.java @@ -1,12 +1,10 @@ package org.bukkit.damage; import org.bukkit.entity.Player; -import org.jetbrains.annotations.ApiStatus; /** * A means of damage scaling with respect to the server's difficulty. */ -@ApiStatus.Experimental public enum DamageScaling { /** diff --git a/paper-api/src/main/java/org/bukkit/damage/DamageSource.java b/paper-api/src/main/java/org/bukkit/damage/DamageSource.java index 54fa3ebe541a..2a1a2a50e789 100644 --- a/paper-api/src/main/java/org/bukkit/damage/DamageSource.java +++ b/paper-api/src/main/java/org/bukkit/damage/DamageSource.java @@ -3,14 +3,12 @@ import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.entity.Entity; -import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; /** * Represents a source of damage. */ -@ApiStatus.Experimental public interface DamageSource { /** diff --git a/paper-api/src/main/java/org/bukkit/damage/DamageType.java b/paper-api/src/main/java/org/bukkit/damage/DamageType.java index a638e1afcdb0..f813d72354b6 100644 --- a/paper-api/src/main/java/org/bukkit/damage/DamageType.java +++ b/paper-api/src/main/java/org/bukkit/damage/DamageType.java @@ -4,9 +4,7 @@ import io.papermc.paper.registry.RegistryKey; import org.bukkit.Keyed; import org.bukkit.NamespacedKey; -import org.bukkit.Registry; import org.bukkit.Translatable; -import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; /** @@ -18,7 +16,6 @@ * * @see Minecraft Wiki */ -@ApiStatus.Experimental public interface DamageType extends Keyed, Translatable { // Start generate - DamageType diff --git a/paper-api/src/main/java/org/bukkit/damage/DeathMessageType.java b/paper-api/src/main/java/org/bukkit/damage/DeathMessageType.java index e182eb4df2ab..5fd490519dff 100644 --- a/paper-api/src/main/java/org/bukkit/damage/DeathMessageType.java +++ b/paper-api/src/main/java/org/bukkit/damage/DeathMessageType.java @@ -1,11 +1,8 @@ package org.bukkit.damage; -import org.jetbrains.annotations.ApiStatus; - /** * Represents a type of death message used by a {@link DamageSource}. */ -@ApiStatus.Experimental public enum DeathMessageType { /** diff --git a/paper-api/src/main/java/org/bukkit/damage/package-info.java b/paper-api/src/main/java/org/bukkit/damage/package-info.java index c2ff9942be2a..c7be54d6012b 100644 --- a/paper-api/src/main/java/org/bukkit/damage/package-info.java +++ b/paper-api/src/main/java/org/bukkit/damage/package-info.java @@ -1,5 +1,7 @@ /** * Classes concerning damage types and sources applicable to living entities. */ -@org.jetbrains.annotations.ApiStatus.Experimental +@ApiStatus.Experimental package org.bukkit.damage; + +import org.jetbrains.annotations.ApiStatus; diff --git a/paper-api/src/main/java/org/bukkit/entity/AbstractArrow.java b/paper-api/src/main/java/org/bukkit/entity/AbstractArrow.java index 7555d641ccd0..9fb484eee66e 100644 --- a/paper-api/src/main/java/org/bukkit/entity/AbstractArrow.java +++ b/paper-api/src/main/java/org/bukkit/entity/AbstractArrow.java @@ -1,12 +1,11 @@ package org.bukkit.entity; +import java.util.List; import org.bukkit.block.Block; import org.bukkit.inventory.ItemStack; -import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Unmodifiable; -import java.util.List; /** * Represents an arrow. @@ -157,7 +156,6 @@ public interface AbstractArrow extends Projectile { * @deprecated use {@link #getItemStack()} */ @NotNull - @ApiStatus.Experimental @Deprecated(forRemoval = true, since = "1.20.4") // Paper public ItemStack getItem(); @@ -167,7 +165,6 @@ public interface AbstractArrow extends Projectile { * @param item ItemStack set to be picked up * @deprecated use {@link #setItemStack(ItemStack)} */ - @ApiStatus.Experimental @Deprecated(forRemoval = true, since = "1.20.4") // Paper public void setItem(@NotNull ItemStack item); @@ -177,7 +174,6 @@ public interface AbstractArrow extends Projectile { * @return The firing ItemStack */ @Nullable // Paper - @ApiStatus.Experimental public ItemStack getWeapon(); /** @@ -185,7 +181,6 @@ public interface AbstractArrow extends Projectile { * * @param item The firing ItemStack */ - @ApiStatus.Experimental public void setWeapon(@NotNull ItemStack item); /** diff --git a/paper-api/src/main/java/org/bukkit/entity/Player.java b/paper-api/src/main/java/org/bukkit/entity/Player.java index acb7a39ac64b..3584ca0a89f5 100644 --- a/paper-api/src/main/java/org/bukkit/entity/Player.java +++ b/paper-api/src/main/java/org/bukkit/entity/Player.java @@ -621,7 +621,6 @@ default void kick(final net.kyori.adventure.text.@Nullable Component message) { * * @return current input */ - @ApiStatus.Experimental public Input getCurrentInput(); /** @@ -1251,7 +1250,6 @@ void sendSignChange(Location loc, java.util.@Nullable List { private static final Map BY_NAME = new HashMap<>(); diff --git a/paper-api/src/main/java/org/bukkit/plugin/java/JavaPlugin.java b/paper-api/src/main/java/org/bukkit/plugin/java/JavaPlugin.java index e46a3720e6c9..7bdbfbd48329 100644 --- a/paper-api/src/main/java/org/bukkit/plugin/java/JavaPlugin.java +++ b/paper-api/src/main/java/org/bukkit/plugin/java/JavaPlugin.java @@ -372,7 +372,6 @@ public boolean onCommand(CommandSender sender, Command command, String label, St * @param basicCommand the basic command instance to register * @see LifecycleEvents#COMMANDS */ - @ApiStatus.Experimental public void registerCommand(final String label, final BasicCommand basicCommand) { this.registerCommand(label, null, Collections.emptyList(), basicCommand); } @@ -392,7 +391,6 @@ public void registerCommand(final String label, final BasicCommand basicCommand) * @param basicCommand the basic command instance to register * @see LifecycleEvents#COMMANDS */ - @ApiStatus.Experimental public void registerCommand(final String label, final @Nullable String description, final BasicCommand basicCommand) { this.registerCommand(label, description, Collections.emptyList(), basicCommand); } @@ -412,7 +410,6 @@ public void registerCommand(final String label, final @Nullable String descripti * @param basicCommand the basic command instance to register * @see LifecycleEvents#COMMANDS */ - @ApiStatus.Experimental public void registerCommand(final String label, final Collection aliases, final BasicCommand basicCommand) { this.registerCommand(label, null, aliases, basicCommand); } @@ -433,7 +430,6 @@ public void registerCommand(final String label, final Collection aliases * @param basicCommand the basic command instance to register * @see LifecycleEvents#COMMANDS */ - @ApiStatus.Experimental public void registerCommand(final String label, final @Nullable String description, final Collection aliases, final BasicCommand basicCommand) { this.getLifecycleManager().registerEventHandler(LifecycleEvents.COMMANDS, event -> { event.registrar().register(label, description, aliases, basicCommand); diff --git a/paper-api/src/main/java/org/bukkit/spawner/TrialSpawnerConfiguration.java b/paper-api/src/main/java/org/bukkit/spawner/TrialSpawnerConfiguration.java index e5c2a1eb7ed6..6e00cc7ae574 100644 --- a/paper-api/src/main/java/org/bukkit/spawner/TrialSpawnerConfiguration.java +++ b/paper-api/src/main/java/org/bukkit/spawner/TrialSpawnerConfiguration.java @@ -2,13 +2,12 @@ import java.util.Map; import org.bukkit.loot.LootTable; -import org.jetbrains.annotations.ApiStatus; -import org.jetbrains.annotations.NotNull; +import org.jspecify.annotations.NullMarked; /** * Represents one of the configurations of a trial spawner. */ -@ApiStatus.Experimental +@NullMarked public interface TrialSpawnerConfiguration extends BaseSpawner { /** @@ -17,7 +16,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @return the number of entities */ - public float getBaseSpawnsBeforeCooldown(); + float getBaseSpawnsBeforeCooldown(); /** * Sets the base number of entities the spawner will spawn before going into @@ -25,7 +24,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @param amount the number of entities */ - public void setBaseSpawnsBeforeCooldown(float amount); + void setBaseSpawnsBeforeCooldown(float amount); /** * Gets the base number of entities this spawner can track at once.
@@ -34,7 +33,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @return the number of entities */ - public float getBaseSimultaneousEntities(); + float getBaseSimultaneousEntities(); /** * Sets the base number of entities this spawner can track at once.
@@ -43,7 +42,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @param amount the number of entities */ - public void setBaseSimultaneousEntities(float amount); + void setBaseSimultaneousEntities(float amount); /** * Gets the additional number of entities the spawner will spawn per tracked player @@ -51,7 +50,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @return the number of entities */ - public float getAdditionalSpawnsBeforeCooldown(); + float getAdditionalSpawnsBeforeCooldown(); /** * Sets the additional number of entities the spawner will spawn per tracked player @@ -59,7 +58,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @param amount the number of entities */ - public void setAdditionalSpawnsBeforeCooldown(float amount); + void setAdditionalSpawnsBeforeCooldown(float amount); /** * Gets the additional number of entities this spawner can track at once per @@ -69,7 +68,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @return the number of entities */ - public float getAdditionalSimultaneousEntities(); + float getAdditionalSimultaneousEntities(); /** * Sets the additional number of entities this spawner can track at once per @@ -79,26 +78,25 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @param amount the number of entities */ - public void setAdditionalSimultaneousEntities(float amount); + void setAdditionalSimultaneousEntities(float amount); /** * Gets a list of {@link LootTable}s this spawner can pick a reward from as * well as their associated weight to be chosen. * * @return a map of loot tables and their associated weight, or an empty - * map if there are none + * map if there are none */ - @NotNull - public Map getPossibleRewards(); + Map getPossibleRewards(); /** * Add a {@link LootTable} to the list of tables this spawner can pick a reward * from with a given weight. * - * @param table the loot table + * @param table the loot table * @param weight the weight, must be at least 1 */ - public void addPossibleReward(@NotNull LootTable table, int weight); + void addPossibleReward(LootTable table, int weight); /** * Removes the provided {@link LootTable} from the list of tables this spawner @@ -106,7 +104,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * * @param table the loot table */ - public void removePossibleReward(@NotNull LootTable table); + void removePossibleReward(LootTable table); /** * Sets the list of {@link LootTable}s and their weights this spawner can pick a @@ -115,7 +113,7 @@ public interface TrialSpawnerConfiguration extends BaseSpawner { * 1. * * @param rewards a map of loot tables and their weights, or null to clear all - * possible tables + * possible tables */ - public void setPossibleRewards(@NotNull Map rewards); + void setPossibleRewards(Map rewards); } diff --git a/paper-generator/src/main/java/io/papermc/generator/types/registry/GeneratedTagKeyType.java b/paper-generator/src/main/java/io/papermc/generator/types/registry/GeneratedTagKeyType.java index 76249ac8f835..063ebd9066e5 100644 --- a/paper-generator/src/main/java/io/papermc/generator/types/registry/GeneratedTagKeyType.java +++ b/paper-generator/src/main/java/io/papermc/generator/types/registry/GeneratedTagKeyType.java @@ -48,7 +48,6 @@ private MethodSpec.Builder createMethod(TypeName returnType) { .addCode("return $T.create($T.$L, $N);", TagKey.class, RegistryKey.class, this.entry.registryKeyField(), keyParam) .returns(returnType); if (publicCreateKeyMethod) { - create.addAnnotation(EXPERIMENTAL_API_ANNOTATION); // TODO remove once not experimental create.addJavadoc(Javadocs.CREATED_TAG_KEY_JAVADOC, this.entry.apiClass(), this.entry.registryKey().location().toString()); } return create; @@ -90,8 +89,6 @@ protected TypeSpec getTypeSpec() { if (allExperimental.get()) { typeBuilder.addAnnotation(EXPERIMENTAL_API_ANNOTATION); createMethod.addAnnotation(EXPERIMENTAL_API_ANNOTATION); - } else { - typeBuilder.addAnnotation(EXPERIMENTAL_API_ANNOTATION); // TODO experimental API } return typeBuilder.addMethod(createMethod.build()).build(); }