@@ -446,20 +446,24 @@ def _build_query(
446446 query &= Join (i )
447447 return query
448448
449+ @staticmethod
449450 def _process_response (
450- self , items : List [BaseItemEntity ], project : ProjectEntity , folder : FolderEntity
451- ) -> List [dict ]:
451+ service_provider ,
452+ items : List [BaseItemEntity ],
453+ project : ProjectEntity ,
454+ folder : FolderEntity ,
455+ ) -> List [BaseItemEntity ]:
452456 """Process the response data and return a list of serialized items."""
453457 data = []
454458 for item in items :
455459
456460 item = usecases .serialize_item_entity (item , project )
457461 item = usecases .add_item_path (project , folder , item )
458- item .annotation_status = self . service_provider .get_annotation_status_name (
462+ item .annotation_status = service_provider .get_annotation_status_name (
459463 project , item .annotation_status
460464 )
461465 for assignment in item .assignments :
462- role_name = self . service_provider .get_role_name (
466+ role_name = service_provider .get_role_name (
463467 project , assignment ["user_role" ]
464468 )
465469 if role_name == "QA" :
@@ -483,7 +487,7 @@ def list_items(
483487 response = self .service_provider .item_service .list (project .id , folder .id , query )
484488 if response .error :
485489 raise AppException (response .error )
486- return self ._process_response (response . data , project , folder )
490+ return self ._process_response (self . service_provider , project , folder )
487491
488492 def attach (
489493 self ,
@@ -1331,7 +1335,7 @@ def get_annotations_per_frame(
13311335
13321336 def query_entities (
13331337 self , project_name : str , folder_name : str , query : str = None , subset : str = None
1334- ):
1338+ ) -> List [ BaseItemEntity ] :
13351339 project = self .get_project (project_name )
13361340 folder = self .get_folder (project , folder_name )
13371341
@@ -1343,4 +1347,10 @@ def query_entities(
13431347 subset = subset ,
13441348 service_provider = self .service_provider ,
13451349 )
1346- return use_case .execute ()
1350+ response = use_case .execute ()
1351+ if response .errors :
1352+ raise AppException (response .errors )
1353+ items = response .data
1354+ return ItemManager ._process_response (
1355+ self .service_provider , items , project , folder
1356+ )
0 commit comments