1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2024-06-26 11:38:09 +00:00
tgbotapi/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ResponseParameters.kt
2018-12-26 16:21:52 +08:00

31 lines
757 B
Kotlin

package com.github.insanusmokrassar.TelegramBotAPI.types
import kotlinx.serialization.*
import org.joda.time.DateTime
import java.util.concurrent.TimeUnit
@Serializable
data class ResponseParameters<T : Any>(
val ok: Boolean = false,
@Optional
val description: String? = null,
@SerialName("migrate_to_chat_id")
@Optional
val migrateToChatId: Identifier? = null,
@SerialName("retry_after")
@Optional
val retryAfter: Int? = null,
@SerialName("error_code")
@Optional
val errorCode: Int? = null,
@Optional
val result: T? = null
) {
@Transient
val waitUntil: DateTime? by lazy {
retryAfter ?.let {
DateTime.now().plus(TimeUnit.SECONDS.toMillis(it.toLong()))
}
}
}