From a77e972b82bbc4310984a0365691d234fe9baea1 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sun, 4 Apr 2021 12:44:55 +0530 Subject: [PATCH] api: add models for post details Signed-off-by: Harsh Shandilya --- .../dev/msfjarvis/lobsters/model/Comment.kt | 20 ++++++++++++++++++ .../lobsters/model/LobstersPostDetails.kt | 21 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 api/src/main/java/dev/msfjarvis/lobsters/model/Comment.kt create mode 100644 api/src/main/java/dev/msfjarvis/lobsters/model/LobstersPostDetails.kt diff --git a/api/src/main/java/dev/msfjarvis/lobsters/model/Comment.kt b/api/src/main/java/dev/msfjarvis/lobsters/model/Comment.kt new file mode 100644 index 00000000..431788b3 --- /dev/null +++ b/api/src/main/java/dev/msfjarvis/lobsters/model/Comment.kt @@ -0,0 +1,20 @@ +package dev.msfjarvis.lobsters.model + +import com.squareup.moshi.Json +import com.squareup.moshi.JsonClass + +@JsonClass(generateAdapter = true) +class Comment( + @Json(name = "short_id") val shortId: String, + @Json(name = "short_id_url") val shortIdUrl: String, + @Json(name = "created_at") val createdAt: String, + @Json(name = "updated_at") val updatedAt: String, + @Json(name = "is_deleted") val isDeleted: Boolean, + @Json(name = "is_moderated") val isModerated: Boolean, + val score: Long, + val flags: Long, + val comment: String, + val url: String, + @Json(name = "indent_level") val indentLevel: Long, + @Json(name = "commenting_user") val user: User, +) diff --git a/api/src/main/java/dev/msfjarvis/lobsters/model/LobstersPostDetails.kt b/api/src/main/java/dev/msfjarvis/lobsters/model/LobstersPostDetails.kt new file mode 100644 index 00000000..de9dfbb6 --- /dev/null +++ b/api/src/main/java/dev/msfjarvis/lobsters/model/LobstersPostDetails.kt @@ -0,0 +1,21 @@ +package dev.msfjarvis.lobsters.model + +import com.squareup.moshi.Json +import com.squareup.moshi.JsonClass + +@JsonClass(generateAdapter = true) +class LobstersPostDetails( + @Json(name = "short_id") val shortId: String, + @Json(name = "short_id_url") val shortIdUrl: String, + @Json(name = "created_at") val createdAt: String, + val title: String, + val url: String, + val score: Long, + val flags: Long, + @Json(name = "comment_count") val commentCount: Long, + val description: String, + @Json(name = "comments_url") val commentsUrl: String, + @Json(name = "submitter_user") val submitter: User, + val tags: List, + val comments: List, +)