@Override public void funnel(OFBsnTlvStatusVer13 message, PrimitiveSink sink) { // fixed value property type = 0x61 sink.putShort((short) 0x61); // fixed value property length = 5 sink.putShort((short) 0x5); OFBsnStatusSerializerVer13.putTo(message.value, sink); }
@Override public void write(ByteBuf bb, OFBsnTlvStatusVer13 message) { // fixed value property type = 0x61 bb.writeShort((short) 0x61); // fixed value property length = 5 bb.writeShort((short) 0x5); OFBsnStatusSerializerVer13.writeTo(bb, message.value); }
@Override public OFBsnTlvStatus readFrom(ByteBuf bb) throws OFParseError { int start = bb.readerIndex(); // fixed value property type == 0x61 short type = bb.readShort(); if (type != (short) 0x61) throw new OFParseError("Wrong type: Expected=0x61(0x61), got=" + type); int length = U16.f(bb.readShort()); if (length != 5) throw new OFParseError("Wrong length: Expected=5(5), got=" + length); if (bb.readableBytes() + (bb.readerIndex() - start) < length) { // Buffer does not have all data yet bb.readerIndex(start); return null; } if (logger.isTraceEnabled()) logger.trace("readFrom - length={}", length); OFBsnStatus value = OFBsnStatusSerializerVer13.readFrom(bb); OFBsnTlvStatusVer13 bsnTlvStatusVer13 = new OFBsnTlvStatusVer13(value); if (logger.isTraceEnabled()) logger.trace("readFrom - read={}", bsnTlvStatusVer13); return bsnTlvStatusVer13; }