#[derive(Clone)]
pub struct Credential {
pub client_id: String,
pub client_secret: String,
}
impl Credential {
pub fn new(client_id: impl Into<String>, client_secret: impl Into<String>) -> Self {
Self {
client_id: client_id.into(),
client_secret: client_secret.into(),
}
}
}
impl std::fmt::Debug for Credential {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.debug_struct("Credential")
.field("client_id", &self.client_id)
.field("client_secret", &"***")
.finish()
}
}
impl std::fmt::Display for Credential {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "Credential(client_id={})", self.client_id)
}
}