core/features/roles/manager/server/src/jvmMain/kotlin/dev/inmo/postssystem/features/roles/manager/server/RolesManagerRolesChecker.kt

18 lines
690 B
Kotlin
Raw Normal View History

2021-11-24 07:52:27 +00:00
package dev.inmo.postssystem.features.roles.manager.server
2021-11-27 19:11:04 +00:00
import dev.inmo.postssystem.features.roles.common.*
2021-11-24 07:52:27 +00:00
import dev.inmo.postssystem.features.roles.manager.common.GeneralRolesManagerRole
import dev.inmo.postssystem.features.roles.server.RolesChecker
import dev.inmo.postssystem.features.users.common.User
2022-05-07 14:48:17 +00:00
import io.ktor.server.application.ApplicationCall
2021-11-24 07:52:27 +00:00
2021-11-27 19:11:04 +00:00
object RolesManagerRolesChecker : RolesChecker<Role> {
2021-11-24 07:52:27 +00:00
override val key: String
get() = "RolesManagerRolesChecker"
override suspend fun ApplicationCall.invoke(
2021-11-27 19:11:04 +00:00
usersRolesStorage: ReadRolesStorage<Role>,
2021-11-24 07:52:27 +00:00
user: User
): Boolean = usersRolesStorage.contains(user.id, GeneralRolesManagerRole)
}