From bbeb0256f135a2a8367a446afec0423f72927766 Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Fri, 25 Sep 2020 16:13:19 +0200 Subject: [PATCH] server/worker_task: factor out task list rendering we will need this later again Signed-off-by: Dominik Csapak --- src/server/worker_task.rs | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/src/server/worker_task.rs b/src/server/worker_task.rs index 771e8447..e6145cf8 100644 --- a/src/server/worker_task.rs +++ b/src/server/worker_task.rs @@ -413,15 +413,7 @@ fn update_active_workers(new_upid: Option<&UPID>) -> Result, E } }); - let mut raw = String::new(); - for info in &task_list { - if let Some(status) = &info.state { - raw.push_str(&format!("{} {:08X} {}\n", info.upid_str, status.endtime(), status)); - } else { - raw.push_str(&info.upid_str); - raw.push('\n'); - } - } + let raw = render_task_list(&task_list[..]); replace_file( PROXMOX_BACKUP_ACTIVE_TASK_FN, @@ -443,6 +435,26 @@ pub fn read_task_list() -> Result, Error> { update_active_workers(None) } +fn render_task_line(info: &TaskListInfo) -> String { + let mut raw = String::new(); + if let Some(status) = &info.state { + raw.push_str(&format!("{} {:08X} {}\n", info.upid_str, status.endtime(), status)); + } else { + raw.push_str(&info.upid_str); + raw.push('\n'); + } + + raw +} + +fn render_task_list(list: &[TaskListInfo]) -> String { + let mut raw = String::new(); + for info in list { + raw.push_str(&render_task_line(&info)); + } + raw +} + /// Launch long running worker tasks. /// /// A worker task can either be a whole thread, or a simply tokio