INNER CODE UNIT · Rust
emit
HemantKArya/BloomeeTunes · rust/src/api/downloader/mod.rs:577
fn emit(&self, event: DownloadManagerEvent) {
if let Ok(mut hub) = self.event_hub.lock() {
hub.emit(event);
}
}
// ── Internal: manifest persistence ───────────────────────────────────────
/// Serialize all tasks and write atomically (temp-rename pattern).
/// Failures are silently swallowed — a missing manifest is handled on the
/// next `restore_tasks` call.
fn persist_manifest(&self) {
let tasks: Vec<PersistedDownloadTask> = match self.tasks.read() {
Ok(g) => g.values().filter_map(|t| t.lock().ok()).map(|g| g.persisted.clone()).collect(),
Err(_) => return,
};
if let Ok(json) = serde_json::to_string_pretty(&tasks) {