diff options
| author | Sam Anthony <sam@samanthony.xyz> | 2024-11-15 11:39:46 -0500 |
|---|---|---|
| committer | Sam Anthony <sam@samanthony.xyz> | 2024-11-15 11:39:46 -0500 |
| commit | 3ebcee7b335d0e23915f3ec8e15c9995cd8d3004 (patch) | |
| tree | 21de4fb61fc7adbf1cea7c8f4705f08132787d38 /src/main/java/derms/net/rmulticast/ReceivedSet.java | |
| parent | ed304eca556ff4780cbcc8b2615ebc6d945d46ae (diff) | |
| download | soen423-3ebcee7b335d0e23915f3ec8e15c9995cd8d3004.zip | |
reliable multicast: Receive
Diffstat (limited to 'src/main/java/derms/net/rmulticast/ReceivedSet.java')
| -rw-r--r-- | src/main/java/derms/net/rmulticast/ReceivedSet.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/main/java/derms/net/rmulticast/ReceivedSet.java b/src/main/java/derms/net/rmulticast/ReceivedSet.java new file mode 100644 index 0000000..339a714 --- /dev/null +++ b/src/main/java/derms/net/rmulticast/ReceivedSet.java @@ -0,0 +1,25 @@ +package derms.net.rmulticast; + +import java.io.Serializable; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; + +class ReceivedSet<T extends Serializable & Hashable> { + private final Set<Message<T>> received; + + ReceivedSet() { + this.received = new ConcurrentHashMap<Message<T>, Void>().keySet(); + } + + void add(Message<T> e) { + received.add(e); + } + + // TODO: faster search. + boolean contains(MessageID mid) { + for (Message<T> msg : received) + if (msg.id().equals(mid)) + return true; + return false; + } +} |