Change Pattern of datetime
continuous-integration/drone/push Build is passing Details

pull/4/head
luevard 1 year ago
parent d89fc02616
commit 2897b34e4c

@ -1,5 +1,6 @@
package allin.model package allin.model
import allin.serializer.UUIDSerializer
import allin.serializer.ZonedDateTimeSerializer import allin.serializer.ZonedDateTimeSerializer
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable
import java.time.ZonedDateTime import java.time.ZonedDateTime

@ -16,7 +16,7 @@ import java.time.format.DateTimeFormatter
@Serializer(ZonedDateTime::class) @Serializer(ZonedDateTime::class)
object ZonedDateTimeSerializer : KSerializer<ZonedDateTime> { object ZonedDateTimeSerializer : KSerializer<ZonedDateTime> {
private val formatter: DateTimeFormatter = DateTimeFormatter.ISO_ZONED_DATE_TIME private val formatter: DateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss z")
override val descriptor: SerialDescriptor = override val descriptor: SerialDescriptor =
PrimitiveSerialDescriptor("ZonedDateTime", PrimitiveKind.STRING) PrimitiveSerialDescriptor("ZonedDateTime", PrimitiveKind.STRING)
@ -29,11 +29,4 @@ object ZonedDateTimeSerializer : KSerializer<ZonedDateTime> {
val dateString = decoder.decodeString() val dateString = decoder.decodeString()
return ZonedDateTime.parse(dateString, formatter) return ZonedDateTime.parse(dateString, formatter)
} }
fun convertTimestampToZonedDateTime(ts: Instant?): ZonedDateTime {
println(ts.toString())
val zoneId = ZoneId.of("Asia/Kolkata")
return ZonedDateTime.ofInstant(ts, zoneId)
}
} }

@ -0,0 +1,20 @@
package allin.serializer
import kotlinx.serialization.KSerializer
import kotlinx.serialization.descriptors.PrimitiveKind
import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor
import kotlinx.serialization.encoding.Decoder
import kotlinx.serialization.encoding.Encoder
import java.util.*
object UUIDSerializer : KSerializer<UUID> {
override val descriptor = PrimitiveSerialDescriptor("UUID", PrimitiveKind.STRING)
override fun deserialize(decoder: Decoder): UUID {
return UUID.fromString(decoder.decodeString())
}
override fun serialize(encoder: Encoder, value: UUID) {
encoder.encodeString(value.toString())
}
}
Loading…
Cancel
Save