X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fdata%2FReply.java;h=f6e4a2cf2dfc84d9a1f820f7df56b38320de28aa;hb=2f5fb64f08f66f2ea4f01c0b9eff685a3939624a;hp=780fe692ecc0b94cd4c697b76a322a6fcec2ea53;hpb=bd84cd0b9cba986052fd8e2eac16e86825814fc6;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/data/Reply.java b/src/main/java/net/pterodactylus/sone/data/Reply.java index 780fe69..f6e4a2c 100644 --- a/src/main/java/net/pterodactylus/sone/data/Reply.java +++ b/src/main/java/net/pterodactylus/sone/data/Reply.java @@ -1,5 +1,5 @@ /* - * Sone - Reply.java - Copyright © 2011 David Roden + * Sone - Reply.java - Copyright © 2011–2012 David Roden * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -20,7 +20,7 @@ package net.pterodactylus.sone.data; import java.util.Comparator; import java.util.UUID; -import net.pterodactylus.util.filter.Filter; +import com.google.common.base.Predicate; /** * Abstract base class for all replies. @@ -45,13 +45,13 @@ public abstract class Reply> { }; /** Filter for replies with timestamps from the future. */ - public static final Filter> FUTURE_REPLY_FILTER = new Filter>() { + public static final Predicate> FUTURE_REPLY_FILTER = new Predicate>() { /** * {@inheritDoc} */ @Override - public boolean filterObject(Reply reply) { + public boolean apply(Reply reply) { return reply.getTime() <= System.currentTimeMillis(); } @@ -69,6 +69,9 @@ public abstract class Reply> { /** The text of the reply. */ private volatile String text; + /** Whether the reply is known. */ + private volatile boolean known; + /** * Creates a new reply with the given ID. * @@ -187,6 +190,28 @@ public abstract class Reply> { return (T) this; } + /** + * Returns whether this reply is known. + * + * @return {@code true} if this reply is known, {@code false} otherwise + */ + public boolean isKnown() { + return known; + } + + /** + * Sets whether this reply is known. + * + * @param known + * {@code true} if this reply is known, {@code false} otherwise + * @return This reply + */ + @SuppressWarnings("unchecked") + public T setKnown(boolean known) { + this.known = known; + return (T) this; + } + // // OBJECT METHODS //