From 7d97745783ddd60b825219edbc5836a186863014 Mon Sep 17 00:00:00 2001 From: liamcottle Date: Sat, 15 Feb 2025 21:41:10 +1300 Subject: [PATCH] implement packet parser --- src/packet.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/packet.js diff --git a/src/packet.js b/src/packet.js new file mode 100644 index 0000000..bd77060 --- /dev/null +++ b/src/packet.js @@ -0,0 +1,22 @@ +import BufferReader from "./buffer_reader.js"; + +class Packet { + + constructor(header, path, payload) { + this.header = header; + this.path = path; + this.payload = payload; + } + + static fromBytes(bytes) { + const bufferReader = new BufferReader(bytes); + const header = bufferReader.readByte(); + const pathLen = bufferReader.readInt8(); + const path = bufferReader.readBytes(pathLen); + const payload = bufferReader.readRemainingBytes(); + return new Packet(header, path, payload); + } + +} + +export default Packet;