mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-02 04:56:50 +01:00
70ce6ce831
This makes it easier for downstream projects (forks) to replace the version fetching system with their own. It is as simple as implementing an interface and overriding the default implementation of org.bukkit.UnsafeValues#getVersionFetcher() It also makes it easier for us to organize things like the version history feature. Lastly I have updated the paper implementation to check against the site API rather than against jenkins.
130 lines
5.4 KiB
Diff
130 lines
5.4 KiB
Diff
From fb262f912ed78da8575b03f61868f43dd5d63550 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sun, 24 Mar 2019 18:39:01 -0400
|
|
Subject: [PATCH] Flip some Spigot API null annotations
|
|
|
|
while some of these may of been true, they are extreme cases and cause
|
|
a ton of noise to plugin developers.
|
|
|
|
These do not help plugin developers if they bring moise noise than value.
|
|
|
|
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
|
|
index 2148a3c2..6db69159 100644
|
|
--- a/src/main/java/org/bukkit/Bukkit.java
|
|
+++ b/src/main/java/org/bukkit/Bukkit.java
|
|
@@ -1153,7 +1153,7 @@ public final class Bukkit {
|
|
*
|
|
* @return the scoreboard manager or null if no worlds are loaded.
|
|
*/
|
|
- @Nullable
|
|
+ @NotNull // Paper
|
|
public static ScoreboardManager getScoreboardManager() {
|
|
return server.getScoreboardManager();
|
|
}
|
|
@@ -1450,7 +1450,7 @@ public final class Bukkit {
|
|
* @param clazz the class of the tag entries
|
|
* @return the tag or null
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability // Paper
|
|
public static <T extends Keyed> Tag<T> getTag(@NotNull String registry, @NotNull NamespacedKey tag, @NotNull Class<T> clazz) {
|
|
return server.getTag(registry, tag, clazz);
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java
|
|
index 4e69f277..2a40da99 100644
|
|
--- a/src/main/java/org/bukkit/Location.java
|
|
+++ b/src/main/java/org/bukkit/Location.java
|
|
@@ -46,7 +46,7 @@ public class Location implements Cloneable, ConfigurationSerializable {
|
|
* @param y The y-coordinate of this new location
|
|
* @param z The z-coordinate of this new location
|
|
*/
|
|
- public Location(@Nullable final World world, final double x, final double y, final double z) {
|
|
+ public Location(@UndefinedNullability final World world, final double x, final double y, final double z) { // Paper
|
|
this(world, x, y, z, 0, 0);
|
|
}
|
|
|
|
@@ -60,7 +60,7 @@ public class Location implements Cloneable, ConfigurationSerializable {
|
|
* @param yaw The absolute rotation on the x-plane, in degrees
|
|
* @param pitch The absolute rotation on the y-plane, in degrees
|
|
*/
|
|
- public Location(@Nullable final World world, final double x, final double y, final double z, final float yaw, final float pitch) {
|
|
+ public Location(@UndefinedNullability final World world, final double x, final double y, final double z, final float yaw, final float pitch) {
|
|
if (world != null) {
|
|
this.world = new WeakReference<>(world);
|
|
}
|
|
@@ -102,7 +102,7 @@ public class Location implements Cloneable, ConfigurationSerializable {
|
|
* @throws IllegalArgumentException when world is unloaded
|
|
* @see #isWorldLoaded()
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability
|
|
public World getWorld() {
|
|
if (this.world == null) {
|
|
return null;
|
|
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
|
index 1cbb9bc6..27d3b5ad 100644
|
|
--- a/src/main/java/org/bukkit/Server.java
|
|
+++ b/src/main/java/org/bukkit/Server.java
|
|
@@ -962,7 +962,7 @@ public interface Server extends PluginMessageRecipient {
|
|
*
|
|
* @return the scoreboard manager or null if no worlds are loaded.
|
|
*/
|
|
- @Nullable
|
|
+ @NotNull // Paper
|
|
ScoreboardManager getScoreboardManager();
|
|
|
|
/**
|
|
@@ -1232,7 +1232,7 @@ public interface Server extends PluginMessageRecipient {
|
|
* @param clazz the class of the tag entries
|
|
* @return the tag or null
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability
|
|
<T extends Keyed> Tag<T> getTag(@NotNull String registry, @NotNull NamespacedKey tag, @NotNull Class<T> clazz);
|
|
|
|
/**
|
|
diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java
|
|
index 3cada348..03ba2265 100644
|
|
--- a/src/main/java/org/bukkit/inventory/ItemFactory.java
|
|
+++ b/src/main/java/org/bukkit/inventory/ItemFactory.java
|
|
@@ -3,6 +3,7 @@ package org.bukkit.inventory;
|
|
import org.bukkit.Color;
|
|
import org.bukkit.Material;
|
|
import org.bukkit.Server;
|
|
+import org.bukkit.UndefinedNullability;
|
|
import org.bukkit.inventory.meta.BookMeta;
|
|
import org.bukkit.inventory.meta.ItemMeta;
|
|
import org.bukkit.inventory.meta.SkullMeta;
|
|
@@ -25,7 +26,7 @@ public interface ItemFactory {
|
|
* @return a new ItemMeta that could be applied to an item stack of the
|
|
* specified material
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability // Paper
|
|
ItemMeta getItemMeta(@NotNull final Material material);
|
|
|
|
/**
|
|
diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java
|
|
index 6d18de76..495161f6 100644
|
|
--- a/src/main/java/org/bukkit/inventory/ItemStack.java
|
|
+++ b/src/main/java/org/bukkit/inventory/ItemStack.java
|
|
@@ -8,6 +8,7 @@ import java.util.Set; // Paper
|
|
import org.apache.commons.lang.Validate;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.Material;
|
|
+import org.bukkit.UndefinedNullability;
|
|
import org.bukkit.Utility;
|
|
import org.bukkit.configuration.serialization.ConfigurationSerializable;
|
|
import org.bukkit.enchantments.Enchantment;
|
|
@@ -528,7 +529,7 @@ public class ItemStack implements Cloneable, ConfigurationSerializable {
|
|
*
|
|
* @return a copy of the current ItemStack's ItemData
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability // Paper
|
|
public ItemMeta getItemMeta() {
|
|
return this.meta == null ? Bukkit.getItemFactory().getItemMeta(this.type) : this.meta.clone();
|
|
}
|
|
--
|
|
2.21.0
|
|
|