use dragonfly_client_request::{PreheatImageRequest, PreheatRequest, Proxy, Request};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let args: Vec<String> = std::env::args().collect();
if args.len() != 4 || (args[2] != "file" && args[2] != "image") {
eprintln!(
"usage: {} <scheduler-endpoint> file|image <url-or-image>",
args[0]
);
std::process::exit(1);
}
let proxy = Proxy::builder()
.scheduler_endpoint(args[1].clone())
.build()
.await?;
match args[2].as_str() {
"file" => {
proxy
.preheat(&PreheatRequest {
url: args[3].clone(),
..Default::default()
})
.await?
}
_ => {
proxy
.preheat_image(&PreheatImageRequest {
image: args[3].clone(),
..Default::default()
})
.await?
}
}
Ok(())
}