add kdoc for Post.kt

This commit is contained in:
InsanusMokrassar 2019-11-01 11:27:58 +06:00
parent f241ed55e0
commit febf442faa

View File

@ -9,10 +9,17 @@ typealias PostId = String
typealias PostContents = List<Content> typealias PostContents = List<Content>
typealias RegisteredPostContents = List<RegisteredContent> typealias RegisteredPostContents = List<RegisteredContent>
/**
* Base interface for creating of new post. Usually, it is just [SimplePost] instance
*/
interface Post { interface Post {
val content: PostContents val content: PostContents
} }
/**
* Root entity of whole system. Can be retrieved from [com.insanusmokrassar.postssystem.core.api.ReadPostsAPI] by
* getting and created in [com.insanusmokrassar.postssystem.core.api.WritePostsAPI] by inserting of [Post] instance
*/
interface RegisteredPost : Post { interface RegisteredPost : Post {
val id: PostId val id: PostId
@ -22,10 +29,17 @@ interface RegisteredPost : Post {
val modificationDate: DateTime val modificationDate: DateTime
} }
/**
* Base and currently (1st Nov 2019) single realisation of [Post]. There is [SimpleRegisteredPost] which is technically
* is [Post] too, but it is not direct [Post] realisation
*/
data class SimplePost( data class SimplePost(
override val content: PostContents override val content: PostContents
) : Post ) : Post
/**
* Base and currently (1st Nov 2019) single realisation of [RegisteredPost]
*/
data class SimpleRegisteredPost( data class SimpleRegisteredPost(
override val id: PostId, override val id: PostId,
override val content: RegisteredPostContents, override val content: RegisteredPostContents,