From 5af1d4928d7f73b50a310dffcbf58c57a7abc821 Mon Sep 17 00:00:00 2001 From: moonlightnexus Date: Thu, 4 Apr 2024 04:08:26 +0530 Subject: [PATCH] Many fixes modified: setup.py modified: trustauthx/authlite.py modified: trustauthx/scheme.py --- setup.py | 2 +- trustauthx/authlite.py | 8 ++++---- trustauthx/scheme.py | 32 +++++++++++++++++++++----------- 3 files changed, 26 insertions(+), 16 deletions(-) diff --git a/setup.py b/setup.py index d463446..8c6e4b6 100644 --- a/setup.py +++ b/setup.py @@ -8,7 +8,7 @@ setup( name='trustauthx', - version='0.7.0', + version='0.7.1', description='Official connector SDK for TrustAuthx', long_description=long_description, long_description_content_type='text/markdown', # This is important! diff --git a/trustauthx/authlite.py b/trustauthx/authlite.py index 46792c1..ef02b8c 100644 --- a/trustauthx/authlite.py +++ b/trustauthx/authlite.py @@ -321,7 +321,7 @@ def add_role(self, name, **Permission_)->AddRoleResponse: org_id=role_data.get("org_id"), rol_id=role_data.get("rol_id"), name=role_data.get("name"), - permissions=permissions + permissions=[p.__dict__ for p in permissions] ) def delete_role(self, rol_id) -> DeleteRoleResponse: @@ -372,7 +372,7 @@ def delete_role(self, rol_id) -> DeleteRoleResponse: org_id=role_data.get("org_id"), rol_id=role_data.get("rol_id"), name=role_data.get("name"), - permissions=permissions + permissions=[p.__dict__ for p in permissions] ) def add_permission(self, rol_id, foreground=False, **Permission_) -> AddPermissionResponse: @@ -413,12 +413,12 @@ def add_permission(self, rol_id, foreground=False, **Permission_) -> AddPermissi } response = requests.post(url, headers=headers, params=params, data=json.dumps(data)) response_data = response.json() - permissions = [{k: v} for k, v in permissions.items()] + permissions = [Permission(**{k: v}) for k, v in permissions.items()] self.reinitialize_all(foreground) return AddPermissionResponse( org_id=response_data.get("org_id"), rol_id=response_data.get("rol_id"), - permissions=permissions + permissions=[p.__dict__ for p in permissions] ) def delete_permission(self, rol_id, foreground=False, **Permission_) -> DeletePermissionResponse: diff --git a/trustauthx/scheme.py b/trustauthx/scheme.py index 5b61661..7771c7a 100644 --- a/trustauthx/scheme.py +++ b/trustauthx/scheme.py @@ -5,13 +5,10 @@ class Permission: """ A class representing a permission object. - - Attributes: - name (str): The name of the permission. - value (str): The value of the permission. """ - name: str - value: str + def __init__(self, **kwargs): + for key, value in kwargs.items(): + setattr(self, key, value) @dataclass class Role: @@ -29,10 +26,6 @@ class Role: name: str permissions: List[Permission] -@dataclass -class Permission: - name: str - value: str @dataclass class GetAllRolesResponse: @@ -125,4 +118,21 @@ class DeletePermissionResponse: Permission(name="maintainer", value="administration") ] ) -""" \ No newline at end of file +""" + +# class Permission: +# def __init__(self, **kwargs): +# for key, value in kwargs.items(): +# setattr(self, key, value) + +# role_data = { +# "permissions": [ +# {"read": "true", "write": "false"}, +# {"execute": "true"} +# ] +# } + +# permissions = [Permission(**p) for p in role_data.get("permissions", [])] + +# for permission in permissions: +# print(permission.__dict__)