From b68c30423c9da004b1da34caea2e024409f1670c Mon Sep 17 00:00:00 2001 From: TheMode Date: Wed, 14 Apr 2021 01:40:21 +0200 Subject: [PATCH] Add BinaryWriter#write(ByteBuf) --- .../java/net/minestom/server/item/ItemMeta.java | 7 ++++--- .../minestom/server/utils/binary/BinaryWriter.java | 14 ++++---------- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/src/main/java/net/minestom/server/item/ItemMeta.java b/src/main/java/net/minestom/server/item/ItemMeta.java index 6eb11fffd..04d0023ba 100644 --- a/src/main/java/net/minestom/server/item/ItemMeta.java +++ b/src/main/java/net/minestom/server/item/ItemMeta.java @@ -1,5 +1,6 @@ package net.minestom.server.item; +import io.netty.buffer.ByteBuf; import net.kyori.adventure.text.Component; import net.minestom.server.instance.block.Block; import net.minestom.server.item.attribute.ItemAttribute; @@ -33,7 +34,7 @@ public class ItemMeta implements Writeable { private final ItemMetaBuilder emptyBuilder; private String cachedSNBT; - private BinaryWriter cachedBuffer; + private ByteBuf cachedBuffer; protected ItemMeta(@NotNull ItemMetaBuilder metaBuilder) { this.damage = metaBuilder.damage; @@ -157,9 +158,9 @@ public class ItemMeta implements Writeable { if (cachedBuffer == null) { BinaryWriter w = new BinaryWriter(); w.writeNBT("", nbt); - this.cachedBuffer = w; + this.cachedBuffer = w.getBuffer(); } writer.write(cachedBuffer); - cachedBuffer.getBuffer().resetReaderIndex(); + this.cachedBuffer.resetReaderIndex(); } } diff --git a/src/main/java/net/minestom/server/utils/binary/BinaryWriter.java b/src/main/java/net/minestom/server/utils/binary/BinaryWriter.java index 2f6edee3d..5de56cdf3 100644 --- a/src/main/java/net/minestom/server/utils/binary/BinaryWriter.java +++ b/src/main/java/net/minestom/server/utils/binary/BinaryWriter.java @@ -233,16 +233,6 @@ public class BinaryWriter extends OutputStream { } } - /** - * Consumer this object to write at a different time - * - * @param consumer the writer consumer - */ - public void write(Consumer consumer) { - if (consumer != null) - consumer.accept(this); - } - /** * Writes an {@link UUID}. * It is done by writing both long, the most and least significant bits. @@ -295,6 +285,10 @@ public class BinaryWriter extends OutputStream { this.buffer.writeBytes(writer.getBuffer()); } + public void write(@NotNull ByteBuf buffer) { + this.buffer.writeBytes(buffer); + } + /** * Writes an array of writeable objects to this writer. Will prepend the binary stream with a var int to denote the * length of the array.