mirror of
https://github.com/mamoe/mirai.git
synced 2025-03-03 15:10:14 +08:00
Convert all built-in permission services from singleton to instances
This commit is contained in:
parent
9930fc7ed1
commit
1b0f30c4bf
@ -26,7 +26,7 @@ public interface PermissionServiceProvider : SingletonExtension<PermissionServic
|
||||
public companion object ExtensionPoint :
|
||||
AbstractSingletonExtensionPoint<PermissionServiceProvider, PermissionService<*>>(
|
||||
PermissionServiceProvider::class,
|
||||
{ BuiltInPermissionService }
|
||||
{ BuiltInPermissionService() }
|
||||
) {
|
||||
internal var permissionServiceOk = false
|
||||
|
||||
|
@ -31,7 +31,7 @@ internal fun PermissionService<*>.checkType(permissionType: KClass<out Permissio
|
||||
return this as PermissionService<Permission>
|
||||
}
|
||||
|
||||
internal object AllPermitPermissionService : PermissionService<PermissionImpl> {
|
||||
internal class AllPermitPermissionService : PermissionService<PermissionImpl> {
|
||||
private val all = ConcurrentHashMap<PermissionId, PermissionImpl>()
|
||||
override val permissionType: KClass<PermissionImpl> get() = PermissionImpl::class
|
||||
override val rootPermission: PermissionImpl get() = RootPermissionImpl.also { all[it.id] = it }
|
||||
@ -65,7 +65,7 @@ internal object AllPermitPermissionService : PermissionService<PermissionImpl> {
|
||||
@Suppress("DEPRECATION")
|
||||
private val RootPermissionImpl = PermissionImpl(PermissionId("*", "*"), "The root permission").also { it.parent = it }
|
||||
|
||||
internal object AllDenyPermissionService : PermissionService<PermissionImpl> {
|
||||
internal class AllDenyPermissionService : PermissionService<PermissionImpl> {
|
||||
private val all = ConcurrentHashMap<PermissionId, PermissionImpl>()
|
||||
override val permissionType: KClass<PermissionImpl>
|
||||
get() = PermissionImpl::class
|
||||
@ -97,7 +97,7 @@ internal object AllDenyPermissionService : PermissionService<PermissionImpl> {
|
||||
}
|
||||
}
|
||||
|
||||
internal object BuiltInPermissionService : AbstractConcurrentPermissionService<PermissionImpl>(),
|
||||
internal class BuiltInPermissionService : AbstractConcurrentPermissionService<PermissionImpl>(),
|
||||
PermissionService<PermissionImpl> {
|
||||
|
||||
override val permissionType: KClass<PermissionImpl>
|
||||
|
Loading…
Reference in New Issue
Block a user