summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSam Anthony <sam@samanthony.xyz>2024-11-15 10:20:44 -0500
committerSam Anthony <sam@samanthony.xyz>2024-11-15 10:20:44 -0500
commit99878058ebffc848fa723b2d96367519483901a0 (patch)
tree2c7f9193060b66baa405ccc5737446fb8fe37ec9 /src
parentd333754c8d4f8af9534300e457d026174a69cb65 (diff)
downloadsoen423-99878058ebffc848fa723b2d96367519483901a0.zip
reliable multicast: Message.equals()
Diffstat (limited to 'src')
-rw-r--r--src/main/java/derms/net/rmulticast/Message.java12
-rw-r--r--src/main/java/derms/net/rmulticast/MessageID.java10
2 files changed, 22 insertions, 0 deletions
diff --git a/src/main/java/derms/net/rmulticast/Message.java b/src/main/java/derms/net/rmulticast/Message.java
index 6df283e..ab2d9ac 100644
--- a/src/main/java/derms/net/rmulticast/Message.java
+++ b/src/main/java/derms/net/rmulticast/Message.java
@@ -24,4 +24,16 @@ class Message<T extends Serializable & Hashable> implements Serializable {
public int hashCode() {
return payload.hash();
}
+
+ @Override
+ public boolean equals(Object obj) {
+ if (obj == null)
+ return false;
+ if (obj.getClass() != this.getClass())
+ return false;
+ Message<?> other = (Message<?>) obj;
+ if (other.payload.getClass() != this.payload.getClass())
+ return false;
+ return other.id().equals(this.id());
+ }
}
diff --git a/src/main/java/derms/net/rmulticast/MessageID.java b/src/main/java/derms/net/rmulticast/MessageID.java
index e6824ad..5098fed 100644
--- a/src/main/java/derms/net/rmulticast/MessageID.java
+++ b/src/main/java/derms/net/rmulticast/MessageID.java
@@ -11,4 +11,14 @@ class MessageID {
public int hashCode() {
return id;
}
+
+ @Override
+ public boolean equals(Object obj) {
+ if (obj == null)
+ return false;
+ if (obj.getClass() != this.getClass())
+ return false;
+ MessageID other = (MessageID) obj;
+ return other.id == this.id;
+ }
}