Rework the text parser.
[Sone.git] / src / main / java / net / pterodactylus / sone / text / LinkPart.java
index de7cb25..f516f87 100644 (file)
@@ -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,6 +87,16 @@ public class LinkPart implements Part {
                return title;
        }
 
+       @Override
+       public boolean isPlainText() {
+               return false;
+       }
+
+       @Override
+       public boolean isFreenetLink() {
+               return false;
+       }
+
        //
        // PART METHODS
        //
@@ -94,4 +106,18 @@ public class LinkPart implements Part {
                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());
+       }
+
 }