- /**
- * Adds a reply to this post. The reply will not be added if its
- * {@link Reply#getPost() post} is not equal to this post.
- *
- * @param reply
- * The reply to add
- */
- public void addReply(Reply reply) {
- if (reply.getPost().equals(this)) {
- replies.add(reply);
- }
- }
-
- /**
- * Removes a reply from this post.
- *
- * @param reply
- * The reply to remove
- */
- public void removeReply(Reply reply) {
- if (reply.getPost().equals(this)) {
- replies.remove(reply);
- }
- }
-
- //
- // OBJECT METHODS
- //
-
- /**
- * {@inheritDoc}
- */
- @Override
- public int hashCode() {
- return id.hashCode() ^ sone.hashCode() ^ (int) (time >> 32) ^ (int) (time & 0xffffffff) ^ text.hashCode();
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public boolean equals(Object object) {
- if (!(object instanceof Post)) {
- return false;
- }
- Post post = (Post) object;
- return post.id.equals(id) && post.sone.equals(sone) && (post.time == time) && post.text.equals(text);
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public String toString() {
- return getClass().getName() + "[id=" + id + ",sone=" + sone + ",time=" + time + ",text=" + text + ",replies(" + replies.size() + ")]";
- }