2020-01-30 21:10:04 +13:00
|
|
|
from __future__ import annotations
|
|
|
|
|
|
|
|
|
|
|
|
class RoleManagementException(Exception):
|
|
|
|
pass
|
|
|
|
|
2020-01-30 21:15:53 +13:00
|
|
|
|
2020-01-30 21:10:04 +13:00
|
|
|
class PermissionOrHierarchyException(Exception):
|
|
|
|
pass
|
|
|
|
|
2020-01-30 21:15:53 +13:00
|
|
|
|
2020-01-30 21:10:04 +13:00
|
|
|
class MissingRequirementsException(RoleManagementException):
|
|
|
|
def __init__(self, *, miss_any=None, miss_all=None):
|
|
|
|
self.miss_all = miss_all or []
|
|
|
|
self.miss_any = miss_any or []
|
|
|
|
super().__init__()
|
|
|
|
|
|
|
|
|
|
|
|
class ConflictingRoleException(RoleManagementException):
|
|
|
|
def __init__(self, *, conflicts=None):
|
|
|
|
self.conflicts = conflicts or []
|
|
|
|
super().__init__()
|