diff options
| author | Sam Anthony <sam@samanthony.xyz> | 2024-11-15 11:48:12 -0500 |
|---|---|---|
| committer | Sam Anthony <sam@samanthony.xyz> | 2024-11-15 11:48:12 -0500 |
| commit | f979fa5f089a1294bb49b1250d41a20248dbd8b9 (patch) | |
| tree | 00941fa9e7a7222b69ec6135827ec7acbc1d4a8e /src/main/java/derms/net/rmulticast/Receive.java | |
| parent | 3ebcee7b335d0e23915f3ec8e15c9995cd8d3004 (diff) | |
| download | soen423-f979fa5f089a1294bb49b1250d41a20248dbd8b9.zip | |
reliable multicast: receive()
Diffstat (limited to 'src/main/java/derms/net/rmulticast/Receive.java')
| -rw-r--r-- | src/main/java/derms/net/rmulticast/Receive.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/main/java/derms/net/rmulticast/Receive.java b/src/main/java/derms/net/rmulticast/Receive.java index c8467c2..c1965ed 100644 --- a/src/main/java/derms/net/rmulticast/Receive.java +++ b/src/main/java/derms/net/rmulticast/Receive.java @@ -18,14 +18,16 @@ class Receive<T extends Serializable & Hashable> implements Runnable { private final Set<MessageID> negativeAcks; private final ReceivedSet<T> received; private final BlockingQueue<Message<T>> retransmissions; + private final BlockingQueue<Message<T>> delivered; private final Logger log; - Receive(ConcurrentMulticastSocket inSock, Set<MessageID> positiveAcks, Set<MessageID> negativeAcks, ReceivedSet<T> received, BlockingQueue<Message<T>> retransmissions) { + Receive(ConcurrentMulticastSocket inSock, Set<MessageID> positiveAcks, Set<MessageID> negativeAcks, ReceivedSet<T> received, BlockingQueue<Message<T>> retransmissions, BlockingQueue<Message<T>> delivered) { this.inSock = inSock; this.positiveAcks = positiveAcks; this.negativeAcks = negativeAcks; this.received = received; this.retransmissions = retransmissions; + this.delivered = delivered; this.log = Logger.getLogger(this.getClass().getName()); } @@ -47,6 +49,7 @@ class Receive<T extends Serializable & Hashable> implements Runnable { private void receive(Message<T> msg) { positiveAcks.add(msg.id()); received.add(msg); + delivered.add(msg); negativeAcks.remove(msg.id()); retransmissions.remove(msg); |