summaryrefslogtreecommitdiffstats
path: root/src/main/java/derms
diff options
context:
space:
mode:
authorSam Anthony <sam@samanthony.xyz>2024-11-18 11:05:28 -0500
committerSam Anthony <sam@samanthony.xyz>2024-11-18 11:05:28 -0500
commit65f48a512ad63802a2031e2452f18653bf770c4c (patch)
tree435a63236516a34f1a727adf2b1013645087722a /src/main/java/derms
parenta4ff53302f3ec3f6d8bc52afa6a594acfeeb045f (diff)
downloadsoen423-65f48a512ad63802a2031e2452f18653bf770c4c.zip
rmulticast.ReceivedSet.Entry: add isBefore/After methods
Diffstat (limited to 'src/main/java/derms')
-rw-r--r--src/main/java/derms/net/rmulticast/ReceivedSet.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/main/java/derms/net/rmulticast/ReceivedSet.java b/src/main/java/derms/net/rmulticast/ReceivedSet.java
index 16b586b..5bd3d85 100644
--- a/src/main/java/derms/net/rmulticast/ReceivedSet.java
+++ b/src/main/java/derms/net/rmulticast/ReceivedSet.java
@@ -47,7 +47,7 @@ class ReceivedSet<T extends MessagePayload> {
Message<T> peekOldest() {
Entry<T> oldest = null;
for (Entry<T> e : received.values())
- if (oldest == null || e.timestamp.isBefore(oldest.timestamp))
+ if (oldest == null || e.isBefore(oldest))
oldest = e;
if (oldest == null)
return null;
@@ -57,7 +57,7 @@ class ReceivedSet<T extends MessagePayload> {
Message<T> mostRecentSentBy(InetAddress member) throws NoSuchElementException {
Entry<T> recent = null;
for (Entry<T> e : received.values())
- if (e.msg.isSentBy(member) && (recent == null || e.timestamp.isAfter(recent.timestamp)))
+ if (e.msg.isSentBy(member) && (recent == null || e.isAfter(recent)))
recent = e;
if (recent == null)
throw new NoSuchElementException("no message from " + member + " in received list.");
@@ -82,6 +82,14 @@ class ReceivedSet<T extends MessagePayload> {
this.timestamp = Instant.now();
}
+ private boolean isBefore(Entry<T> other) {
+ return this.timestamp.isBefore(other.timestamp);
+ }
+
+ private boolean isAfter(Entry<T> other) {
+ return this.timestamp.isAfter(other.timestamp);
+ }
+
@Override
public int hashCode() {
return msg.hashCode();