public void addPacketToRetransmitMap(Integer packetId, Packet packet, byte[] sourcePayload) { retransmitMap.put(packetId, new RetransmitItem(packet, sourcePayload)); }
retransmitMap.forEach((itkey, item)-> { if (item.nextRetransmitTime.isBefore(Instant.now())) { item.updateNextRetransmitTime(); if (item.type == PacketTypes.DATA) { if (item.packet == null) { retransmitMap.forEach((itkey, item)-> { if (item.nextRetransmitTime.isBefore(Instant.now())) { item.updateNextRetransmitTime(); if (item.type != PacketTypes.DATA) { if (item.packet != null) {
public RetransmitItem(Packet packet, byte[] sourcePayload) { this.packet = packet; this.sourcePayload = sourcePayload; this.retransmitCounter = 0; this.receiverNodeId = packet.receiverNodeId; this.packetId = packet.packetId; this.type = packet.type; updateNextRetransmitTime(); } public void updateNextRetransmitTime() {