INNER CODE UNIT · Rust
get_snapshots
HemantKArya/BloomeeTunes · rust/src/api/downloader/mod.rs:265
pub fn get_snapshots(&self) -> Vec<DownloadTaskSnapshot> {
let Ok(guard) = self.tasks.read() else { return Vec::new() };
guard
.values()
.filter_map(|t| t.lock().ok())
.map(|g| DownloadTaskSnapshot::from_persisted(&g.persisted))
.collect()
}
/// Signal a running download to pause. Returns `false` if the task does not exist.
pub async fn pause_task(&self, task_id: String) -> bool {
let Some(task) = self.get_task(&task_id) else { return false };
if let Ok(g) = task.lock() {
g.pause_requested.store(true, Ordering::Release);
}
true
}