mirror of
https://github.com/jht5945/buildj.git
synced 2025-12-27 17:20:06 +08:00
add verbose
This commit is contained in:
16
src/http.rs
16
src/http.rs
@@ -4,19 +4,35 @@ use std::{
|
||||
|
||||
use rust_util::{
|
||||
util_io::copy_io,
|
||||
util_msg::{
|
||||
print_message,
|
||||
MessageType,
|
||||
},
|
||||
XResult,
|
||||
};
|
||||
|
||||
use super::misc::*;
|
||||
|
||||
pub fn download_url(url: &str, dest: &mut File) -> XResult<()> {
|
||||
let verbose = is_verbose();
|
||||
if verbose {
|
||||
print_message(MessageType::INFO, &format!("Download URL: {}", url));
|
||||
}
|
||||
let mut response = reqwest::get(url)?;
|
||||
let header_content_length: i64 = match response.headers().get("content-length") {
|
||||
None => -1,
|
||||
Some(len_value) => len_value.to_str().unwrap().parse::<i64>().unwrap(),
|
||||
};
|
||||
if verbose {
|
||||
print_message(MessageType::INFO, &format!("Content-Length: {}", header_content_length));
|
||||
}
|
||||
copy_io(&mut response, dest, header_content_length)?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub fn get_url(url: &str) -> XResult<String> {
|
||||
if is_verbose() {
|
||||
print_message(MessageType::INFO, &format!("Get URL: {}", url));
|
||||
}
|
||||
Ok(reqwest::get(url)?.text()?)
|
||||
}
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
|
||||
use std::env;
|
||||
|
||||
pub fn print_usage() {
|
||||
print!(r#"
|
||||
buildj ::: - print this message
|
||||
@@ -12,3 +14,9 @@ buildj - run build, run assigned
|
||||
"#);
|
||||
}
|
||||
|
||||
pub fn is_verbose() -> bool {
|
||||
match env::var("BUILDJ_VERBOSE") {
|
||||
Err(_) => false,
|
||||
Ok(v) => (v == "TRUE" || v == "true" || v == "1"),
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user