77 Dict ,
88 Iterable ,
99 List ,
10+ Literal ,
1011 Optional ,
1112 Type ,
1213 TypeVar ,
@@ -129,6 +130,18 @@ def _create_and_register_generic_views(self):
129130 else :
130131 self ._register_views (self ._path )
131132
133+ def get_endpoint_name (
134+ self ,
135+ action : Literal ["get" , "create" , "update" , "delete" ],
136+ kind : Literal ["list" , "detail" ],
137+ ):
138+ """
139+ :param action
140+ :param kind: list / detail
141+ :return:
142+ """
143+ return f"{ action } _{ self ._type } _{ kind } "
144+
132145 def _register_get_resource_list (self , path : str ):
133146 list_response_example = {
134147 status .HTTP_200_OK : {"model" : self .list_response_schema },
@@ -140,6 +153,7 @@ def _register_get_resource_list(self, path: str):
140153 methods = ["GET" ],
141154 summary = f"Get list of `{ self ._type } ` objects" ,
142155 endpoint = self ._create_get_resource_list_view (),
156+ name = self .get_endpoint_name ("get" , "list" ),
143157 )
144158
145159 def _register_post_resource_list (self , path : str ):
@@ -154,6 +168,7 @@ def _register_post_resource_list(self, path: str):
154168 summary = f"Create object `{ self ._type } `" ,
155169 status_code = status .HTTP_201_CREATED ,
156170 endpoint = self ._create_post_resource_list_view (),
171+ name = self .get_endpoint_name ("create" , "list" ),
157172 )
158173
159174 def _register_delete_resource_list (self , path : str ):
@@ -167,6 +182,7 @@ def _register_delete_resource_list(self, path: str):
167182 methods = ["DELETE" ],
168183 summary = f"Delete objects `{ self ._type } ` by filters" ,
169184 endpoint = self ._create_delete_resource_list_view (),
185+ name = self .get_endpoint_name ("delete" , "list" ),
170186 )
171187
172188 def _register_get_resource_detail (self , path : str ):
@@ -182,6 +198,7 @@ def _register_get_resource_detail(self, path: str):
182198 methods = ["GET" ],
183199 summary = f"Get object `{ self ._type } ` by id" ,
184200 endpoint = self ._create_get_resource_detail_view (),
201+ name = self .get_endpoint_name ("get" , "detail" ),
185202 )
186203
187204 def _register_patch_resource_detail (self , path : str ):
@@ -197,6 +214,7 @@ def _register_patch_resource_detail(self, path: str):
197214 methods = ["PATCH" ],
198215 summary = f"Patch object `{ self ._type } ` by id" ,
199216 endpoint = self ._create_patch_resource_detail_view (),
217+ name = self .get_endpoint_name ("update" , "detail" ),
200218 )
201219
202220 def _register_delete_resource_detail (self , path : str ):
@@ -212,6 +230,7 @@ def _register_delete_resource_detail(self, path: str):
212230 methods = ["DELETE" ],
213231 summary = f"Delete object `{ self ._type } ` by id" ,
214232 endpoint = self ._create_delete_resource_detail_view (),
233+ name = self .get_endpoint_name ("delete" , "detail" ),
215234 )
216235
217236 def _create_pagination_query_params (self ) -> List [Parameter ]:
@@ -387,7 +406,7 @@ async def wrapper(request: Request, **extra_view_deps):
387406 jsonapi = self ,
388407 )
389408
390- response = await resource .get_resource_list_result (** extra_view_deps )
409+ response = await resource .handle_get_resource_list (** extra_view_deps )
391410 return response
392411
393412 additional_dependency_params = self ._update_method_config_and_get_dependency_params (
@@ -414,7 +433,7 @@ async def wrapper(request: Request, data_create: schema_in, **extra_view_deps):
414433 jsonapi = self ,
415434 )
416435
417- response = await resource .post_resource_list_result (
436+ response = await resource .handle_post_resource_list (
418437 data_create = data_create ,
419438 ** extra_view_deps ,
420439 )
@@ -445,7 +464,7 @@ async def wrapper(request: Request, **extra_view_deps):
445464 jsonapi = self ,
446465 )
447466
448- response = await resource .delete_resource_list_result (** extra_view_deps )
467+ response = await resource .handle_delete_resource_list (** extra_view_deps )
449468 return response
450469
451470 additional_dependency_params = self ._update_method_config_and_get_dependency_params (
@@ -476,7 +495,7 @@ async def wrapper(request: Request, obj_id: str = Path(...), **extra_view_deps):
476495 )
477496
478497 # TODO: pass obj_id as kwarg (get name from DetailView class)
479- response = await resource .get_resource_detail_result (obj_id , ** extra_view_deps )
498+ response = await resource .handle_get_resource_detail (obj_id , ** extra_view_deps )
480499 return response
481500
482501 additional_dependency_params = self ._update_method_config_and_get_dependency_params (
@@ -510,7 +529,7 @@ async def wrapper(
510529 )
511530
512531 # TODO: pass obj_id as kwarg (get name from DetailView class)
513- response = await resource .update_resource_result (
532+ response = await resource .handle_update_resource (
514533 obj_id = obj_id ,
515534 data_update = data_update .data ,
516535 ** extra_view_deps ,
@@ -546,7 +565,7 @@ async def wrapper(
546565 )
547566
548567 # TODO: pass obj_id as kwarg (get name from DetailView class)
549- response = await resource .delete_resource_result (obj_id = obj_id , ** extra_view_deps )
568+ response = await resource .handle_delete_resource (obj_id = obj_id , ** extra_view_deps )
550569 return response
551570
552571 additional_dependency_params = self ._update_method_config_and_get_dependency_params (
0 commit comments