diff --git a/src/main/java/net/minestom/server/entity/EntityTypeImpl.java b/src/main/java/net/minestom/server/entity/EntityTypeImpl.java index 50c6eb833..bd63e53e9 100644 --- a/src/main/java/net/minestom/server/entity/EntityTypeImpl.java +++ b/src/main/java/net/minestom/server/entity/EntityTypeImpl.java @@ -22,11 +22,7 @@ import net.minestom.server.entity.metadata.monster.raider.*; import net.minestom.server.entity.metadata.monster.skeleton.SkeletonMeta; import net.minestom.server.entity.metadata.monster.skeleton.StrayMeta; import net.minestom.server.entity.metadata.monster.skeleton.WitherSkeletonMeta; -import net.minestom.server.entity.metadata.monster.zombie.DrownedMeta; -import net.minestom.server.entity.metadata.monster.zombie.HuskMeta; -import net.minestom.server.entity.metadata.monster.zombie.ZombieMeta; -import net.minestom.server.entity.metadata.monster.zombie.ZombieVillagerMeta; -import net.minestom.server.entity.metadata.monster.zombie.ZombifiedPiglinMeta; +import net.minestom.server.entity.metadata.monster.zombie.*; import net.minestom.server.entity.metadata.other.*; import net.minestom.server.entity.metadata.villager.VillagerMeta; import net.minestom.server.entity.metadata.villager.WanderingTraderMeta; @@ -46,7 +42,7 @@ import java.util.HashMap; import java.util.Map; import java.util.function.BiFunction; -final class EntityTypeImpl implements EntityType { +record EntityTypeImpl(Registry.EntityEntry registry) implements EntityType { private static final Registry.Container CONTAINER = new Registry.Container<>(Registry.Resource.ENTITIES, (container, namespace, object) -> container.register(new EntityTypeImpl(Registry.entity(namespace, object, null)))); private static final Map> ENTITY_META_SUPPLIER = createMetaMap(); @@ -246,17 +242,6 @@ final class EntityTypeImpl implements EntityType { return result; } - private final Registry.EntityEntry registry; - - EntityTypeImpl(Registry.EntityEntry registry) { - this.registry = registry; - } - - @Override - public @NotNull Registry.EntityEntry registry() { - return registry; - } - @Override public String toString() { return name(); diff --git a/src/main/java/net/minestom/server/potion/PotionEffectImpl.java b/src/main/java/net/minestom/server/potion/PotionEffectImpl.java index e26248150..09aa98853 100644 --- a/src/main/java/net/minestom/server/potion/PotionEffectImpl.java +++ b/src/main/java/net/minestom/server/potion/PotionEffectImpl.java @@ -5,7 +5,7 @@ import org.jetbrains.annotations.NotNull; import java.util.Collection; -final class PotionEffectImpl implements PotionEffect { +record PotionEffectImpl(Registry.PotionEffectEntry registry) implements PotionEffect { private static final Registry.Container CONTAINER = new Registry.Container<>(Registry.Resource.POTION_EFFECTS, (container, namespace, object) -> container.register(new PotionEffectImpl(Registry.potionEffect(namespace, object, null)))); @@ -25,17 +25,6 @@ final class PotionEffectImpl implements PotionEffect { return CONTAINER.values(); } - private final Registry.PotionEffectEntry registry; - - PotionEffectImpl(Registry.PotionEffectEntry registry) { - this.registry = registry; - } - - @Override - public @NotNull Registry.PotionEffectEntry registry() { - return registry; - } - @Override public String toString() { return name(); diff --git a/src/main/java/net/minestom/server/potion/PotionTypeImpl.java b/src/main/java/net/minestom/server/potion/PotionTypeImpl.java index 0b602c37a..9f19cd38f 100644 --- a/src/main/java/net/minestom/server/potion/PotionTypeImpl.java +++ b/src/main/java/net/minestom/server/potion/PotionTypeImpl.java @@ -6,7 +6,7 @@ import org.jetbrains.annotations.NotNull; import java.util.Collection; -final class PotionTypeImpl implements PotionType { +record PotionTypeImpl(NamespaceID namespace, int id) implements PotionType { private static final Registry.Container CONTAINER = new Registry.Container<>(Registry.Resource.POTION_TYPES, (loader, namespace, object) -> { final int id = ((Number) object.get("id")).intValue(); @@ -29,24 +29,6 @@ final class PotionTypeImpl implements PotionType { return CONTAINER.values(); } - private final NamespaceID namespaceID; - private final int id; - - PotionTypeImpl(NamespaceID namespaceID, int id) { - this.namespaceID = namespaceID; - this.id = id; - } - - @Override - public @NotNull NamespaceID namespace() { - return namespaceID; - } - - @Override - public int id() { - return id; - } - @Override public String toString() { return name(); diff --git a/src/main/java/net/minestom/server/sound/SoundEventImpl.java b/src/main/java/net/minestom/server/sound/SoundEventImpl.java index 69397b69b..dd53a0ed1 100644 --- a/src/main/java/net/minestom/server/sound/SoundEventImpl.java +++ b/src/main/java/net/minestom/server/sound/SoundEventImpl.java @@ -6,7 +6,7 @@ import org.jetbrains.annotations.NotNull; import java.util.Collection; -final class SoundEventImpl implements SoundEvent { +record SoundEventImpl(NamespaceID namespace, int id) implements SoundEvent { private static final Registry.Container CONTAINER = new Registry.Container<>(Registry.Resource.SOUNDS, (container, namespace, object) -> { final int id = ((Number) object.get("id")).intValue(); @@ -29,24 +29,6 @@ final class SoundEventImpl implements SoundEvent { return CONTAINER.values(); } - private final NamespaceID namespaceID; - private final int id; - - SoundEventImpl(NamespaceID namespaceID, int id) { - this.namespaceID = namespaceID; - this.id = id; - } - - @Override - public @NotNull NamespaceID namespace() { - return namespaceID; - } - - @Override - public int id() { - return id; - } - @Override public String toString() { return name(); diff --git a/src/main/java/net/minestom/server/statistic/StatisticTypeImpl.java b/src/main/java/net/minestom/server/statistic/StatisticTypeImpl.java index cc73d35a2..05828d68b 100644 --- a/src/main/java/net/minestom/server/statistic/StatisticTypeImpl.java +++ b/src/main/java/net/minestom/server/statistic/StatisticTypeImpl.java @@ -6,7 +6,7 @@ import org.jetbrains.annotations.NotNull; import java.util.Collection; -final class StatisticTypeImpl implements StatisticType { +record StatisticTypeImpl(NamespaceID namespace, int id) implements StatisticType { private static final Registry.Container CONTAINER = new Registry.Container<>(Registry.Resource.STATISTICS, (container, namespace, object) -> { final int id = ((Number) object.get("id")).intValue(); @@ -29,24 +29,6 @@ final class StatisticTypeImpl implements StatisticType { return CONTAINER.values(); } - private final NamespaceID namespaceID; - private final int id; - - StatisticTypeImpl(NamespaceID namespaceID, int id) { - this.namespaceID = namespaceID; - this.id = id; - } - - @Override - public @NotNull NamespaceID namespace() { - return namespaceID; - } - - @Override - public int id() { - return id; - } - @Override public String toString() { return name(); diff --git a/src/main/java/net/minestom/server/utils/binary/PooledBuffers.java b/src/main/java/net/minestom/server/utils/binary/PooledBuffers.java index 457a5b169..669acdcbe 100644 --- a/src/main/java/net/minestom/server/utils/binary/PooledBuffers.java +++ b/src/main/java/net/minestom/server/utils/binary/PooledBuffers.java @@ -52,39 +52,21 @@ public final class PooledBuffers { CLEANER.register(ref, new BuffersCleaner(buffers)); } - private static final class BufferRefCleaner implements Runnable { - private final AtomicReference bufferRef; - - public BufferRefCleaner(AtomicReference bufferRef) { - this.bufferRef = bufferRef; - } - + private record BufferRefCleaner(AtomicReference bufferRef) implements Runnable { @Override public void run() { add(bufferRef.get()); } } - private static final class BufferCleaner implements Runnable { - private final BinaryBuffer buffer; - - public BufferCleaner(BinaryBuffer buffer) { - this.buffer = buffer; - } - + private record BufferCleaner(BinaryBuffer buffer) implements Runnable { @Override public void run() { add(buffer); } } - private static final class BuffersCleaner implements Runnable { - private final Collection buffers; - - public BuffersCleaner(Collection buffers) { - this.buffers = buffers; - } - + private record BuffersCleaner(Collection buffers) implements Runnable { @Override public void run() { if (buffers.isEmpty()) return;