@Override public boolean onWrite(Packet packet, ByteBuffer dst) throws Exception { if (currentPacket == null && !packet.isFlagSet(FLAG_BIND) && packet.dataSize() > 100) { currentPacket = packet; addSequenceId(packet.toByteArray(), sequenceId); sequenceId++; } boolean completed = packet.writeTo(dst); if (completed) { currentPacket = null; } return completed; } }
@Override public boolean onWrite(Packet packet, ByteBuffer dst) throws Exception { if (currentPacket == null && packet.getPacketType() != Packet.Type.BIND && packet.dataSize() > 100) { currentPacket = packet; addSequenceId(packet.toByteArray(), sequenceId); sequenceId++; } boolean completed = packet.writeTo(dst); if (completed) { currentPacket = null; } return completed; } }
@Override public boolean onWrite(Packet packet, ByteBuffer dst) throws Exception { if (currentPacket == null && !packet.isHeaderSet(HEADER_BIND) && packet.dataSize() > 100) { currentPacket = packet; addSequenceId(packet.toByteArray(), sequenceId); sequenceId++; } boolean completed = packet.writeTo(dst); if (completed) { currentPacket = null; } return completed; } }
public static void main(String[] args) { byte[] bytes = new byte[50]; long sequenceId = Long.MAX_VALUE; addHeadTailMarkers(bytes); addSequenceId(bytes, sequenceId); writeLong(bytes, 3, sequenceId); writeLong(bytes, bytes.length - (8 + 3), sequenceId); LOGGER.info(toHexString(bytes)); checkHeadTailMarkers(bytes); } }
public static void main(String[] args) { byte[] bytes = new byte[50]; long sequenceId = Long.MAX_VALUE; addHeadTailMarkers(bytes); addSequenceId(bytes, sequenceId); writeLong(bytes, 3, sequenceId); writeLong(bytes, bytes.length - (8 + 3), sequenceId); LOGGER.info(toHexString(bytes)); checkHeadTailMarkers(bytes); } }
public static void main(String[] args) { byte[] bytes = new byte[50]; long sequenceId = Long.MAX_VALUE; addHeadTailMarkers(bytes); addSequenceId(bytes, sequenceId); writeLong(bytes, 3, sequenceId); writeLong(bytes, bytes.length - (8 + 3), sequenceId); LOGGER.info(toHexString(bytes)); checkHeadTailMarkers(bytes); } }