refactor: unify db refresh flows
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
package dev.meloda.fast.model.api.data
|
||||
|
||||
import com.squareup.moshi.Json
|
||||
import com.squareup.moshi.JsonClass
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class LongPollHistoryResponse(
|
||||
@Json(name = "history") val history: List<List<Any>>? = null,
|
||||
@Json(name = "messages") val messages: Messages? = null,
|
||||
@Json(name = "profiles") val profiles: List<VkUserData>? = null,
|
||||
@Json(name = "groups") val groups: List<VkGroupData>? = null,
|
||||
@Json(name = "new_pts") val newPts: Int? = null,
|
||||
@Json(name = "from_pts") val fromPts: Int? = null,
|
||||
@Json(name = "ts") val ts: Int? = null,
|
||||
@Json(name = "pts") val pts: Int? = null,
|
||||
@Json(name = "more") val more: Int? = null,
|
||||
@Json(name = "conversations") val conversations: List<VkConvoData>? = null
|
||||
) {
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class Messages(
|
||||
@Json(name = "count") val count: Int? = null,
|
||||
@Json(name = "items") val items: List<VkMessageData>? = null
|
||||
)
|
||||
}
|
||||
@@ -19,3 +19,27 @@ data class LongPollGetUpdatesRequest(
|
||||
"version" to version.toString()
|
||||
)
|
||||
}
|
||||
|
||||
data class LongPollGetHistoryRequest(
|
||||
val ts: Int,
|
||||
val pts: Int,
|
||||
val lpVersion: Int,
|
||||
val lastN: Int? = null,
|
||||
val maxMsgId: Long? = null,
|
||||
val eventsLimit: Int? = null,
|
||||
val msgsLimit: Int? = null,
|
||||
val extended: Boolean = true,
|
||||
) {
|
||||
val map: Map<String, String>
|
||||
get() = mutableMapOf(
|
||||
"ts" to ts.toString(),
|
||||
"pts" to pts.toString(),
|
||||
"lp_version" to lpVersion.toString(),
|
||||
"extended" to if (extended) "1" else "0",
|
||||
).apply {
|
||||
lastN?.let { this["last_n"] = it.toString() }
|
||||
maxMsgId?.let { this["max_msg_id"] = it.toString() }
|
||||
eventsLimit?.let { this["events_limit"] = it.toString() }
|
||||
msgsLimit?.let { this["msgs_limit"] = it.toString() }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user