small update
This commit is contained in:
core
api
src
commonMain
kotlin
dev
inmo
postssystem
core
exposed
src
jvmMain
kotlin
dev
inmo
postssystem
core
exposed
publishing
api
src
commonMain
kotlin
dev
inmo
postssystem
core
publishing
ktor
common
src
commonMain
kotlin
com
insanusmokrassar
postssystem
publishing
server
src
jvmMain
kotlin
com
insanusmokrassar
postssystem
publishing
@ -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
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user