use crate::indices;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct IndexErrorCause {
#[serde(
rename = "resource.id",
default,
skip_serializing_if = "Option::is_none"
)]
pub resource_id: Option<String>,
#[serde(rename = "type")]
pub r#type: String,
#[serde(rename = "index", default, skip_serializing_if = "Option::is_none")]
pub index: Option<String>,
#[serde(
rename = "index_uuid",
default,
skip_serializing_if = "Option::is_none"
)]
pub index_uuid: Option<String>,
#[serde(rename = "reason", default, skip_serializing_if = "Option::is_none")]
pub reason: Option<String>,
#[serde(
rename = "resource.type",
default,
skip_serializing_if = "Option::is_none"
)]
pub resource_type: Option<String>,
#[serde(
rename = "root_cause",
default,
skip_serializing_if = "Option::is_none"
)]
pub root_cause: Option<Vec<indices::IndexErrorCause>>,
}
impl IndexErrorCause {
pub fn new(r#type: String) -> IndexErrorCause {
IndexErrorCause {
resource_id: None,
r#type,
index: None,
index_uuid: None,
reason: None,
resource_type: None,
root_cause: None,
}
}
}