From 44317d1519e8ca4088a6b3444f283babfa8898ba Mon Sep 17 00:00:00 2001 From: InsanusMokrassar Date: Thu, 8 Sep 2022 22:38:11 +0600 Subject: [PATCH] start 0.12.11 and add values in key value cache repo --- CHANGELOG.md | 6 ++++++ gradle.properties | 4 ++-- .../micro_utils/repos/cache/KeyValueCacheRepo.kt | 13 +++++++++++-- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f5cc61bc1b9..db20b4e5a76 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 0.12.11 + +* `Repos`: + * `Cache`: + * Override `KeyValue` cache method `values` + ## 0.12.10 * `Repos`: diff --git a/gradle.properties b/gradle.properties index c2347781c04..70aafb53c64 100644 --- a/gradle.properties +++ b/gradle.properties @@ -14,5 +14,5 @@ crypto_js_version=4.1.1 # Project data group=dev.inmo -version=0.12.10 -android_code_version=149 +version=0.12.11 +android_code_version=150 diff --git a/repos/cache/src/commonMain/kotlin/dev/inmo/micro_utils/repos/cache/KeyValueCacheRepo.kt b/repos/cache/src/commonMain/kotlin/dev/inmo/micro_utils/repos/cache/KeyValueCacheRepo.kt index e16eb4aac62..fb4a46e194e 100644 --- a/repos/cache/src/commonMain/kotlin/dev/inmo/micro_utils/repos/cache/KeyValueCacheRepo.kt +++ b/repos/cache/src/commonMain/kotlin/dev/inmo/micro_utils/repos/cache/KeyValueCacheRepo.kt @@ -1,7 +1,6 @@ package dev.inmo.micro_utils.repos.cache -import dev.inmo.micro_utils.pagination.Pagination -import dev.inmo.micro_utils.pagination.PaginationResult +import dev.inmo.micro_utils.pagination.* import dev.inmo.micro_utils.repos.* import dev.inmo.micro_utils.repos.cache.cache.KVCache import kotlinx.coroutines.CoroutineScope @@ -14,6 +13,16 @@ open class ReadKeyValueCacheRepo( ) : ReadKeyValueRepo by parentRepo, CacheRepo { override suspend fun get(k: Key): Value? = kvCache.get(k) ?: parentRepo.get(k) ?.also { kvCache.set(k, it) } override suspend fun contains(key: Key): Boolean = kvCache.contains(key) || parentRepo.contains(key) + + override suspend fun values(pagination: Pagination, reversed: Boolean): PaginationResult { + return keys(pagination, reversed).let { + it.changeResultsUnchecked( + it.results.mapNotNull { + get(it) + } + ) + } + } } fun ReadKeyValueRepo.cached(