migration onto datetime

This commit is contained in:
InsanusMokrassar 2021-10-04 15:54:43 +06:00
parent 2a783f6e2b
commit 44e26ccb4f
5 changed files with 16 additions and 11 deletions

View File

@ -2,6 +2,11 @@
## 0.6.0 ## 0.6.0
**THIS VERSION HAS MIGRATED FROM KORLIBS KLOCK TO KOTLINX DATETIME. CAREFUL**
* `Versions`
* `Klock` -> `kotlinx.datetime`
## 0.5.31 ## 0.5.31
* `Versions`: * `Versions`:

View File

@ -14,7 +14,7 @@ kotlin_exposed_version=0.35.1
ktor_version=1.6.4 ktor_version=1.6.4
klockVersion=2.4.3 datetime_version=0.3.0
github_release_plugin_version=2.2.12 github_release_plugin_version=2.2.12

View File

@ -11,7 +11,7 @@ kotlin {
commonMain { commonMain {
dependencies { dependencies {
api "org.jetbrains.kotlinx:kotlinx-serialization-cbor:$kotlin_serialisation_core_version" api "org.jetbrains.kotlinx:kotlinx-serialization-cbor:$kotlin_serialisation_core_version"
api "com.soywiz.korlibs.klock:klock:$klockVersion" api "org.jetbrains.kotlinx:kotlinx-datetime:$datetime_version"
} }
} }
} }

View File

@ -1,17 +1,17 @@
package dev.inmo.micro_utils.ktor.common package dev.inmo.micro_utils.ktor.common
import com.soywiz.klock.DateTime import kotlinx.datetime.Instant
typealias FromToDateTime = Pair<DateTime?, DateTime?> typealias FromToDateTime = Pair<Instant?, Instant?>
val FromToDateTime.asFromToUrlPart: QueryParams val FromToDateTime.asFromToUrlPart: QueryParams
get() = mapOf( get() = mapOf(
"from" to first ?.unixMillis ?.toString(), "from" to first ?.toEpochMilliseconds() ?.toString(),
"to" to second ?.unixMillis ?.toString() "to" to second ?.toEpochMilliseconds() ?.toString()
) )
val QueryParams.extractFromToDateTime: FromToDateTime val QueryParams.extractFromToDateTime: FromToDateTime
get() = FromToDateTime( get() = FromToDateTime(
get("from") ?.toDoubleOrNull() ?.let { DateTime(it) }, get("from") ?.run { toLongOrNull() ?: (toDoubleOrNull() ?.toLong()) } ?.let { Instant.fromEpochMilliseconds(it) },
get("to") ?.toDoubleOrNull() ?.let { DateTime(it) } get("to") ?.run { toLongOrNull() ?: (toDoubleOrNull() ?.toLong()) } ?.let { Instant.fromEpochMilliseconds(it) }
) )

View File

@ -1,11 +1,11 @@
package dev.inmo.micro_utils.ktor.server package dev.inmo.micro_utils.ktor.server
import com.soywiz.klock.DateTime
import dev.inmo.micro_utils.ktor.common.FromToDateTime import dev.inmo.micro_utils.ktor.common.FromToDateTime
import io.ktor.http.Parameters import io.ktor.http.Parameters
import kotlinx.datetime.Instant
val Parameters.extractFromToDateTime: FromToDateTime val Parameters.extractFromToDateTime: FromToDateTime
get() = FromToDateTime( get() = FromToDateTime(
get("from") ?.toDoubleOrNull() ?.let { DateTime(it) }, get("from") ?.run { toLongOrNull() ?: (toDoubleOrNull() ?.toLong()) } ?.let { Instant.fromEpochMilliseconds(it) },
get("to") ?.toDoubleOrNull() ?.let { DateTime(it) } get("to") ?.run { toLongOrNull() ?: (toDoubleOrNull() ?.toLong()) } ?.let { Instant.fromEpochMilliseconds(it) }
) )