nvflare.apis.impl.send_manager module

class SendTaskManager(task: Task, send_order: SendOrder, task_assignment_timeout)[source]

Bases: TaskManager

Task manager for send controller.

Parameters:
  • task (Task) – an instance of Task

  • send_order (SendOrder) – the order of clients to receive task

  • task_assignment_timeout (int) – timeout value on a client requesting its task

check_task_exit(task: Task) Tuple[bool, TaskCompletionStatus][source]

Determine whether the task should exit.

Parameters:

task (Task) – an instance of Task

Tuple[bool, TaskCompletionStatus]:

first entry in the tuple means whether to exit the task or not. If it’s True, the task should exit. second entry in the tuple indicates the TaskCompletionStatus.

check_task_send(client_task: ClientTask, fl_ctx: FLContext) TaskCheckStatus[source]

Determine whether the task should be sent to the client.

Parameters:
  • client_task (ClientTask) – the task processing state of the client

  • fl_ctx (FLContext) – fl context that comes with the task request

Returns:

NO_BLOCK for not sending the task, BLOCK for waiting, SEND for OK to send

Return type:

TaskCheckStatus