use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum SamlNameIdPolicyEnum {
#[serde(rename = "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress")]
UrnColonOasisColonNamesColonTcColonSamlColon11ColonNameidFormatColonEmailAddress,
#[serde(rename = "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent")]
UrnColonOasisColonNamesColonTcColonSamlColon20ColonNameidFormatColonPersistent,
#[serde(rename = "urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName")]
UrnColonOasisColonNamesColonTcColonSamlColon11ColonNameidFormatColonX509SubjectName,
#[serde(rename = "urn:oasis:names:tc:SAML:2.0:nameid-format:WindowsDomainQualifiedName")]
UrnColonOasisColonNamesColonTcColonSamlColon20ColonNameidFormatColonWindowsDomainQualifiedName,
#[serde(rename = "urn:oasis:names:tc:SAML:2.0:nameid-format:transient")]
UrnColonOasisColonNamesColonTcColonSamlColon20ColonNameidFormatColonTransient,
#[serde(rename = "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified")]
UrnColonOasisColonNamesColonTcColonSamlColon11ColonNameidFormatColonUnspecified,
}
impl std::fmt::Display for SamlNameIdPolicyEnum {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::UrnColonOasisColonNamesColonTcColonSamlColon11ColonNameidFormatColonEmailAddress => {
write!(f, "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress")
}
Self::UrnColonOasisColonNamesColonTcColonSamlColon20ColonNameidFormatColonPersistent => {
write!(f, "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent")
}
Self::UrnColonOasisColonNamesColonTcColonSamlColon11ColonNameidFormatColonX509SubjectName => {
write!(f, "urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName")
}
Self::UrnColonOasisColonNamesColonTcColonSamlColon20ColonNameidFormatColonWindowsDomainQualifiedName => {
write!(
f,
"urn:oasis:names:tc:SAML:2.0:nameid-format:WindowsDomainQualifiedName"
)
}
Self::UrnColonOasisColonNamesColonTcColonSamlColon20ColonNameidFormatColonTransient => {
write!(f, "urn:oasis:names:tc:SAML:2.0:nameid-format:transient")
}
Self::UrnColonOasisColonNamesColonTcColonSamlColon11ColonNameidFormatColonUnspecified => {
write!(f, "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified")
}
}
}
}
impl Default for SamlNameIdPolicyEnum {
fn default() -> SamlNameIdPolicyEnum {
Self::UrnColonOasisColonNamesColonTcColonSamlColon11ColonNameidFormatColonEmailAddress
}
}