X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fxdcc%2Fdata%2FPack.java;h=c41694fc952be7ea3dd2f601b589fceca633c933;hb=db7e9612fa189cee9f4b9086e00d87c4d6c58bbf;hp=1ec5a093a9290d326dff41ec1d04e945b3e98bce;hpb=6721687a11d53eeda4bfeea4ada2f5caffbcad7e;p=xudocci.git diff --git a/src/main/java/net/pterodactylus/xdcc/data/Pack.java b/src/main/java/net/pterodactylus/xdcc/data/Pack.java index 1ec5a09..c41694f 100644 --- a/src/main/java/net/pterodactylus/xdcc/data/Pack.java +++ b/src/main/java/net/pterodactylus/xdcc/data/Pack.java @@ -17,6 +17,8 @@ package net.pterodactylus.xdcc.data; +import static com.google.common.base.Preconditions.checkNotNull; + /** * A pack is a downloadable file offered by a {@link Bot}. * @@ -44,9 +46,9 @@ public class Pack { * The name of the pack */ public Pack(String id, String size, String name) { - this.id = id; - this.size = size; - this.name = name; + this.id = checkNotNull(id, "id must not be null"); + this.size = checkNotNull(size, "size must not be null"); + this.name = checkNotNull(name, "name must not be null"); } // @@ -83,4 +85,22 @@ public class Pack { return name; } + // + // OBJECT METHODS + // + + @Override + public boolean equals(Object object) { + if (!(object instanceof Pack)) { + return false; + } + Pack pack = (Pack) object; + return id().equals(pack.id()) && name().equals(pack.name()); + } + + @Override + public int hashCode() { + return id().hashCode() ^ name().hashCode(); + } + }