diff --git a/examples/session-get.rs b/examples/session-get.rs index db180ce..e8b4193 100644 --- a/examples/session-get.rs +++ b/examples/session-get.rs @@ -10,11 +10,12 @@ async fn main() -> Result<()> { dotenv().ok(); env_logger::init(); let url = env::var("TURL")?; - let basic_auth = BasicAuth { - user: env::var("TUSER")?, - password: env::var("TPWD")?, - }; - let client = TransClient::with_auth(&url, basic_auth); + let client; + if let (Ok(user), Ok(password)) = (env::var("TUSER"), env::var("TPWD")) { + client = TransClient::with_auth(&url, BasicAuth {user, password}); + } else { + client = TransClient::new(&url); + } let response: Result> = client.session_get().await; match response { Ok(_) => println!("Yay!"), diff --git a/examples/torrent-action.rs b/examples/torrent-action.rs index e9aadc7..d247756 100644 --- a/examples/torrent-action.rs +++ b/examples/torrent-action.rs @@ -11,11 +11,12 @@ async fn main() -> Result<()> { dotenv().ok(); env_logger::init(); let url = env::var("TURL")?; - let basic_auth = BasicAuth { - user: env::var("TUSER")?, - password: env::var("TPWD")?, - }; - let client = TransClient::with_auth(&url, basic_auth); + let client; + if let (Ok(user), Ok(password)) = (env::var("TUSER"), env::var("TPWD")) { + client = TransClient::with_auth(&url, BasicAuth {user, password}); + } else { + client = TransClient::new(&url); + } let res1: RpcResponse = client.torrent_action(TorrentAction::Start, vec![Id::Id(1)]).await?; println!("Start result: {:?}", &res1.is_ok()); let res2: RpcResponse = client.torrent_action(TorrentAction::Stop, vec![Id::Id(1)]).await?; diff --git a/examples/torrent-add.rs b/examples/torrent-add.rs index e8f75ef..d8e327a 100644 --- a/examples/torrent-add.rs +++ b/examples/torrent-add.rs @@ -11,11 +11,12 @@ async fn main() -> Result<()> { dotenv().ok(); env_logger::init(); let url = env::var("TURL")?; - let basic_auth = BasicAuth { - user: env::var("TUSER")?, - password: env::var("TPWD")?, - }; - let client = TransClient::with_auth(&url, basic_auth); + let client; + if let (Ok(user), Ok(password)) = (env::var("TUSER"), env::var("TPWD")) { + client = TransClient::with_auth(&url, BasicAuth {user, password}); + } else { + client = TransClient::new(&url); + } let add: TorrentAddArgs = TorrentAddArgs { filename: Some("https://releases.ubuntu.com/20.04/ubuntu-20.04-desktop-amd64.iso.torrent".to_string()), ..TorrentAddArgs::default() diff --git a/examples/torrent-get.rs b/examples/torrent-get.rs index 41342ab..01c6b45 100644 --- a/examples/torrent-get.rs +++ b/examples/torrent-get.rs @@ -11,11 +11,12 @@ async fn main() -> Result<()> { dotenv().ok(); env_logger::init(); let url = env::var("TURL")?; - let basic_auth = BasicAuth { - user: env::var("TUSER")?, - password: env::var("TPWD")?, - }; - let client = TransClient::with_auth(&url, basic_auth); + let client; + if let (Ok(user), Ok(password)) = (env::var("TUSER"), env::var("TPWD")) { + client = TransClient::with_auth(&url, BasicAuth {user, password}); + } else { + client = TransClient::new(&url); + } let res: RpcResponse> = client.torrent_get(None, None).await?; let names: Vec<&String> = res diff --git a/examples/torrent-remove.rs b/examples/torrent-remove.rs index 898e886..9b8e2cc 100644 --- a/examples/torrent-remove.rs +++ b/examples/torrent-remove.rs @@ -11,11 +11,12 @@ async fn main() -> Result<()> { dotenv().ok(); env_logger::init(); let url = env::var("TURL")?; - let basic_auth = BasicAuth { - user: env::var("TUSER")?, - password: env::var("TPWD")?, - }; - let client = TransClient::with_auth(&url, basic_auth); + let client; + if let (Ok(user), Ok(password)) = (env::var("TUSER"), env::var("TPWD")) { + client = TransClient::with_auth(&url, BasicAuth {user, password}); + } else { + client = TransClient::new(&url); + } let res: RpcResponse = client.torrent_remove(vec![Id::Id(1)], false).await?; println!("Remove result: {:?}", &res.is_ok()); diff --git a/examples/torrent-set-location.rs b/examples/torrent-set-location.rs index 61a204d..881f25c 100644 --- a/examples/torrent-set-location.rs +++ b/examples/torrent-set-location.rs @@ -11,11 +11,12 @@ async fn main() -> Result<()> { dotenv().ok(); env_logger::init(); let url = env::var("TURL")?; - let basic_auth = BasicAuth { - user: env::var("TUSER")?, - password: env::var("TPWD")?, - }; - let client = TransClient::with_auth(&url, basic_auth); + let client; + if let (Ok(user), Ok(password)) = (env::var("TUSER"), env::var("TPWD")) { + client = TransClient::with_auth(&url, BasicAuth {user, password}); + } else { + client = TransClient::new(&url); + } let res: RpcResponse = client.torrent_set_location( vec![Id::Id(1)], String::from("/new/location"), diff --git a/src/lib.rs b/src/lib.rs index be8fa0f..f01d56a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -157,7 +157,7 @@ impl TransClient { /// &it.name.as_ref().unwrap()) /// ).collect(); /// println!("{:#?}", info); - /// + /// /// Ok(()) /// } /// ``` @@ -197,7 +197,7 @@ impl TransClient { /// println!("Start result: {:?}", &res1.is_ok()); /// let res2: RpcResponse = client.torrent_action(TorrentAction::Stop, vec![Id::Id(1)]).await?; /// println!("Stop result: {:?}", &res2.is_ok()); - /// + /// /// Ok(()) /// } /// ``` @@ -235,7 +235,7 @@ impl TransClient { /// let client = TransClient::with_auth(&url, basic_auth); /// let res: RpcResponse = client.torrent_remove(vec![Id::Id(1)], false).await?; /// println!("Remove result: {:?}", &res.is_ok()); - /// + /// /// Ok(()) /// } /// ``` @@ -319,7 +319,7 @@ impl TransClient { /// let res: RpcResponse = client.torrent_add(add).await?; /// println!("Add result: {:?}", &res.is_ok()); /// println!("response: {:?}", &res); - /// + /// /// Ok(()) /// } /// ``` @@ -380,11 +380,12 @@ mod tests { dotenv().ok(); env_logger::init(); let url = env::var("TURL")?; - let basic_auth = BasicAuth { - user: env::var("TUSER")?, - password: env::var("TPWD")?, - }; - let client = TransClient::with_auth(&url, basic_auth); + let client; + if let (Ok(user), Ok(password)) = (env::var("TUSER"), env::var("TPWD")) { + client = TransClient::with_auth(&url, BasicAuth {user, password}); + } else { + client = TransClient::new(&url); + } info!("Client is ready!"); let add: TorrentAddArgs = TorrentAddArgs { filename: Some(