use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ReadContextDetailsAttachedPoliciesInner {
#[serde(rename = "policyID")]
pub policy_id: String,
#[serde(rename = "policyName")]
pub policy_name: String,
#[serde(rename = "imported")]
pub imported: bool,
#[serde(rename = "sourceDomainID", skip_serializing_if = "Option::is_none")]
pub source_domain_id: Option<String>,
#[serde(rename = "sourceDomainName", skip_serializing_if = "Option::is_none")]
pub source_domain_name: Option<String>,
#[serde(rename = "status", skip_serializing_if = "Option::is_none")]
pub status: Option<Status>,
#[serde(rename = "statusSource", skip_serializing_if = "Option::is_none")]
pub status_source: Option<StatusSource>,
}
impl ReadContextDetailsAttachedPoliciesInner {
pub fn new(policy_id: String, policy_name: String, imported: bool) -> ReadContextDetailsAttachedPoliciesInner {
ReadContextDetailsAttachedPoliciesInner {
policy_id,
policy_name,
imported,
source_domain_id: None,
source_domain_name: None,
status: None,
status_source: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Status {
#[serde(rename = "Attached")]
Attached,
#[serde(rename = "NotAttached")]
NotAttached,
#[serde(rename = "Unavailable")]
Unavailable,
}
impl Default for Status {
fn default() -> Status {
Self::Attached
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum StatusSource {
#[serde(rename = "Default")]
Default,
#[serde(rename = "PeerDefault")]
PeerDefault,
#[serde(rename = "PeerContextConfiguration")]
PeerContextConfiguration,
#[serde(rename = "ContextConfiguration")]
ContextConfiguration,
#[serde(rename = "NoConfiguration")]
NoConfiguration,
}
impl Default for StatusSource {
fn default() -> StatusSource {
Self::Default
}
}