+ * Creates a simple field set from the given post.
+ *
+ * @param post
+ * The post to encode
+ * @param prefix
+ * The prefix for the field names (may be empty but not
+ * {@code null})
+ * @param includeReplies
+ * {@code true} to include replies, {@code false} to not include
+ * replies
+ * @return The simple field set containing the post
+ */
+ protected SimpleFieldSet encodePost(Post post, String prefix, boolean includeReplies) {
+ SimpleFieldSetBuilder postBuilder = new SimpleFieldSetBuilder();
+
+ postBuilder.put(prefix + "ID", post.getId());
+ postBuilder.put(prefix + "Sone", post.getSone().getId());
+ if (post.getRecipient() != null) {
+ postBuilder.put(prefix + "Recipient", post.getRecipient().getId());
+ }
+ postBuilder.put(prefix + "Time", post.getTime());
+ postBuilder.put(prefix + "Text", post.getText());
+ postBuilder.put(encodeLikes(core.getLikes(post), prefix + "Likes."));
+
+ if (includeReplies) {
+ List<Reply> replies = core.getReplies(post);
+ postBuilder.put(encodeReplies(replies, prefix));
+ }
+
+ return postBuilder.get();
+ }
+
+ /**