From 534ada874d128fee1b9a7e11cf625d9ec05b28cd Mon Sep 17 00:00:00 2001 From: Thorinwasher Date: Wed, 9 Oct 2024 18:00:45 +0200 Subject: [PATCH] Implement `equals`and `hashCode` methods for material specifiers --- .../config/material/BukkitMaterialSpecifier.java | 13 +++++++++++++ .../config/material/BukkitTagSpecifier.java | 14 ++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/src/main/java/net/knarcraft/stargate/config/material/BukkitMaterialSpecifier.java b/src/main/java/net/knarcraft/stargate/config/material/BukkitMaterialSpecifier.java index a761d5c..b0b8ff5 100644 --- a/src/main/java/net/knarcraft/stargate/config/material/BukkitMaterialSpecifier.java +++ b/src/main/java/net/knarcraft/stargate/config/material/BukkitMaterialSpecifier.java @@ -33,4 +33,17 @@ public class BukkitMaterialSpecifier implements MaterialSpecifier { return Set.of(this.material); } + @Override + public boolean equals(Object other) { + if (!(other instanceof BukkitMaterialSpecifier bukkitMaterialSpecifier)) { + return false; + } + return this.material == bukkitMaterialSpecifier.material; + } + + @Override + public int hashCode() { + return material.hashCode(); + } + } diff --git a/src/main/java/net/knarcraft/stargate/config/material/BukkitTagSpecifier.java b/src/main/java/net/knarcraft/stargate/config/material/BukkitTagSpecifier.java index 8e4f6f4..5c38306 100644 --- a/src/main/java/net/knarcraft/stargate/config/material/BukkitTagSpecifier.java +++ b/src/main/java/net/knarcraft/stargate/config/material/BukkitTagSpecifier.java @@ -32,4 +32,18 @@ public class BukkitTagSpecifier implements MaterialSpecifier { return this.tag.getValues(); } + + @Override + public boolean equals(Object other) { + if (!(other instanceof BukkitTagSpecifier bukkitMaterialSpecifier)) { + return false; + } + return this.tag == bukkitMaterialSpecifier.tag; + } + + @Override + public int hashCode() { + return tag.hashCode(); + } + }