use crate::ism;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Action {
#[serde(rename = "custom", default, skip_serializing_if = "Option::is_none")]
pub custom: Option<ism::ActionCustom>,
#[serde(rename = "replica_count", default, skip_serializing_if = "Option::is_none")]
pub replica_count: Option<ism::ActionReplicaCount>,
#[serde(rename = "index_priority", default, skip_serializing_if = "Option::is_none")]
pub index_priority: Option<ism::ActionIndexPriority>,
#[serde(rename = "read_write", default, skip_serializing_if = "Option::is_none")]
pub read_write: Option<ism::ActionReadWrite>,
#[serde(rename = "read_only", default, skip_serializing_if = "Option::is_none")]
pub read_only: Option<ism::ActionReadOnly>,
#[serde(rename = "transform", default, skip_serializing_if = "Option::is_none")]
pub transform: Option<ism::ActionTransform>,
#[serde(rename = "retry", default, skip_serializing_if = "Option::is_none")]
pub retry: Option<ism::ActionRetry>,
#[serde(rename = "rollup", default, skip_serializing_if = "Option::is_none")]
pub rollup: Option<ism::ActionRollup>,
#[serde(rename = "shrink", default, skip_serializing_if = "Option::is_none")]
pub shrink: Option<ism::ActionShrink>,
#[serde(rename = "allocation", default, skip_serializing_if = "Option::is_none")]
pub allocation: Option<ism::ActionAllocation>,
#[serde(rename = "close", default, skip_serializing_if = "Option::is_none")]
pub close: Option<ism::ActionClose>,
#[serde(rename = "rollover", default, skip_serializing_if = "Option::is_none")]
pub rollover: Option<ism::ActionRollover>,
#[serde(rename = "alias", default, skip_serializing_if = "Option::is_none")]
pub alias: Option<ism::ActionAlias>,
#[serde(rename = "snapshot", default, skip_serializing_if = "Option::is_none")]
pub snapshot: Option<ism::ActionSnapshot>,
#[serde(rename = "delete", default, skip_serializing_if = "Option::is_none")]
pub delete: Option<ism::ActionDelete>,
#[serde(rename = "open", default, skip_serializing_if = "Option::is_none")]
pub open: Option<ism::ActionOpen>,
#[serde(rename = "timeout", default, skip_serializing_if = "Option::is_none")]
pub timeout: Option<ism::ActionTimeout>,
#[serde(rename = "force_merge", default, skip_serializing_if = "Option::is_none")]
pub force_merge: Option<ism::ActionForceMerge>,
#[serde(rename = "notification", default, skip_serializing_if = "Option::is_none")]
pub notification: Option<ism::ActionNotification>,
}
impl Action {
pub fn new() -> Action {
Action {
custom: None,
replica_count: None,
index_priority: None,
read_write: None,
read_only: None,
transform: None,
retry: None,
rollup: None,
shrink: None,
allocation: None,
close: None,
rollover: None,
alias: None,
snapshot: None,
delete: None,
open: None,
timeout: None,
force_merge: None,
notification: None,
}
}
}