77 FunctionClass ,
88 FunctionID ,
99 FunctionInputs ,
10- FunctionInputsList ,
1110 FunctionJobCollection ,
1211 FunctionJobCollectionID ,
1312 FunctionJobID ,
1716 RegisteredFunction ,
1817 RegisteredFunctionJob ,
1918 RegisteredFunctionJobCollection ,
19+ RegisteredFunctionJobPatch ,
2020 RegisteredProjectFunctionJobPatch ,
2121 RegisteredSolverFunctionJobPatch ,
2222 SolverFunctionJob ,
@@ -333,6 +333,7 @@ async def patch_registered_function_job(
333333 solver_job_id : SolverJobID | None = None ,
334334 ) -> RegisteredFunctionJob :
335335 # Only allow one of project_job_id or solver_job_id depending on function_class
336+ patch : RegisteredFunctionJobPatch
336337 if function_class == FunctionClass .PROJECT :
337338 patch = RegisteredProjectFunctionJobPatch (
338339 title = None ,
@@ -430,46 +431,18 @@ async def run_function(
430431 async def map_function (
431432 self ,
432433 * ,
434+ job_creation_task_id : TaskID | None ,
433435 function : RegisteredFunction ,
434- function_inputs_list : FunctionInputsList ,
436+ job_inputs : list [ JobInputs ] ,
435437 job_links : JobLinks ,
436438 pricing_spec : JobPricingSpecification | None ,
437439 x_simcore_parent_project_uuid : ProjectID | None ,
438440 x_simcore_parent_node_id : NodeID | None ,
439441 ) -> RegisteredFunctionJobCollection :
440442
441- job_inputs = [
442- await self .create_registered_function_job (
443- function = function ,
444- function_inputs = inputs ,
445- )
446- for inputs in function_inputs_list
447- ]
448-
449- function_jobs = [
450- await self .run_function (
451- function = function ,
452- job_inputs = inputs ,
453- pricing_spec = pricing_spec ,
454- job_links = job_links ,
455- x_simcore_parent_project_uuid = x_simcore_parent_project_uuid ,
456- x_simcore_parent_node_id = x_simcore_parent_node_id ,
457- )
458- for inputs in job_inputs
459- ]
460-
461- function_job_collection_description = f"Function job collection of map of function { function .uid } with { len (function_inputs_list )} inputs"
462- return await self ._web_rpc_client .register_function_job_collection (
463- function_job_collection = FunctionJobCollection (
464- title = "Function job collection of function map" ,
465- description = function_job_collection_description ,
466- job_ids = [function_job .uid for function_job in function_jobs ],
467- ),
468- user_id = self .user_id ,
469- product_name = self .product_name ,
470- )
471443 function_jobs = [
472444 await self .run_function (
445+ job_creation_task_id = job_creation_task_id ,
473446 function = function ,
474447 job_inputs = inputs ,
475448 pricing_spec = pricing_spec ,
@@ -480,7 +453,7 @@ async def map_function(
480453 for inputs in job_inputs
481454 ]
482455
483- function_job_collection_description = f"Function job collection of map of function { function .uid } with { len (function_inputs_list )} inputs"
456+ function_job_collection_description = f"Function job collection of map of function { function .uid } with { len (job_inputs )} inputs"
484457 return await self ._web_rpc_client .register_function_job_collection (
485458 function_job_collection = FunctionJobCollection (
486459 title = "Function job collection of function map" ,
0 commit comments