- /** The time of the post (in milliseconds since Jan 1, 1970 UTC). */
- private volatile long time;
-
- /** The text of the post. */
- private volatile String text;
-
- /**
- * Creates a new post.
- *
- * @param id
- * The ID of the post
- */
- public Post(String id) {
- this(id, null, 0, null);
- }
-
- /**
- * Creates a new post.
- *
- * @param sone
- * The Sone this post belongs to
- * @param text
- * The text of the post
- */
- public Post(Sone sone, String text) {
- this(sone, System.currentTimeMillis(), text);
- }
-
- /**
- * Creates a new post.
- *
- * @param sone
- * The Sone this post belongs to
- * @param time
- * The time of the post (in milliseconds since Jan 1, 1970 UTC)
- * @param text
- * The text of the post
- */
- public Post(Sone sone, long time, String text) {
- this(UUID.randomUUID().toString(), sone, time, text);
- }
+ @Override
+ public boolean apply(Post post) {
+ return (post != null) && (post.getTime() <= System.currentTimeMillis());
+ }