-@get:JvmName("newestFirst")
-val newestFirst: Comparator<Post> = comparing(Post::getTime).reversed()
+@get:JvmName("newestPostFirst")
+val newestPostFirst: Comparator<Post> = comparing(Post::getTime).reversed()
+
+data class PostShell(val id: String, val soneId: String, val recipientId: String?, val time: Long, val text: String) {
+
+ fun build(postBuilder: PostBuilder) =
+ postBuilder.withId(id).from(soneId).let { if (recipientId != null) it.to(recipientId) else it }.withTime(time).withText(text).build()
+
+}
+
+fun Post.toShell() = PostShell(id, sone!!.id, recipient.orNull()?.id, time, text)