INNER CODE UNIT · Rust

Some

HemantKArya/BloomeeTunes · rust/src/api/downloader/mod.rs:472

        if let Some(task) = self.get_task(task_id) {
            if let Ok(mut g) = task.lock() {
                let total = update.total_bytes;
                let bytes = update.bytes_downloaded;
                g.persisted.state = update.state.clone();
                g.persisted.bytes_downloaded = bytes;
                g.persisted.total_bytes = total;
                g.persisted.progress = total
                    .filter(|&t| t > 0)
                    .map(|t| (bytes as f64 / t as f64).clamp(0.0, 1.0))
                    .unwrap_or_else(|| match update.state {
                        DownloadTaskState::CompletedPendingAck => 1.0,
                        _ => 0.0,
                    });
                g.persisted.message = Some(update.message.clone());
                if let Some(w) = &update.warning {
                    g.persisted.last_error = Some(w.clone());
                }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…