@Override public void toBytes(ByteBuf buf) { buf.writeInt(xCoord); buf.writeInt(yCoord); buf.writeInt(zCoord); ByteBufUtils.writeTag(buf, tag); }
@Override public void toBytes(ByteBuf buffer) { buffer.writeInt(this.owner.length()); buffer.writeBytes(this.owner.getBytes()); buffer.writeInt(this.notifier.length()); buffer.writeBytes(this.notifier.getBytes()); }
@Override protected void encode(ChannelHandlerContext ctx, TransportFrame frame, ByteBuf out) throws Exception { out.writeByte('E'); out.writeByte('Q'); out.writeInt(frame.version().id); out.writeLong(frame.request()); if (frame instanceof StreamableTransportFrame) { // message request // skip size header int sizePos = out.writerIndex(); out.writerIndex(out.writerIndex() + 4); try (StreamOutput output = streamService.output(out)) { Streamable message = ((StreamableTransportFrame) frame).message(); output.writeClass(message.getClass()); output.writeStreamable(message); } int size = out.writerIndex() - sizePos - 4; out.setInt(sizePos, size); } else { // ping request out.writeInt(0); } }
/* * ID 0: client changed xcoord in interface * ID 1: client changed ycoord in interface * ID 2: sync whether the machine is running * ID 3: sync Mode * ID 4: jam reset */ @Override public void writeDataToNetwork(ByteBuf out, byte id) { if (id == 0) out.writeInt(this.laserX); else if (id == 1) out.writeInt(this.laserZ); else if (id == 2) out.writeBoolean(isRunning); else if (id == 3) out.writeInt(mode.ordinal()); }
private static void writeBlockArrayToBuf(ByteBuf buf, BlockMeta[] array) { buf.writeInt(array.length); for (BlockMeta block : array) { buf.writeInt(Block.blockRegistry.getIDForObject(block.getBlock())); buf.writeInt(block.getMeta()); } }
public ByteBuf encode(NettyMessage msg) throws Exception { ByteBuf sendBuf = Unpooled.buffer(); sendBuf.writeInt((msg.getHeader().getCrcCode())); sendBuf.writeInt((msg.getHeader().getLength())); sendBuf.writeLong((msg.getHeader().getSessionID())); sendBuf.writeByte((msg.getHeader().getType())); sendBuf.writeByte((msg.getHeader().getPriority())); sendBuf.writeInt((msg.getHeader().getAttachment().size())); String key = null; byte[] keyArray = null; Object value = null; for (Map.Entry<String, Object> param : msg.getHeader().getAttachment().entrySet()) { key = param.getKey(); keyArray = key.getBytes("UTF-8"); sendBuf.writeInt(keyArray.length); sendBuf.writeBytes(keyArray); value = param.getValue(); marshallingEncoder.encode(value, sendBuf); } key = null; keyArray = null; value = null; if (msg.getBody() != null) { marshallingEncoder.encode(msg.getBody(), sendBuf); } else sendBuf.writeInt(0); sendBuf.setInt(4, sendBuf.readableBytes()); return sendBuf; }
public static void serialiseView(View view, ByteBuf buf) { buf.writeInt(view.id); buf.writeInt(view.members.size()); for (Address addr : view.members) { AddressSerializer.INSTANCE.toBinary(addr, buf); } }
@Override public void writeBytes(ChannelHandlerContext ctx, ByteBuf bytes) { bytes.writeInt(ropeEntID); bytes.writeInt(x); bytes.writeInt(y); bytes.writeInt(z); }
@Override public void write(ByteBuf bb, OFFlowStatsEntryVer10 message) { int startIndex = bb.writerIndex(); // length is length of variable message, will be updated at the end int lengthIndex = bb.writerIndex(); bb.writeShort(U16.t(0)); message.tableId.writeByte(bb); // pad: 1 bytes bb.writeZero(1); message.match.writeTo(bb); bb.writeInt(U32.t(message.durationSec)); bb.writeInt(U32.t(message.durationNsec)); bb.writeShort(U16.t(message.priority)); bb.writeShort(U16.t(message.idleTimeout)); bb.writeShort(U16.t(message.hardTimeout)); // pad: 6 bytes bb.writeZero(6); bb.writeLong(message.cookie.getValue()); bb.writeLong(message.packetCount.getValue()); bb.writeLong(message.byteCount.getValue()); ChannelUtils.writeList(bb, message.actions); // update length field int length = bb.writerIndex() - startIndex; bb.setShort(lengthIndex, length); }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(x); buf.writeInt(y); buf.writeInt(z); buf.writeInt(data); }
@Test public void testDecode() { ByteBuf buffer = Unpooled.buffer(); // header buffer.writeByte(0); buffer.writeShort(1); buffer.writeByte(Integer.valueOf(240).byteValue()); buffer.writeInt(44); buffer.writeLong(1); buffer.writeLong(2); // attributes buffer.writeShort(4); buffer.writeInt(4); buffer.writeBytes("luo!".getBytes()); buffer.writeShort(5); buffer.writeInt(4); buffer.writeBytes("luo!".getBytes()); MockRelayMessage message = (MockRelayMessage) MessageFactory.getInstance().createMessage(buffer); Assert.assertEquals(message.version(), GenericMessage.VERSION); Assert.assertEquals(message.length(), Unsigned32.get(44L)); Assert.assertEquals(message.flag().get().isGroup(), true); Assert.assertEquals(message.flag().get().isRequest(), true); Assert.assertEquals(message.flag().get().isProxiable(), true); Assert.assertEquals(message.flag().get().isError(), true); assertEquals(message.code(), Unsigned16.get(1)); assertEquals(message.hopByHop(), Integer64.get(1L)); assertEquals(message.endToEnd(), Integer64.get(2L)); Assert.assertEquals(message.attribute(Unsigned16.get(4)).length(), Unsigned32.get(4L)); assertEquals(message.attribute(Unsigned16.get(4)).data().get(), "luo!"); Assert.assertEquals(message.attribute(Unsigned16.get(5)).length(), Unsigned32.get(4L)); assertEquals(message.attribute(Unsigned16.get(5)).data().get(), "luo!"); }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(x); buf.writeInt(y); buf.writeInt(z); buf.writeFloat(storedEnergy); }
@Override public void encodeInto(ChannelHandlerContext ctx, ByteBuf buffer) throws IOException { buffer.writeInt(data.length); buffer.writeInt(signature.length); buffer.writeBytes(data); buffer.writeBytes(signature); }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(posX); buf.writeInt(posY); buf.writeInt(posZ); buf.writeInt(data.size()); for (int i = 0; i < data.size(); i++) { Object obj = data.get(i); if (obj instanceof Character) { buf.writeByte(0x00); buf.writeChar((Character) obj); } else if (obj instanceof String) { buf.writeByte(0x01); writeString(buf, (String) obj); } else if (obj instanceof Float) { buf.writeByte(0x02); buf.writeFloat((Float) obj); } else if (obj instanceof Double) { buf.writeByte(0x03); buf.writeDouble((Double) obj); } else if (obj instanceof Byte) { buf.writeByte(0x04); buf.writeByte((Byte) obj); } else if (obj instanceof Long) { buf.writeByte(0x05); buf.writeLong((Long) obj); } else { buf.writeByte(0x0F); buf.writeInt((Integer) obj); } } }
private ByteBuf encodeResponse(ResponseSocketBlock resMsg) { ByteBuf bodyBuf = ByteBufAllocator.DEFAULT.heapBuffer(); // // * --------------------------------------------------------bytes =8 // * byte[2] status 响应状态 bodyBuf.writeShort(resMsg.getStatus()); // * byte[2] serializeType-(attr-index) 序列化策略 bodyBuf.writeShort(resMsg.getSerializeType()); // * byte[2] returnType-(attr-index) 返回类型 bodyBuf.writeShort(resMsg.getReturnType()); // * byte[2] returnData-(attr-index) 返回数据 bodyBuf.writeShort(resMsg.getReturnData()); // * --------------------------------------------------------bytes =1 ~ 1021 // * byte[1] optionCount 选项参数总数 int[] optionMapping = resMsg.getOptions(); bodyBuf.writeByte(optionMapping.length); for (int i = 0; i < optionMapping.length; i++) { // * byte[4] ptype-0-(attr-index,attr-index) 选项参数1 // * byte[4] ptype-1-(attr-index,attr-index) 选项参数2 bodyBuf.writeInt(optionMapping[i]); } // * --------------------------------------------------------bytes =6 ~ 8192 // * byte[2] attrPool-size (Max = 2047) 池大小 0x07FF int[] poolData = resMsg.getPoolData(); bodyBuf.writeShort(poolData.length); for (int i = 0; i < poolData.length; i++) { // * byte[4] ptype-0-(attr-index,attr-index) 属性1大小 // * byte[4] ptype-1-(attr-index,attr-index) 属性2大小 bodyBuf.writeInt(poolData[i]); } // * --------------------------------------------------------bytes =n // * dataBody 数据内容 resMsg.fillTo(bodyBuf); return bodyBuf; }
@Override public void encodeInto(ChannelHandlerContext ctx, ByteBuf buffer) { buffer.writeInt(tile.xCoord); buffer.writeInt(tile.yCoord); buffer.writeInt(tile.zCoord); tile.packetGuiFill(buffer); }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(elementName.length()); buf.writeBytes(elementName.getBytes()); buf.writeInt(elementText.length()); buf.writeBytes(elementText.getBytes()); }
@Override public void write(ByteBuf bb) { writeString(bb, uuidString); bb.writeInt(time); bb.writeInt(action); writeString(bb, teleportString); }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(pos.getX()); buf.writeInt(pos.getY()); buf.writeInt(pos.getZ()); ByteBufUtils.writeItemStack(buf, activeItem); MagicAmounts.writeAmounts(buf, remaining); }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(entityID); buf.writeInt(componentID); buf.writeBoolean(ident != null); if (ident != null) ident.serializeBuf(buf); buf.writeFloat(progress); }
@Override public void encodeInto(ChannelHandlerContext ctx, ByteBuf buffer) { buffer.writeInt(playerNames.length); for (int i = 0; i < playerNames.length; i++) { ByteBufUtils.writeUTF8String(buffer, playerNames[i]); buffer.writeInt(races[i]); } }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(this.x); buf.writeInt(this.y); buf.writeInt(this.z); ByteBufUtils.writeUTF8String(buf, this.player); }
@Override public void writeTo(ByteBuf buffer, Side side) { ByteBufUtils.writeUTF8String(buffer, host); buffer.writeInt(x); buffer.writeInt(y); buffer.writeInt(z); ByteBufUtils.writeUTF8String(buffer, ident); }
public ByteBuf encode(ByteBuf buf, BlockChangeMessage message) throws IOException { buf.writeInt(message.getX()); buf.writeByte(message.getY()); buf.writeInt(message.getZ()); ByteBufUtils.writeVarInt(buf, message.getType()); buf.writeByte(message.getMetadata()); return buf; }
@Override public void encodeInto(ChannelHandlerContext ctx, ByteBuf buffer) { buffer.writeInt(dim); buffer.writeInt(x); buffer.writeInt(y); buffer.writeInt(z); buffer.writeDouble(rotation); buffer.writeDouble(scale); }
// api public PacketSwapSlots(int slotA, int slotB) { ByteBuf data = Unpooled.buffer(); data.writeInt(this.getPacketID()); data.writeInt(this.slotA = slotA); data.writeInt(this.slotB = slotB); this.configureWrite(data); }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(x); buf.writeInt(y); buf.writeInt(z); buf.writeInt(_freq); buf.writeBoolean(_isPublic); buf.writeByte(_state); }
@Override public void toBytes(ByteBuf dataStream) { dataStream.writeInt(coord4D.xCoord); dataStream.writeInt(coord4D.yCoord); dataStream.writeInt(coord4D.zCoord); dataStream.writeInt(coord4D.dimensionId); dataStream.writeInt(mouseButton); dataStream.writeInt(tankId); }
@Override public void toBytes(ByteBuf buf) { buf.writeInt(color); for (int i = 0; i < 16; i++) { for (int i2 = 1; i2 < 5; i++) { int i2U = i2 == 0 ? 1 : i2 * 4; buf.writeInt(Integer.getInteger(this.screen[i].substring(i2U, i2U + 4))); } } }
@Override public void encode(ByteBuf buf) { Codec.writeVarInt32(buf, this.entityId); buf.writeInt((int) this.location.getX() * 32); buf.writeInt((int) this.location.getY() * 32); buf.writeInt((int) this.location.getZ() * 32); buf.writeShort((int) this.count); }