maleo-identity 0.0.8__py3-none-any.whl → 0.0.9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of maleo-identity might be problematic. Click here for more details.
- maleo_identity/client/controllers/http/user.py +34 -0
- maleo_identity/client/services/user.py +72 -0
- maleo_identity/models/transfers/parameters/client/user_system_role.py +6 -0
- {maleo_identity-0.0.8.dist-info → maleo_identity-0.0.9.dist-info}/METADATA +3 -3
- {maleo_identity-0.0.8.dist-info → maleo_identity-0.0.9.dist-info}/RECORD +7 -7
- {maleo_identity-0.0.8.dist-info → maleo_identity-0.0.9.dist-info}/WHEEL +0 -0
- {maleo_identity-0.0.8.dist-info → maleo_identity-0.0.9.dist-info}/top_level.txt +0 -0
|
@@ -2,7 +2,9 @@ from maleo_foundation.managers.client.base import BearerAuth
|
|
|
2
2
|
from maleo_foundation.managers.client.maleo import MaleoClientHTTPController
|
|
3
3
|
from maleo_foundation.models.transfers.results.client.controllers.http import BaseClientHTTPControllerResults
|
|
4
4
|
from maleo_identity.models.transfers.parameters.general.user import MaleoIdentityUserGeneralParametersTransfers
|
|
5
|
+
from maleo_identity.models.transfers.parameters.general.user_system_role import MaleoIdentityUserSystemRoleGeneralParametersTransfers
|
|
5
6
|
from maleo_identity.models.transfers.parameters.client.user import MaleoIdentityUserClientParametersTransfers
|
|
7
|
+
from maleo_identity.models.transfers.parameters.client.user_system_role import MaleoIdentityUserSystemRoleClientParametersTransfers
|
|
6
8
|
|
|
7
9
|
class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
8
10
|
async def get_users(self, parameters:MaleoIdentityUserClientParametersTransfers.GetMultiple) -> BaseClientHTTPControllerResults:
|
|
@@ -86,4 +88,36 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
86
88
|
|
|
87
89
|
#* Send request and wait for response
|
|
88
90
|
response = await client.get(url=url, auth=auth)
|
|
91
|
+
return BaseClientHTTPControllerResults(response=response)
|
|
92
|
+
|
|
93
|
+
async def get_user_system_roles(self, parameters:MaleoIdentityUserSystemRoleClientParametersTransfers.GetMultipleFromUser) -> BaseClientHTTPControllerResults:
|
|
94
|
+
"""Get user's system roles from MaleoIdentity"""
|
|
95
|
+
async with self._manager.get_client() as client:
|
|
96
|
+
#* Define URL
|
|
97
|
+
url = f"{self._manager.url.api}/v1/users/{parameters.user_id}/system-roles/"
|
|
98
|
+
|
|
99
|
+
#* Parse parameters to query params
|
|
100
|
+
params = MaleoIdentityUserSystemRoleClientParametersTransfers.GetMultipleFromUserQuery.model_validate(parameters.model_dump()).model_dump(exclude_none=True)
|
|
101
|
+
|
|
102
|
+
#* Create auth
|
|
103
|
+
auth = BearerAuth(token=self._service_manager.token)
|
|
104
|
+
|
|
105
|
+
#* Send request and wait for response
|
|
106
|
+
response = await client.get(url=url, params=params, auth=auth)
|
|
107
|
+
return BaseClientHTTPControllerResults(response=response)
|
|
108
|
+
|
|
109
|
+
async def get_user_system_role(self, parameters:MaleoIdentityUserSystemRoleGeneralParametersTransfers.GetSingle) -> BaseClientHTTPControllerResults:
|
|
110
|
+
"""Get user's system role from MaleoIdentity"""
|
|
111
|
+
async with self._manager.get_client() as client:
|
|
112
|
+
#* Define URL
|
|
113
|
+
url = f"{self._manager.url.api}/v1/users/{parameters.user_id}/system-roles/{parameters.system_role}"
|
|
114
|
+
|
|
115
|
+
#* Parse parameters to query params
|
|
116
|
+
params = MaleoIdentityUserSystemRoleGeneralParametersTransfers.GetSingleQuery.model_validate(parameters.model_dump()).model_dump(exclude_none=True)
|
|
117
|
+
|
|
118
|
+
#* Create auth
|
|
119
|
+
auth = BearerAuth(token=self._service_manager.token)
|
|
120
|
+
|
|
121
|
+
#* Send request and wait for response
|
|
122
|
+
response = await client.get(url=url, params=params, auth=auth)
|
|
89
123
|
return BaseClientHTTPControllerResults(response=response)
|
|
@@ -4,9 +4,13 @@ from maleo_foundation.utils.exceptions import BaseExceptions
|
|
|
4
4
|
from maleo_identity.client.controllers import MaleoIdentityUserControllers
|
|
5
5
|
from maleo_identity.enums.general import MaleoIdentityGeneralEnums
|
|
6
6
|
from maleo_identity.models.transfers.parameters.general.user import MaleoIdentityUserGeneralParametersTransfers
|
|
7
|
+
from maleo_identity.models.transfers.parameters.general.user_system_role import MaleoIdentityUserSystemRoleGeneralParametersTransfers
|
|
7
8
|
from maleo_identity.models.transfers.parameters.client.user import MaleoIdentityUserClientParametersTransfers
|
|
9
|
+
from maleo_identity.models.transfers.parameters.client.user_system_role import MaleoIdentityUserSystemRoleClientParametersTransfers
|
|
8
10
|
from maleo_identity.models.transfers.results.general.user import MaleoIdentityUserGeneralResultsTransfers
|
|
11
|
+
from maleo_identity.models.transfers.results.general.user_system_role import MaleoIdentityUserSystemRoleGeneralResultsTransfers
|
|
9
12
|
from maleo_identity.types.results.general.user import MaleoIdentityUserGeneralResultsTypes
|
|
13
|
+
from maleo_identity.types.results.general.user_system_role import MaleoIdentityUserSystemRoleGeneralResultsTypes
|
|
10
14
|
|
|
11
15
|
class MaleoIdentityUserClientService(ClientService):
|
|
12
16
|
def __init__(self, logger, controllers:MaleoIdentityUserControllers):
|
|
@@ -176,4 +180,72 @@ class MaleoIdentityUserClientService(ClientService):
|
|
|
176
180
|
return MaleoIdentityUserGeneralResultsTransfers.Fail.model_validate(controller_result.content)
|
|
177
181
|
else:
|
|
178
182
|
return MaleoIdentityUserGeneralResultsTransfers.SinglePassword.model_validate(controller_result.content)
|
|
183
|
+
return await _impl()
|
|
184
|
+
|
|
185
|
+
async def get_user_system_roles(
|
|
186
|
+
self,
|
|
187
|
+
parameters:MaleoIdentityUserSystemRoleClientParametersTransfers.GetMultipleFromUser,
|
|
188
|
+
controller_type:MaleoIdentityGeneralEnums.ClientControllerType = MaleoIdentityGeneralEnums.ClientControllerType.HTTP
|
|
189
|
+
) -> MaleoIdentityUserSystemRoleGeneralResultsTypes.GetMultiple:
|
|
190
|
+
"""Retrieve user's system roles from MaleoIdentity"""
|
|
191
|
+
@BaseExceptions.service_exception_handler(
|
|
192
|
+
operation="retrieving user's system roles",
|
|
193
|
+
logger=self._logger,
|
|
194
|
+
fail_result_class=MaleoIdentityUserSystemRoleGeneralResultsTransfers.Fail
|
|
195
|
+
)
|
|
196
|
+
async def _impl():
|
|
197
|
+
#* Validate chosen controller type
|
|
198
|
+
if not isinstance(controller_type, MaleoIdentityGeneralEnums.ClientControllerType):
|
|
199
|
+
message = "Invalid controller type"
|
|
200
|
+
description = "The provided controller type did not exists"
|
|
201
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.Fail(message=message, description=description)
|
|
202
|
+
#* Retrieve users using chosen controller
|
|
203
|
+
if controller_type == MaleoIdentityGeneralEnums.ClientControllerType.HTTP:
|
|
204
|
+
controller_result = await self._controllers.http.get_user_system_roles(parameters=parameters)
|
|
205
|
+
else:
|
|
206
|
+
message = "Invalid controller type"
|
|
207
|
+
description = "The provided controller type has not been implemented"
|
|
208
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.Fail(message=message, description=description)
|
|
209
|
+
#* Return proper response
|
|
210
|
+
if not controller_result.success:
|
|
211
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.Fail.model_validate(controller_result.content)
|
|
212
|
+
else:
|
|
213
|
+
if controller_result.content["data"] is None:
|
|
214
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.NoData.model_validate(controller_result.content)
|
|
215
|
+
else:
|
|
216
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.MultipleData.model_validate(controller_result.content)
|
|
217
|
+
return await _impl()
|
|
218
|
+
|
|
219
|
+
async def get_user_system_role(
|
|
220
|
+
self,
|
|
221
|
+
parameters:MaleoIdentityUserSystemRoleGeneralParametersTransfers.GetSingle,
|
|
222
|
+
controller_type:MaleoIdentityGeneralEnums.ClientControllerType = MaleoIdentityGeneralEnums.ClientControllerType.HTTP
|
|
223
|
+
) -> MaleoIdentityUserSystemRoleGeneralResultsTypes.GetSingle:
|
|
224
|
+
"""Retrieve user's system role from MaleoIdentity"""
|
|
225
|
+
@BaseExceptions.service_exception_handler(
|
|
226
|
+
operation="retrieving user's system role",
|
|
227
|
+
logger=self._logger,
|
|
228
|
+
fail_result_class=MaleoIdentityUserSystemRoleGeneralResultsTransfers.Fail
|
|
229
|
+
)
|
|
230
|
+
async def _impl():
|
|
231
|
+
#* Validate chosen controller type
|
|
232
|
+
if not isinstance(controller_type, MaleoIdentityGeneralEnums.ClientControllerType):
|
|
233
|
+
message = "Invalid controller type"
|
|
234
|
+
description = "The provided controller type did not exists"
|
|
235
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.Fail(message=message, description=description)
|
|
236
|
+
#* Retrieve user using chosen controller
|
|
237
|
+
if controller_type == MaleoIdentityGeneralEnums.ClientControllerType.HTTP:
|
|
238
|
+
controller_result = await self._controllers.http.get_user_system_role(parameters=parameters)
|
|
239
|
+
else:
|
|
240
|
+
message = "Invalid controller type"
|
|
241
|
+
description = "The provided controller type has not been implemented"
|
|
242
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.Fail(message=message, description=description)
|
|
243
|
+
#* Return proper response
|
|
244
|
+
if not controller_result.success:
|
|
245
|
+
if controller_result.status_code != status.HTTP_404_NOT_FOUND:
|
|
246
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.Fail.model_validate(controller_result.content)
|
|
247
|
+
else:
|
|
248
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.NoData.model_validate(controller_result.content)
|
|
249
|
+
else:
|
|
250
|
+
return MaleoIdentityUserSystemRoleGeneralResultsTransfers.SingleData.model_validate(controller_result.content)
|
|
179
251
|
return await _impl()
|
|
@@ -18,6 +18,12 @@ class MaleoIdentityUserSystemRoleClientParametersTransfers:
|
|
|
18
18
|
BaseClientParametersTransfers.GetPaginatedMultiple
|
|
19
19
|
): pass
|
|
20
20
|
|
|
21
|
+
class GetMultipleFromUserQuery(
|
|
22
|
+
MaleoIdentityUserSystemRoleGeneralSchemas.Expand,
|
|
23
|
+
MaleoMetadataSystemRoleExpandedSchemas.OptionalListOfSimpleSystemRole,
|
|
24
|
+
BaseClientParametersTransfers.GetPaginatedMultipleQuery
|
|
25
|
+
): pass
|
|
26
|
+
|
|
21
27
|
class GetMultipleQuery(
|
|
22
28
|
MaleoIdentityUserSystemRoleGeneralSchemas.Expand,
|
|
23
29
|
MaleoMetadataSystemRoleExpandedSchemas.OptionalListOfSimpleSystemRole,
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: maleo-identity
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.9
|
|
4
4
|
Summary: MaleoIdentity service package
|
|
5
5
|
Author-email: Agra Bima Yuda <agra@nexmedis.com>
|
|
6
6
|
License: MIT
|
|
7
7
|
Requires-Python: >=3.7
|
|
8
8
|
Description-Content-Type: text/markdown
|
|
9
|
-
Requires-Dist: maleo_foundation>=0.1.
|
|
10
|
-
Requires-Dist: maleo_metadata>=0.0.
|
|
9
|
+
Requires-Dist: maleo_foundation>=0.1.91
|
|
10
|
+
Requires-Dist: maleo_metadata>=0.0.63
|
|
11
11
|
|
|
12
12
|
# README #
|
|
13
13
|
|
|
@@ -5,10 +5,10 @@ maleo_identity/client/manager.py,sha256=CZHz2E7EyrJt-cDklCC37xIIyVPcrGbfLChze8Oi
|
|
|
5
5
|
maleo_identity/client/controllers/__init__.py,sha256=Kln0lR4EAnHsHaFWNEQBlOGH-hDiY_8KJdPq86msvA0,927
|
|
6
6
|
maleo_identity/client/controllers/http/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
maleo_identity/client/controllers/http/organization.py,sha256=k55EjiUAd2dTRe5Zg37fXbh1iXEa6miSI8HXpY7eBps,4435
|
|
8
|
-
maleo_identity/client/controllers/http/user.py,sha256=
|
|
8
|
+
maleo_identity/client/controllers/http/user.py,sha256=hxt7YYETu-gyT-tOkLvmTEFbgfPpVSh5qiTn-wYS2O0,6949
|
|
9
9
|
maleo_identity/client/services/__init__.py,sha256=52SEvH0DQUnTCGQIqRfdy-nnnOP1CXxxh4Zakzl5-W8,536
|
|
10
10
|
maleo_identity/client/services/organization.py,sha256=RvC4VYkaQ-sGM81M14_ifr7nzyFc5VZe-B3e5nAzoyA,9243
|
|
11
|
-
maleo_identity/client/services/user.py,sha256=
|
|
11
|
+
maleo_identity/client/services/user.py,sha256=r68c8tG0Libr7AiSM3zwNosYCk13XT7D2WimK-NWuTM,15520
|
|
12
12
|
maleo_identity/constants/__init__.py,sha256=g1zbxRrikSN_3GzxDTUQF-g5epTSLeoXH7iPHjyHQTE,632
|
|
13
13
|
maleo_identity/constants/organization.py,sha256=M5STqi5WMtT6kfNbB4BnQ1gEdQvU-l9dc9MiJCKzO_o,484
|
|
14
14
|
maleo_identity/constants/user.py,sha256=ye4oK5oDaDR4iJOERj9bQ-XcWjVAVAmXJpR8McXmFLc,1383
|
|
@@ -67,7 +67,7 @@ maleo_identity/models/transfers/parameters/client/organization.py,sha256=h-iOTTP
|
|
|
67
67
|
maleo_identity/models/transfers/parameters/client/user.py,sha256=ntPf_E5gw4f_eL4sRgeRF_AZcjNoBTM8KWDIN02pB3c,1298
|
|
68
68
|
maleo_identity/models/transfers/parameters/client/user_organization.py,sha256=20D8eKHEVcKW2NszfnaevDDG1_XS8RpalYf2z8n6EwM,1556
|
|
69
69
|
maleo_identity/models/transfers/parameters/client/user_profile.py,sha256=KB5_Ado_JAVYaSAPyqS00TSnrgbCkCE6yKYhe4NLb58,1224
|
|
70
|
-
maleo_identity/models/transfers/parameters/client/user_system_role.py,sha256=
|
|
70
|
+
maleo_identity/models/transfers/parameters/client/user_system_role.py,sha256=olEv7xSsej7jwuESoQ6qSK5cPRgGIhK6svamYjV_5ns,1569
|
|
71
71
|
maleo_identity/models/transfers/parameters/general/__init__.py,sha256=VOslVmijMHB9aot1QZom6Ug7prr9gGJ7FQvXrfADIBw,819
|
|
72
72
|
maleo_identity/models/transfers/parameters/general/organization.py,sha256=anXvAmis4xoqNCrkl3u90QPDh9Pe06PmpZZ16-31u5s,1171
|
|
73
73
|
maleo_identity/models/transfers/parameters/general/user.py,sha256=IIEtjnJo9VwC1mOlSlhSdPhD0yA3n8jYEfoaxO9VYXQ,1264
|
|
@@ -107,7 +107,7 @@ maleo_identity/types/results/query/user.py,sha256=SNgSJEOD3ZAdflkgPz47vVDYuTxtYV
|
|
|
107
107
|
maleo_identity/types/results/query/user_organization.py,sha256=5_YbwX6s9l1uYbLMZmlVg5EiP_5_RvUKRkRdbBFzLWo,835
|
|
108
108
|
maleo_identity/types/results/query/user_profile.py,sha256=Tz960UKJa17fYxaS5_Ju2iqVj5b1F07ZkgXsshWqX0E,788
|
|
109
109
|
maleo_identity/types/results/query/user_system_role.py,sha256=U5PgAv3B-g_5d852pi-9GdZy9sCkl0TgSdOgsEsRk-Q,814
|
|
110
|
-
maleo_identity-0.0.
|
|
111
|
-
maleo_identity-0.0.
|
|
112
|
-
maleo_identity-0.0.
|
|
113
|
-
maleo_identity-0.0.
|
|
110
|
+
maleo_identity-0.0.9.dist-info/METADATA,sha256=sEJ5KuDIfgelJ_gt6588Hbn1qGmQbTvLubPIW52LcsQ,867
|
|
111
|
+
maleo_identity-0.0.9.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
|
|
112
|
+
maleo_identity-0.0.9.dist-info/top_level.txt,sha256=mQENoRr7CBU3vx2PxHXywCHdfBm3AIzVx75IaEsArYE,15
|
|
113
|
+
maleo_identity-0.0.9.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|