mirror of
https://github.com/InsanusMokrassar/MicroUtils.git
synced 2025-09-04 23:59:29 +00:00
add MapKeyValueRepo.kt
This commit is contained in:
@@ -47,4 +47,12 @@ class KtorReadStandardCrudRepo<ObjectType, IdType> (
|
||||
),
|
||||
Boolean.serializer()
|
||||
)
|
||||
|
||||
override suspend fun count(): Long = client.uniget(
|
||||
buildStandardUrl(
|
||||
baseUrl,
|
||||
countRouting
|
||||
),
|
||||
Long.serializer()
|
||||
)
|
||||
}
|
||||
|
@@ -3,3 +3,4 @@ package dev.inmo.micro_utils.repos.ktor.common.crud
|
||||
const val getByPaginationRouting = "getByPagination"
|
||||
const val getByIdRouting = "getById"
|
||||
const val containsRouting = "contains"
|
||||
const val countRouting = "count"
|
||||
|
@@ -2,12 +2,10 @@ package dev.inmo.micro_utils.repos.ktor.server.crud
|
||||
|
||||
import dev.inmo.micro_utils.ktor.server.decodeUrlQueryValueOrSendError
|
||||
import dev.inmo.micro_utils.ktor.server.unianswer
|
||||
import dev.inmo.micro_utils.repos.ktor.common.crud.containsRouting
|
||||
import dev.inmo.micro_utils.repos.ktor.common.crud.getByIdRouting
|
||||
import dev.inmo.micro_utils.repos.ktor.common.crud.getByPaginationRouting
|
||||
import dev.inmo.micro_utils.pagination.PaginationResult
|
||||
import dev.inmo.micro_utils.pagination.extractPagination
|
||||
import dev.inmo.micro_utils.repos.ReadStandardCRUDRepo
|
||||
import dev.inmo.micro_utils.repos.ktor.common.crud.*
|
||||
import io.ktor.application.call
|
||||
import io.ktor.routing.Route
|
||||
import io.ktor.routing.get
|
||||
@@ -54,4 +52,11 @@ fun <ObjectType, IdType> Route.configureReadStandardCrudRepoRoutes(
|
||||
originalRepo.contains(id)
|
||||
)
|
||||
}
|
||||
|
||||
get(countRouting) {
|
||||
call.unianswer(
|
||||
Long.serializer(),
|
||||
originalRepo.count()
|
||||
)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user