def _parse_task_from_advanced_binding_str(b): """ Raw form455 pbsmrtpipe.tasks.task_id.0 Advanced form to specific multiple instances of task pbsmrtpipe.tasks.input_xml_to_fofn:1:0 task_id:instance_id:in_out_index :rtype: int """ m = GlobalConstants.RX_BINDING_TASK_ADVANCED.match(b) if m is None: raise MalformedBindingStrError( "Binding '{b}' expected to match {x}.'".format( b=b, x=GlobalConstants.RX_BINDING_TASK_ADVANCED.pattern)) else: namespace_, task_id_, instance_id, in_out_index = m.groups() task_id = ".".join([namespace_, 'tasks', task_id_]) return task_id, int(instance_id), int(in_out_index)
def _parse_task_from_binding_str(s): """ Task id from task binding format from a simple format (no instance id) pbsmrtpipe.tasks.input_xml_to_fofn:0 """ m = GlobalConstants.RX_BINDING_TASK.match(s) if m is None: raise MalformedBindingStrError("Binding '{b}' expected to match {x}.'".format(b=s, x=GlobalConstants.RX_BINDING_TASK.pattern)) namespace_, task_id_, in_out_index = m.groups() task_id = ".".join([namespace_, 'tasks', task_id_]) return task_id, int(in_out_index)