#![allow(clippy::print_stdout, clippy::print_stderr)]
use nsip::{Error, NsipClient};
#[tokio::main]
async fn main() -> Result<(), nsip::Error> {
let client = NsipClient::builder()
.base_url("http://nsipsearch.nsip.org/api")
.timeout_secs(60)
.max_retries(5)
.build()?;
match NsipClient::builder().timeout_secs(60).build() {
Ok(client) => {
let groups = client.breed_groups().await?;
println!("Fetched {} breed groups", groups.len());
},
Err(Error::Connection { message, .. }) => {
eprintln!("Failed to create HTTP client: {message}");
},
Err(e) => {
eprintln!("Unexpected error: {e}");
},
}
let updated = client.date_last_updated().await?;
println!("Database last updated: {:?}", updated.data);
Ok(())
}