From e22b32b9fbbe9e1ce2b851de71afed319a1f1c1c Mon Sep 17 00:00:00 2001 From: DmitriyMX Date: Wed, 25 Jul 2018 22:47:32 +0300 Subject: [PATCH] NetStream -> NetInputStream & NetOutputStream --- .../main/java/mc/core/network/CSPacket.java | 2 +- .../{NetStream.java => NetInputStream.java} | 17 +----- .../java/mc/core/network/NetOutputStream.java | 22 +++++++ .../main/java/mc/core/network/SCPacket.java | 2 +- .../proto_1_12_2/NetInputStream_p340.java | 52 ++++++++++++++++ ...am_p340.java => NetOutputStream_p340.java} | 44 +------------ .../proto_1_12_2/packets/AnimationPacket.java | 4 +- .../proto_1_12_2/packets/BossBarPacket.java | 4 +- .../packets/ChatMessageClientPacket.java | 4 +- .../packets/ChatMessageServerPacket.java | 4 +- .../packets/ClientSettingsPacket.java | 4 +- .../packets/DisconnectPacket.java | 4 +- .../packets/EncryptionRequestPacket.java | 4 +- .../proto_1_12_2/packets/HandshakePacket.java | 4 +- .../packets/HeldItemChangePacket.java | 4 +- .../proto_1_12_2/packets/JoinGamePacket.java | 4 +- .../proto_1_12_2/packets/KeepAlivePacket.java | 8 +-- .../packets/LoginStartPacket.java | 4 +- .../packets/LoginSuccessPacket.java | 4 +- .../proto_1_12_2/packets/PingPacket.java | 8 +-- .../packets/PlayerAbilitiesPacket.java | 4 +- .../PlayerListHeaderAndFooterPacket.java | 4 +- .../packets/PlayerListItemPacket.java | 4 +- .../packets/PlayerPositionAndLookPacket.java | 8 +-- .../packets/PluginMessagePacket.java | 8 +-- .../packets/SpawnPositionPacket.java | 4 +- .../packets/StatusRequestPacket.java | 4 +- .../packets/StatusResponsePacket.java | 4 +- .../packets/TabCompletePacket.java | 4 +- .../packets/TeleportConfirmPacket.java | 4 +- .../packets/TimeUpdatePacket.java | 4 +- .../proto_1_12_2/packets/TitlePacket.java | 4 +- .../proto_1_12_2/netty/PacketDecoder.java | 6 +- .../proto_1_12_2/netty/PacketEncoder.java | 8 +-- .../wrappers/ByteArrayOutputNetStream.java | 59 +----------------- ...Stream.java => WrapperNetInputStream.java} | 51 +--------------- .../wrappers/WrapperNetOutputStream.java | 61 +++++++++++++++++++ 37 files changed, 210 insertions(+), 234 deletions(-) rename core/src/main/java/mc/core/network/{NetStream.java => NetInputStream.java} (54%) create mode 100644 core/src/main/java/mc/core/network/NetOutputStream.java create mode 100644 proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetInputStream_p340.java rename proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/{NetStream_p340.java => NetOutputStream_p340.java} (56%) rename proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/{WrapperNetStream.java => WrapperNetInputStream.java} (55%) create mode 100644 proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetOutputStream.java diff --git a/core/src/main/java/mc/core/network/CSPacket.java b/core/src/main/java/mc/core/network/CSPacket.java index 7ed00aa..4e8bb79 100644 --- a/core/src/main/java/mc/core/network/CSPacket.java +++ b/core/src/main/java/mc/core/network/CSPacket.java @@ -8,5 +8,5 @@ package mc.core.network; * Пакеты Client->Server */ public interface CSPacket { - void readSelf(NetStream netStream); + void readSelf(NetInputStream netStream); } diff --git a/core/src/main/java/mc/core/network/NetStream.java b/core/src/main/java/mc/core/network/NetInputStream.java similarity index 54% rename from core/src/main/java/mc/core/network/NetStream.java rename to core/src/main/java/mc/core/network/NetInputStream.java index e82d53c..a2e7b54 100644 --- a/core/src/main/java/mc/core/network/NetStream.java +++ b/core/src/main/java/mc/core/network/NetInputStream.java @@ -1,6 +1,6 @@ /* * DmitriyMX - * 2018-03-28 + * 2018-07-25 */ package mc.core.network; @@ -9,7 +9,7 @@ import lombok.Setter; import java.util.UUID; -public abstract class NetStream { +public abstract class NetInputStream { @Getter @Setter private int dataSize; @@ -28,18 +28,5 @@ public abstract class NetStream { public abstract String readString(); public abstract UUID readUUID(); - public abstract void writeBoolean(boolean value); - public abstract void writeByte(int value); - public abstract void writeUnsignedByte(int value); - public abstract void writeBytes(byte[] buffer); - public abstract void writeShort(int value); - public abstract void writeInt(int value); - public abstract void writeVarInt(int value); - public abstract void writeLong(long value); - public abstract void writeFloat(float value); - public abstract void writeDouble(double value); - public abstract void writeString(String value); - public abstract void writeUUID(UUID uuid); - public abstract void skipBytes(int count); } diff --git a/core/src/main/java/mc/core/network/NetOutputStream.java b/core/src/main/java/mc/core/network/NetOutputStream.java new file mode 100644 index 0000000..86c6f19 --- /dev/null +++ b/core/src/main/java/mc/core/network/NetOutputStream.java @@ -0,0 +1,22 @@ +/* + * DmitriyMX + * 2018-07-25 + */ +package mc.core.network; + +import java.util.UUID; + +public abstract class NetOutputStream { + public abstract void writeBoolean(boolean value); + public abstract void writeByte(int value); + public abstract void writeUnsignedByte(int value); + public abstract void writeBytes(byte[] buffer); + public abstract void writeShort(int value); + public abstract void writeInt(int value); + public abstract void writeVarInt(int value); + public abstract void writeLong(long value); + public abstract void writeFloat(float value); + public abstract void writeDouble(double value); + public abstract void writeString(String value); + public abstract void writeUUID(UUID uuid); +} diff --git a/core/src/main/java/mc/core/network/SCPacket.java b/core/src/main/java/mc/core/network/SCPacket.java index 9abba0e..2265331 100644 --- a/core/src/main/java/mc/core/network/SCPacket.java +++ b/core/src/main/java/mc/core/network/SCPacket.java @@ -8,5 +8,5 @@ package mc.core.network; * Пакеты Server->Client */ public interface SCPacket { - void writeSelf(NetStream netStream); + void writeSelf(NetOutputStream netStream); } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetInputStream_p340.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetInputStream_p340.java new file mode 100644 index 0000000..418f9aa --- /dev/null +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetInputStream_p340.java @@ -0,0 +1,52 @@ +/* + * DmitriyMX + * 2018-07-25 + */ +package mc.core.network.proto_1_12_2; + +import lombok.extern.slf4j.Slf4j; +import mc.core.network.NetInputStream; + +import java.nio.charset.StandardCharsets; +import java.util.UUID; + +@Slf4j +public abstract class NetInputStream_p340 extends NetInputStream { + @Override + public int readVarInt() { + int numRead = 0; + int result = 0; + byte read; + do { + read = readByte(); + int value = (read & 0b01111111); + result |= (value << (7 * numRead)); + + numRead++; + if (numRead > 5) { + log.warn("VarInt is too big"); + break; + } + } while ((read & 0b10000000) != 0); + + return result; + } + + @Override + public String readString() { + int size = readVarInt(); + if (size == 0) { + log.warn("String zero length??"); + return ""; + } + + byte[] bytes = new byte[size]; + readBytes(bytes); + return new String(bytes, StandardCharsets.UTF_8); + } + + @Override + public UUID readUUID() { + return new UUID(readLong(), readLong()); + } +} diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetStream_p340.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetOutputStream_p340.java similarity index 56% rename from proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetStream_p340.java rename to proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetOutputStream_p340.java index b1ebdc9..ea609cf 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetStream_p340.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/NetOutputStream_p340.java @@ -1,37 +1,17 @@ /* * DmitriyMX - * 2018-06-10 + * 2018-07-25 */ package mc.core.network.proto_1_12_2; import lombok.extern.slf4j.Slf4j; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import java.nio.charset.StandardCharsets; import java.util.UUID; @Slf4j -public abstract class NetStream_p340 extends NetStream { - @Override - public int readVarInt() { - int numRead = 0; - int result = 0; - byte read; - do { - read = readByte(); - int value = (read & 0b01111111); - result |= (value << (7 * numRead)); - - numRead++; - if (numRead > 5) { - log.warn("VarInt is too big"); - break; - } - } while ((read & 0b10000000) != 0); - - return result; - } - +public abstract class NetOutputStream_p340 extends NetOutputStream { @Override public void writeVarInt(int value) { do { @@ -45,19 +25,6 @@ public abstract class NetStream_p340 extends NetStream { } while (value != 0); } - @Override - public String readString() { - int size = readVarInt(); - if (size == 0) { - log.warn("String zero length??"); - return ""; - } - - byte[] bytes = new byte[size]; - readBytes(bytes); - return new String(bytes, StandardCharsets.UTF_8); - } - @Override public void writeString(String value) { if (value.length() > Short.MAX_VALUE) { @@ -72,11 +39,6 @@ public abstract class NetStream_p340 extends NetStream { } } - @Override - public UUID readUUID() { - return new UUID(readLong(), readLong()); - } - @Override public void writeUUID(UUID uuid) { writeLong(uuid.getMostSignificantBits()); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/AnimationPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/AnimationPacket.java index b333bc5..be82f07 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/AnimationPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/AnimationPacket.java @@ -5,13 +5,13 @@ package mc.core.network.proto_1_12_2.packets; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; public class AnimationPacket implements CSPacket { private int handAnimation; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.handAnimation = netStream.readVarInt(); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/BossBarPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/BossBarPacket.java index 6b1cfdc..127f124 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/BossBarPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/BossBarPacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.Data; import lombok.Setter; import lombok.ToString; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.network.proto_1_12_2.serializers.TextSerializer; import mc.core.text.Text; @@ -63,7 +63,7 @@ public class BossBarPacket implements SCPacket { private BarData barData; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeUUID(uuid); netStream.writeVarInt(action); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ChatMessageClientPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ChatMessageClientPacket.java index 9e84224..70aa84a 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ChatMessageClientPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ChatMessageClientPacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.Getter; import lombok.ToString; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; @Getter @ToString @@ -15,7 +15,7 @@ public class ChatMessageClientPacket implements CSPacket { private String message; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.message = netStream.readString(); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ChatMessageServerPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ChatMessageServerPacket.java index 03ae3b4..0f20c2e 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ChatMessageServerPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ChatMessageServerPacket.java @@ -9,7 +9,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; import mc.core.chat.MessageType; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.network.proto_1_12_2.serializers.TextSerializer; import mc.core.text.Text; @@ -23,7 +23,7 @@ public class ChatMessageServerPacket implements SCPacket { private MessageType type; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeString(TextSerializer.serialize(text).toString()); netStream.writeByte(type.getId()); } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ClientSettingsPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ClientSettingsPacket.java index 8a2072d..6cb98bd 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ClientSettingsPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/ClientSettingsPacket.java @@ -8,7 +8,7 @@ import lombok.Getter; import lombok.NoArgsConstructor; import lombok.ToString; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; @NoArgsConstructor @Getter @@ -28,7 +28,7 @@ public class ClientSettingsPacket implements CSPacket { private int mainHand; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { locale = netStream.readString(); viewDistance = netStream.readByte(); chatMode = netStream.readVarInt(); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/DisconnectPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/DisconnectPacket.java index aaf9df4..00568ad 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/DisconnectPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/DisconnectPacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.AllArgsConstructor; import lombok.NoArgsConstructor; import lombok.Setter; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.network.proto_1_12_2.serializers.TextSerializer; import mc.core.text.Text; @@ -19,7 +19,7 @@ public class DisconnectPacket implements SCPacket { private Text reason; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeString(TextSerializer.serialize(reason).toString()); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/EncryptionRequestPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/EncryptionRequestPacket.java index dd7b8d8..33a2f54 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/EncryptionRequestPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/EncryptionRequestPacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.AllArgsConstructor; import lombok.NoArgsConstructor; import lombok.Setter; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import java.security.PublicKey; @@ -21,7 +21,7 @@ public class EncryptionRequestPacket implements SCPacket { private byte[] verifyToken; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeString(serverId); byte[] bytes = publicKey.getEncoded(); netStream.writeVarInt(bytes.length); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/HandshakePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/HandshakePacket.java index 8933818..a0a2ab2 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/HandshakePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/HandshakePacket.java @@ -8,7 +8,7 @@ import lombok.Getter; import lombok.NoArgsConstructor; import lombok.ToString; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; import mc.core.network.proto_1_12_2.State; @NoArgsConstructor @@ -21,7 +21,7 @@ public class HandshakePacket implements CSPacket { private State nextState; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.protocolVersion = netStream.readVarInt(); this.address = netStream.readString(); this.serverPort = netStream.readUnsignedShort(); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/HeldItemChangePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/HeldItemChangePacket.java index 3ae989a..ca9f073 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/HeldItemChangePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/HeldItemChangePacket.java @@ -5,13 +5,13 @@ package mc.core.network.proto_1_12_2.packets; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; public class HeldItemChangePacket implements CSPacket { private int slot; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.slot = netStream.readShort(); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/JoinGamePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/JoinGamePacket.java index c1592c1..6000085 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/JoinGamePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/JoinGamePacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.player.PlayerMode; @@ -22,7 +22,7 @@ public class JoinGamePacket implements SCPacket { private String levelType; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeInt(entityId); netStream.writeUnsignedByte(mode.getId()); netStream.writeInt(dimension); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/KeepAlivePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/KeepAlivePacket.java index 7a8fa44..c41ae76 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/KeepAlivePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/KeepAlivePacket.java @@ -8,9 +8,7 @@ import lombok.AllArgsConstructor; import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; -import mc.core.network.CSPacket; -import mc.core.network.NetStream; -import mc.core.network.SCPacket; +import mc.core.network.*; @AllArgsConstructor @NoArgsConstructor @@ -20,12 +18,12 @@ public class KeepAlivePacket implements CSPacket, SCPacket { private long payload; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.payload = netStream.readLong(); } @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeLong(this.payload); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/LoginStartPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/LoginStartPacket.java index a25627a..e3654c7 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/LoginStartPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/LoginStartPacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.Getter; import lombok.ToString; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; @Getter @ToString @@ -15,7 +15,7 @@ public class LoginStartPacket implements CSPacket { private String playerName; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.playerName = netStream.readString(); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/LoginSuccessPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/LoginSuccessPacket.java index af059ce..376d7a1 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/LoginSuccessPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/LoginSuccessPacket.java @@ -8,7 +8,7 @@ import lombok.AllArgsConstructor; import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import java.util.UUID; @@ -22,7 +22,7 @@ public class LoginSuccessPacket implements SCPacket { private String playerName; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeString(uuid.toString()); netStream.writeString(playerName); } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PingPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PingPacket.java index 0d03f72..5bd0c25 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PingPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PingPacket.java @@ -5,21 +5,19 @@ package mc.core.network.proto_1_12_2.packets; import lombok.ToString; -import mc.core.network.CSPacket; -import mc.core.network.NetStream; -import mc.core.network.SCPacket; +import mc.core.network.*; @ToString public class PingPacket implements CSPacket, SCPacket { private long payload; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.payload = netStream.readLong(); } @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeLong(payload); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerAbilitiesPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerAbilitiesPacket.java index f6355b0..d0397c5 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerAbilitiesPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerAbilitiesPacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; @NoArgsConstructor @@ -22,7 +22,7 @@ public class PlayerAbilitiesPacket implements SCPacket { private float fieldOfView = flyingSpeed; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { byte flag = 0; if (godMode) flag = (byte)(flag | 0x01); if (flying) flag = (byte)(flag | 0x02); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerListHeaderAndFooterPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerListHeaderAndFooterPacket.java index 91ae687..8579a1b 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerListHeaderAndFooterPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerListHeaderAndFooterPacket.java @@ -6,7 +6,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.Setter; import lombok.ToString; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.network.proto_1_12_2.serializers.TextSerializer; import mc.core.text.Text; @@ -19,7 +19,7 @@ public class PlayerListHeaderAndFooterPacket implements SCPacket { private Text footer; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { if (header == null) { netStream.writeString("{\"translate\":\"\"}"); } else { diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerListItemPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerListItemPacket.java index f5f72c4..b8a651d 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerListItemPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerListItemPacket.java @@ -9,7 +9,7 @@ import lombok.Getter; import lombok.Setter; import lombok.ToString; import lombok.extern.slf4j.Slf4j; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.network.proto_1_12_2.serializers.TextSerializer; import mc.core.player.PlayerMode; @@ -44,7 +44,7 @@ public class PlayerListItemPacket implements SCPacket { private List listPlayers = new ArrayList<>(); @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeVarInt(action); netStream.writeVarInt(listPlayers.size()); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerPositionAndLookPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerPositionAndLookPacket.java index ddc0dd2..4133bbe 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerPositionAndLookPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PlayerPositionAndLookPacket.java @@ -9,9 +9,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; import mc.core.Location; -import mc.core.network.CSPacket; -import mc.core.network.NetStream; -import mc.core.network.SCPacket; +import mc.core.network.*; import mc.core.player.Look; @NoArgsConstructor @@ -25,7 +23,7 @@ public class PlayerPositionAndLookPacket implements SCPacket, CSPacket { private boolean onGround = false; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeDouble(location.getX()); netStream.writeDouble(location.getY()); netStream.writeDouble(location.getZ()); @@ -42,7 +40,7 @@ public class PlayerPositionAndLookPacket implements SCPacket, CSPacket { } @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.location = new Location( netStream.readDouble(), netStream.readDouble(), diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PluginMessagePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PluginMessagePacket.java index 9af5f84..b10208d 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PluginMessagePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/PluginMessagePacket.java @@ -5,9 +5,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.*; -import mc.core.network.CSPacket; -import mc.core.network.NetStream; -import mc.core.network.SCPacket; +import mc.core.network.*; @AllArgsConstructor @NoArgsConstructor @@ -19,14 +17,14 @@ public class PluginMessagePacket implements SCPacket, CSPacket { private byte[] data; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { channelName = netStream.readString(); data = new byte[netStream.getDataSize() - channelName.getBytes().length - 1]; netStream.readBytes(data); } @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeString(channelName); netStream.writeBytes(data); } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/SpawnPositionPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/SpawnPositionPacket.java index 488d126..aa0ab3a 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/SpawnPositionPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/SpawnPositionPacket.java @@ -9,7 +9,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; import mc.core.Location; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.network.proto_1_12_2.serializers.LocationSerializer; @@ -21,7 +21,7 @@ public class SpawnPositionPacket implements SCPacket { private Location location; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeLong(LocationSerializer.serialize(location)); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/StatusRequestPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/StatusRequestPacket.java index 0d3cb2f..b57c56a 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/StatusRequestPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/StatusRequestPacket.java @@ -6,11 +6,11 @@ package mc.core.network.proto_1_12_2.packets; import lombok.ToString; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; @ToString public class StatusRequestPacket implements CSPacket { @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/StatusResponsePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/StatusResponsePacket.java index 959575d..3505581 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/StatusResponsePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/StatusResponsePacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import com.google.gson.JsonObject; import lombok.Setter; import lombok.ToString; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; @Setter @@ -29,7 +29,7 @@ public class StatusResponsePacket implements SCPacket { private byte[] faviconBase64; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { JsonObject playersObj = new JsonObject(); playersObj.addProperty("max", maxOnline); playersObj.addProperty("online", online); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TabCompletePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TabCompletePacket.java index f3a202e..1c86920 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TabCompletePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TabCompletePacket.java @@ -6,7 +6,7 @@ package mc.core.network.proto_1_12_2.packets; import mc.core.Location; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; import mc.core.network.proto_1_12_2.serializers.LocationSerializer; public class TabCompletePacket implements CSPacket { @@ -16,7 +16,7 @@ public class TabCompletePacket implements CSPacket { private Location location; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { this.text = netStream.readString(); this.assumeCommand = netStream.readBoolean(); this.hasPosition = netStream.readBoolean(); diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TeleportConfirmPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TeleportConfirmPacket.java index a1fe944..356b6a3 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TeleportConfirmPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TeleportConfirmPacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.Getter; import lombok.ToString; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; @Getter @ToString @@ -15,7 +15,7 @@ public class TeleportConfirmPacket implements CSPacket { private int teleportId; @Override - public void readSelf(NetStream netStream) { + public void readSelf(NetInputStream netStream) { teleportId = netStream.readVarInt(); } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TimeUpdatePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TimeUpdatePacket.java index 1a95d8c..e17160e 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TimeUpdatePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TimeUpdatePacket.java @@ -8,7 +8,7 @@ import lombok.AllArgsConstructor; import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; @AllArgsConstructor @@ -20,7 +20,7 @@ public class TimeUpdatePacket implements SCPacket { private long worldage; @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeLong(worldage); netStream.writeLong(time); } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TitlePacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TitlePacket.java index 3cd4256..3b426f1 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TitlePacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/TitlePacket.java @@ -7,7 +7,7 @@ package mc.core.network.proto_1_12_2.packets; import lombok.RequiredArgsConstructor; import lombok.Setter; import lombok.ToString; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.network.proto_1_12_2.serializers.TextSerializer; import mc.core.text.Text; @@ -91,7 +91,7 @@ public class TitlePacket implements SCPacket { } @Override - public void writeSelf(NetStream netStream) { + public void writeSelf(NetOutputStream netStream) { netStream.writeVarInt(this.action); switch (this.action) { diff --git a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PacketDecoder.java b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PacketDecoder.java index 561a058..dc1090b 100644 --- a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PacketDecoder.java +++ b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PacketDecoder.java @@ -9,9 +9,9 @@ import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.ByteToMessageDecoder; import lombok.extern.slf4j.Slf4j; import mc.core.network.CSPacket; -import mc.core.network.NetStream; +import mc.core.network.NetInputStream; import mc.core.network.proto_1_12_2.State; -import mc.core.network.proto_1_12_2.netty.wrappers.WrapperNetStream; +import mc.core.network.proto_1_12_2.netty.wrappers.WrapperNetInputStream; import java.util.List; @@ -36,7 +36,7 @@ public class PacketDecoder extends ByteToMessageDecoder { log.debug("ByteBuf readableBytes: {}", in.readableBytes()); State state = ctx.channel().attr(ATTR_STATE).get(); - NetStream netStream = new WrapperNetStream(in); + NetInputStream netStream = new WrapperNetInputStream(in); int packetSize = netStream.readVarInt(); log.debug("Packet size: {}", packetSize); diff --git a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PacketEncoder.java b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PacketEncoder.java index 4a9b9ed..54e6a11 100644 --- a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PacketEncoder.java +++ b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PacketEncoder.java @@ -8,11 +8,11 @@ import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.MessageToByteEncoder; import lombok.extern.slf4j.Slf4j; -import mc.core.network.NetStream; +import mc.core.network.NetOutputStream; import mc.core.network.SCPacket; import mc.core.network.proto_1_12_2.State; import mc.core.network.proto_1_12_2.netty.wrappers.ByteArrayOutputNetStream; -import mc.core.network.proto_1_12_2.netty.wrappers.WrapperNetStream; +import mc.core.network.proto_1_12_2.netty.wrappers.WrapperNetOutputStream; import static mc.core.network.proto_1_12_2.netty.NettyServer.ATTR_STATE; @@ -41,10 +41,10 @@ public class PacketEncoder extends MessageToByteEncoder { log.debug("Send {}:{}", state, packet); - NetStream netStream = new ByteArrayOutputNetStream(); + NetOutputStream netStream = new ByteArrayOutputNetStream(); packet.writeSelf(netStream); byte[] bytes = ((ByteArrayOutputNetStream) netStream).toByteArray(); - netStream = new WrapperNetStream(out); + netStream = new WrapperNetOutputStream(out); netStream.writeVarInt(bytes.length + sizeVarInt(id)); netStream.writeVarInt(id); diff --git a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/ByteArrayOutputNetStream.java b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/ByteArrayOutputNetStream.java index e3248d6..abfe64a 100644 --- a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/ByteArrayOutputNetStream.java +++ b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/ByteArrayOutputNetStream.java @@ -4,63 +4,13 @@ */ package mc.core.network.proto_1_12_2.netty.wrappers; -import mc.core.network.proto_1_12_2.NetStream_p340; +import mc.core.network.proto_1_12_2.NetOutputStream_p340; import java.io.ByteArrayOutputStream; -public class ByteArrayOutputNetStream extends NetStream_p340 { +public class ByteArrayOutputNetStream extends NetOutputStream_p340 { private ByteArrayOutputStream baos = new ByteArrayOutputStream(); - @Override - public boolean readBoolean() { - throw new UnsupportedOperationException(); - } - - @Override - public byte readByte() { - throw new UnsupportedOperationException(); - } - - @Override - public void readBytes(byte[] buffer) { - throw new UnsupportedOperationException(); - } - - @Override - public int readUnsignedByte() { - throw new UnsupportedOperationException(); - } - - @Override - public int readUnsignedShort() { - throw new UnsupportedOperationException(); - } - - @Override - public short readShort() { - throw new UnsupportedOperationException(); - } - - @Override - public int readInt() { - throw new UnsupportedOperationException(); - } - - @Override - public long readLong() { - throw new UnsupportedOperationException(); - } - - @Override - public float readFloat() { - throw new UnsupportedOperationException(); - } - - @Override - public double readDouble() { - throw new UnsupportedOperationException(); - } - @Override public void writeBoolean(boolean value) { baos.write(value ? 1 : 0); @@ -117,11 +67,6 @@ public class ByteArrayOutputNetStream extends NetStream_p340 { writeLong(Double.doubleToLongBits(value)); } - @Override - public void skipBytes(int count) { - throw new UnsupportedOperationException(); - } - public byte[] toByteArray() { return baos.toByteArray(); } diff --git a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetStream.java b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetInputStream.java similarity index 55% rename from proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetStream.java rename to proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetInputStream.java index 19d688c..215fc68 100644 --- a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetStream.java +++ b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetInputStream.java @@ -1,17 +1,17 @@ /* * DmitriyMX - * 2018-04-08 + * 2018-07-25 */ package mc.core.network.proto_1_12_2.netty.wrappers; import io.netty.buffer.ByteBuf; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import mc.core.network.proto_1_12_2.NetStream_p340; +import mc.core.network.proto_1_12_2.NetInputStream_p340; @Slf4j @RequiredArgsConstructor -public class WrapperNetStream extends NetStream_p340 { +public class WrapperNetInputStream extends NetInputStream_p340 { private final ByteBuf byteBuf; @Override @@ -64,51 +64,6 @@ public class WrapperNetStream extends NetStream_p340 { return byteBuf.readDouble(); } - @Override - public void writeBoolean(boolean value) { - byteBuf.writeBoolean(value); - } - - @Override - public void writeByte(int value) { - byteBuf.writeByte(value); - } - - @Override - public void writeUnsignedByte(int value) { - byteBuf.writeByte((byte)(value & 0xFF)); - } - - @Override - public void writeBytes(byte[] buffer) { - byteBuf.writeBytes(buffer); - } - - @Override - public void writeShort(int value) { - byteBuf.writeShort(value); - } - - @Override - public void writeInt(int value) { - byteBuf.writeInt(value); - } - - @Override - public void writeLong(long value) { - byteBuf.writeLong(value); - } - - @Override - public void writeFloat(float value) { - byteBuf.writeFloat(value); - } - - @Override - public void writeDouble(double value) { - byteBuf.writeDouble(value); - } - @Override public void skipBytes(int count) { byteBuf.skipBytes(count); diff --git a/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetOutputStream.java b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetOutputStream.java new file mode 100644 index 0000000..539dc2c --- /dev/null +++ b/proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/wrappers/WrapperNetOutputStream.java @@ -0,0 +1,61 @@ +/* + * DmitriyMX + * 2018-07-25 + */ +package mc.core.network.proto_1_12_2.netty.wrappers; + +import io.netty.buffer.ByteBuf; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import mc.core.network.proto_1_12_2.NetOutputStream_p340; + +@Slf4j +@RequiredArgsConstructor +public class WrapperNetOutputStream extends NetOutputStream_p340 { + private final ByteBuf byteBuf; + + @Override + public void writeBoolean(boolean value) { + byteBuf.writeBoolean(value); + } + + @Override + public void writeByte(int value) { + byteBuf.writeByte(value); + } + + @Override + public void writeUnsignedByte(int value) { + byteBuf.writeByte((byte)(value & 0xFF)); + } + + @Override + public void writeBytes(byte[] buffer) { + byteBuf.writeBytes(buffer); + } + + @Override + public void writeShort(int value) { + byteBuf.writeShort(value); + } + + @Override + public void writeInt(int value) { + byteBuf.writeInt(value); + } + + @Override + public void writeLong(long value) { + byteBuf.writeLong(value); + } + + @Override + public void writeFloat(float value) { + byteBuf.writeFloat(value); + } + + @Override + public void writeDouble(double value) { + byteBuf.writeDouble(value); + } +}