@@ -58,21 +58,31 @@ def split_resource_name(resource_name: RelativeResourceName) -> list[str]:
5858 return [f"{ urllib .parse .unquote_plus (p )} " for p in quoted_parts ]
5959
6060
61- def split_resource_name_as_dict (
62- resource_name : RelativeResourceName ,
63- ) -> dict [str , str | None ]:
64- """Returns a map with
65- resource_ids[Collection-ID] == Resource-ID
66- """
67- parts = split_resource_name (resource_name )
68- return dict (zip (parts [::2 ], parts [1 ::2 ], strict = False ))
69-
70-
7161def parse_collections_ids (resource_name : RelativeResourceName ) -> list [str ]:
62+ """
63+ Example:
64+ resource_name = "solvers/simcore%2Fservices%2Fcomp%2Fisolve/releases/1.3.4/jobs/f622946d-fd29-35b9-a193-abdd1095167c/outputs/output+22"
65+ returns ["solvers", "releases", "jobs", "outputs"]
66+ """
7267 parts = split_resource_name (resource_name )
7368 return parts [::2 ]
7469
7570
7671def parse_resources_ids (resource_name : RelativeResourceName ) -> list [str ]:
72+ """
73+ Example:
74+ resource_name = "solvers/simcore%2Fservices%2Fcomp%2Fisolve/releases/1.3.4/jobs/f622946d-fd29-35b9-a193-abdd1095167c/outputs/output+22"
75+ returns ["simcore/services/comp/isolve", "1.3.4", "f622946d-fd29-35b9-a193-abdd1095167c", "output 22"]
76+ """
7777 parts = split_resource_name (resource_name )
7878 return parts [1 ::2 ]
79+
80+
81+ def split_resource_name_as_dict (
82+ resource_name : RelativeResourceName ,
83+ ) -> dict [str , str | None ]:
84+ """
85+ Returns a map such as resource_ids[Collection-ID] == Resource-ID
86+ """
87+ parts = split_resource_name (resource_name )
88+ return dict (zip (parts [::2 ], parts [1 ::2 ], strict = False ))
0 commit comments