dlmgr 0.3.1

A multi-threaded file downloader.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use std::time::Duration;

pub trait ReqwestClientProvider: Send + Sync {
    fn client(&self) -> Result<reqwest::Client, reqwest::Error>;
}

#[derive(Clone)]
pub struct DefaultReqwestClientProvider;

impl ReqwestClientProvider for DefaultReqwestClientProvider {
    fn client(&self) -> Result<reqwest::Client, reqwest::Error> {
        reqwest::Client::builder()
            .redirect(reqwest::redirect::Policy::none())
            .connect_timeout(Duration::from_secs(20))
            .read_timeout(Duration::from_secs(8))
            .build()
    }
}