use crate::models;
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct Actions {
#[serde(rename = "#Volume.AssignReplicaTarget")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_assign_replica_target: Option<models::volume::v1_8_0::AssignReplicaTarget>,
#[serde(rename = "#Volume.ChangeRAIDLayout")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_change_raid_layout: Option<models::volume::v1_8_0::ChangeRAIDLayout>,
#[serde(rename = "#Volume.CheckConsistency")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_check_consistency: Option<models::volume::v1_8_0::CheckConsistency>,
#[serde(rename = "#Volume.CreateReplicaTarget")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_create_replica_target: Option<models::volume::v1_8_0::CreateReplicaTarget>,
#[serde(rename = "#Volume.ForceEnable")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_force_enable: Option<models::volume::v1_8_0::ForceEnable>,
#[serde(rename = "#Volume.Initialize")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_initialize: Option<models::volume::v1_8_0::Initialize>,
#[serde(rename = "#Volume.RemoveReplicaRelationship")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_remove_replica_relationship: Option<models::volume::v1_8_0::RemoveReplicaRelationship>,
#[serde(rename = "#Volume.ResumeReplication")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_resume_replication: Option<models::volume::v1_8_0::ResumeReplication>,
#[serde(rename = "#Volume.ReverseReplicationRelationship")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_reverse_replication_relationship: Option<models::volume::v1_8_0::ReverseReplicationRelationship>,
#[serde(rename = "#Volume.SplitReplication")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_split_replication: Option<models::volume::v1_8_0::SplitReplication>,
#[serde(rename = "#Volume.SuspendReplication")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volume_suspend_replication: Option<models::volume::v1_8_0::SuspendReplication>,
#[serde(rename = "Oem")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub oem: Option<models::volume::v1_8_0::OemActions>,
}
impl crate::Metadata<'static> for Actions {
const JSON_SCHEMA: &'static str = "Volume.v1_8_0.json";
}