From 4cb1078c9f31b31e26631ef893ebdfe4dcea5275 Mon Sep 17 00:00:00 2001 From: Scott Jackson Date: Tue, 29 Aug 2023 10:40:44 -0400 Subject: [PATCH] Add more error handlers --- dummy.go | 5 ----- src/main.rs | 18 +++++++++++++++++- 2 files changed, 17 insertions(+), 6 deletions(-) delete mode 100644 dummy.go diff --git a/dummy.go b/dummy.go deleted file mode 100644 index 773148e..0000000 --- a/dummy.go +++ /dev/null @@ -1,5 +0,0 @@ -package dummy - -func main() { - -} diff --git a/src/main.rs b/src/main.rs index bc12197..fa9994d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -8,6 +8,8 @@ use reqwest::StatusCode; enum Result { StatusCode(StatusCode), ConnectError(reqwest::Error), + TimeoutError(reqwest::Error), + RequestError(reqwest::Error), OtherError(reqwest::Error), None, } @@ -47,15 +49,29 @@ fn main() { Err(error) => { match previous_status_option { Result::ConnectError(_error) if error.is_connect() => {} + Result::TimeoutError(_error) if error.is_timeout() => {} + Result::RequestError(_error) if error.is_request() => {} _ => { if error.is_connect() { println!("Status changed to connection failed"); + } else if error.is_timeout() { + println!("Status changed to timed out"); + } else if error.is_request() { + println!("Status changed to request error"); } else { println!("Error: {}", error); } } } - previous_status_option = if error.is_connect() { Result::ConnectError(error) } else { Result::OtherError(error) } + previous_status_option = if error.is_connect() { + Result::ConnectError(error) + } else if error.is_timeout() { + Result::TimeoutError(error) + } else if error.is_request() { + Result::RequestError(error) + } else { + Result::OtherError(error) + } } } sleep(Duration::from_secs(5));