Skip to content

Commit

Permalink
add klock in common and DateTimeSerializer
Browse files Browse the repository at this point in the history
  • Loading branch information
InsanusMokrassar committed Apr 27, 2024
1 parent 2db0ead commit 9f7c963
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 1 deletion.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@

## 0.20.46

* `Common`:
* Now this repo depends on `klock`
* Add new object-serializer `DateTimeSerializer` for `klock` serializer

## 0.20.45

* `Versions`:
Expand Down
5 changes: 5 additions & 0 deletions common/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ apply from: "$mppJvmJsAndroidLinuxMingwLinuxArm64ProjectPresetPath"

kotlin {
sourceSets {
commonMain {
dependencies {
api libs.klock
}
}
jvmMain {
dependencies {
api project(":micro_utils.coroutines")
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package dev.inmo.micro_utils.common

import korlibs.time.DateTime
import kotlinx.serialization.KSerializer
import kotlinx.serialization.Serializer
import kotlinx.serialization.builtins.serializer
import kotlinx.serialization.descriptors.SerialDescriptor
import kotlinx.serialization.encoding.Decoder
import kotlinx.serialization.encoding.Encoder

@Serializer(DateTime::class)
object DateTimeSerializer : KSerializer<DateTime> {
override val descriptor: SerialDescriptor
get() = Double.serializer().descriptor

override fun deserialize(decoder: Decoder): DateTime {
return DateTime(decoder.decodeDouble())
}

override fun serialize(encoder: Encoder, value: DateTime) {
encoder.encodeDouble(value.unixMillis)
}
}
1 change: 0 additions & 1 deletion ktor/common/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ kotlin {
dependencies {
api internalProject("micro_utils.common")
api libs.kt.serialization.cbor
api libs.klock
api libs.uuid
api libs.ktor.io
}
Expand Down

0 comments on commit 9f7c963

Please sign in to comment.