comdirect_rest_api/oauth2/
config.rs1use std::fmt;
2use std::future::Future;
3use std::pin::Pin;
4use std::sync::Arc;
5
6#[derive(Clone)]
8pub struct ComdirectConfig {
9 pub user: String,
11 pub password: String,
13 pub client_id: String,
15 pub client_secret: String,
17 pub on_refresh_token: Option<Arc<dyn Fn(String) + Send + Sync>>,
20 pub on_awaits_user_confirm:
23 Arc<dyn Fn() -> Pin<Box<dyn Future<Output = ()> + Send>> + Send + Sync>,
24}
25
26impl fmt::Debug for ComdirectConfig {
27 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
28 f.debug_struct("ComdirectConfig")
29 .field("user", &self.user)
30 .field("client_id", &self.client_id)
31 .field("has_password", &!self.password.is_empty())
32 .field("has_client_secret", &!self.client_secret.is_empty())
33 .field("has_refresh_callback", &self.on_refresh_token.is_some())
34 .finish()
35 }
36}