use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct RolloverConditions {
#[serde(
rename = "min_primary_shard_size",
default,
skip_serializing_if = "Option::is_none"
)]
pub min_primary_shard_size: Option<String>,
#[serde(rename = "min_docs", default, skip_serializing_if = "Option::is_none")]
pub min_docs: Option<u32>,
#[serde(rename = "max_age", default, skip_serializing_if = "Option::is_none")]
pub max_age: Option<String>,
#[serde(rename = "max_size", default, skip_serializing_if = "Option::is_none")]
pub max_size: Option<String>,
#[serde(
rename = "max_size_bytes",
default,
skip_serializing_if = "Option::is_none"
)]
pub max_size_bytes: Option<u32>,
#[serde(
rename = "min_primary_shard_docs",
default,
skip_serializing_if = "Option::is_none"
)]
pub min_primary_shard_docs: Option<u32>,
#[serde(
rename = "max_primary_shard_size_bytes",
default,
skip_serializing_if = "Option::is_none"
)]
pub max_primary_shard_size_bytes: Option<u32>,
#[serde(
rename = "max_primary_shard_docs",
default,
skip_serializing_if = "Option::is_none"
)]
pub max_primary_shard_docs: Option<u32>,
#[serde(
rename = "min_primary_shard_size_bytes",
default,
skip_serializing_if = "Option::is_none"
)]
pub min_primary_shard_size_bytes: Option<u32>,
#[serde(rename = "min_age", default, skip_serializing_if = "Option::is_none")]
pub min_age: Option<String>,
#[serde(
rename = "min_size_bytes",
default,
skip_serializing_if = "Option::is_none"
)]
pub min_size_bytes: Option<u32>,
#[serde(rename = "max_docs", default, skip_serializing_if = "Option::is_none")]
pub max_docs: Option<u32>,
#[serde(
rename = "max_age_millis",
default,
skip_serializing_if = "Option::is_none"
)]
pub max_age_millis: Option<String>,
#[serde(rename = "min_size", default, skip_serializing_if = "Option::is_none")]
pub min_size: Option<String>,
#[serde(
rename = "max_primary_shard_size",
default,
skip_serializing_if = "Option::is_none"
)]
pub max_primary_shard_size: Option<String>,
}
impl RolloverConditions {
pub fn new() -> RolloverConditions {
RolloverConditions {
min_primary_shard_size: None,
min_docs: None,
max_age: None,
max_size: None,
max_size_bytes: None,
min_primary_shard_docs: None,
max_primary_shard_size_bytes: None,
max_primary_shard_docs: None,
min_primary_shard_size_bytes: None,
min_age: None,
min_size_bytes: None,
max_docs: None,
max_age_millis: None,
min_size: None,
max_primary_shard_size: None,
}
}
}