small update

This commit is contained in:
2020-11-28 12:53:50 +06:00
parent 4d0aae2b91
commit 4b6544131f
8 changed files with 77 additions and 43 deletions

View File

@@ -1,5 +1,7 @@
package dev.inmo.postssystem.core.publishing.repos
import dev.inmo.micro_utils.pagination.FirstPagePagination
import dev.inmo.micro_utils.repos.*
import dev.inmo.postssystem.core.post.PostId
import dev.inmo.postssystem.core.publishing.TriggerControlKey
@@ -23,3 +25,30 @@ interface WritePublishingKeysRepo {
}
interface PublishingKeysRepo : ReadPublishingKeysRepo, WritePublishingKeysRepo
fun PublishingKeysRepo(
keyValueRepo: KeyValueRepo<PostId, TriggerControlKey>
) = object : PublishingKeysRepo {
override suspend fun getPostIdByTriggerControlKey(
key: TriggerControlKey
): PostId? = keyValueRepo.keys(key, FirstPagePagination(1)).results.firstOrNull()
override suspend fun getTriggerControlKeyByPostId(
postId: PostId
): TriggerControlKey? = keyValueRepo.get(postId)
override suspend fun setPostTriggerControlKey(
postId: PostId,
key: TriggerControlKey
): Boolean {
keyValueRepo.set(postId, key)
return true
}
override suspend fun unsetPostTriggerControlKey(
postId: PostId
): Boolean {
keyValueRepo.unset(postId)
return true
}
}