-public class Post {
-
- /** The GUID of the post. */
- private final UUID id;
-
- /** The Sone this post belongs to. */
- private volatile Sone sone;
-
- /** 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);
- }
-
- /**
- * Creates a new post.
- *
- * @param id
- * The ID of the 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(String id, Sone sone, long time, String text) {
- this.id = UUID.fromString(id);
- this.sone = sone;
- this.time = time;
- this.text = text;
- }