X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ftext%2FLinkPart.java;h=f516f8715f262bdf100cd5ad0a2990f6a2c8c6e8;hb=852bb107b491884ed09a1a223c67ea05a5de73b9;hp=f531bab4aca213db5adaf313185c0615d00b7acf;hpb=6e9a43ccd93ae125720547c0fe421dc81a54ba90;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/text/LinkPart.java b/src/main/java/net/pterodactylus/sone/text/LinkPart.java index f531bab..f516f87 100644 --- a/src/main/java/net/pterodactylus/sone/text/LinkPart.java +++ b/src/main/java/net/pterodactylus/sone/text/LinkPart.java @@ -17,6 +17,8 @@ package net.pterodactylus.sone.text; +import static com.google.common.base.Objects.equal; + /** * {@link Part} implementation that can hold a link. A link contains of three * attributes: the link itself, the text that is shown instead of the link, and @@ -85,18 +87,37 @@ public class LinkPart implements Part { return title; } + @Override + public boolean isPlainText() { + return false; + } + + @Override + public boolean isFreenetLink() { + return false; + } + // // PART METHODS // - /** - * Returns the text of this part. - * - * @return The text of this part - */ @Override public String getText() { return text; } + @Override + public int hashCode() { + return getLink().hashCode() ^ (getTitle().hashCode() << 16) ^ getText().hashCode(); + } + + @Override + public boolean equals(Object object) { + if (!(object instanceof LinkPart)) { + return false; + } + LinkPart linkPart = (LinkPart) object; + return equal(getLink(), linkPart.getLink()) && equal(getText(), linkPart.getText()) && equal(getTitle(), linkPart.getTitle()); + } + }