#[derive(Clone, Debug, Eq, PartialEq)]
pub enum Auth {
Apikey(String),
Basic(String, String),
None,
}
impl Auth {
pub fn api_key(apikey: impl Into<String>) -> Self {
Self::Apikey(apikey.into())
}
pub fn basic(username: impl Into<String>, password: impl Into<String>) -> Self {
Self::Basic(username.into(), password.into())
}
}
impl std::fmt::Display for Auth {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Self::Apikey(_) => write!(f, "Apikey"),
Self::Basic(_, _) => write!(f, "Basic"),
Self::None => write!(f, "None"),
}
}
}