From 1961ead6ff77ff5bbbed791187b5e6cc2dfb1950 Mon Sep 17 00:00:00 2001 From: DerFrZocker Date: Fri, 22 Sep 2023 02:57:09 +1000 Subject: [PATCH] #898: Use Java Consumer instead of Bukkit Consumer --- src/main/java/org/bukkit/RegionAccessor.java | 2 +- src/main/java/org/bukkit/World.java | 4 ++-- src/main/java/org/bukkit/util/Consumer.java | 8 +++++++- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/bukkit/RegionAccessor.java b/src/main/java/org/bukkit/RegionAccessor.java index 43f5aab2..02de62c0 100644 --- a/src/main/java/org/bukkit/RegionAccessor.java +++ b/src/main/java/org/bukkit/RegionAccessor.java @@ -3,6 +3,7 @@ package org.bukkit; import java.util.Collection; import java.util.List; import java.util.Random; +import java.util.function.Consumer; import java.util.function.Predicate; import org.bukkit.block.Biome; import org.bukkit.block.BlockState; @@ -10,7 +11,6 @@ import org.bukkit.block.data.BlockData; import org.bukkit.entity.Entity; import org.bukkit.entity.EntityType; import org.bukkit.entity.LivingEntity; -import org.bukkit.util.Consumer; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java index be376fa7..e9a00931 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java @@ -6,6 +6,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; import java.util.function.Predicate; import org.bukkit.block.Biome; import org.bukkit.block.Block; @@ -33,7 +34,6 @@ import org.bukkit.persistence.PersistentDataHolder; import org.bukkit.plugin.Plugin; import org.bukkit.plugin.messaging.PluginMessageRecipient; import org.bukkit.util.BoundingBox; -import org.bukkit.util.Consumer; import org.bukkit.util.RayTraceResult; import org.bukkit.util.StructureSearchResult; import org.bukkit.util.Vector; @@ -521,7 +521,7 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient * @param delegate A class to call for each block changed as a result of * this method * @return true if the tree was created successfully, otherwise false - * @see #generateTree(org.bukkit.Location, java.util.Random, org.bukkit.TreeType, org.bukkit.util.Consumer) + * @see #generateTree(org.bukkit.Location, java.util.Random, org.bukkit.TreeType, java.util.function.Consumer) * @deprecated this method does not handle tile entities (bee nests) */ @Deprecated diff --git a/src/main/java/org/bukkit/util/Consumer.java b/src/main/java/org/bukkit/util/Consumer.java index fb9e6b90..dd6bfbc4 100644 --- a/src/main/java/org/bukkit/util/Consumer.java +++ b/src/main/java/org/bukkit/util/Consumer.java @@ -5,13 +5,19 @@ package org.bukkit.util; * result. * * @param the type of the input to the operation + * @deprecated Use {@link java.util.function.Consumer} instead */ -public interface Consumer { +// Bukkit developer note (NOT plugin developers): +// NEVER use this consumer in the API. +// API methods which use this consumer will be remapped to Java's consumer at runtime, resulting in an error. +@Deprecated +public interface Consumer extends java.util.function.Consumer { /** * Performs this operation on the given argument. * * @param t the input argument */ + @Override void accept(T t); }