use crate::models;
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct Links {
#[serde(rename = "CacheDataVolumes")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cache_data_volumes: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "CacheDataVolumes@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cache_data_volumes_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "CacheVolumeSource")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cache_volume_source: Option<models::odata_v4::IdRef>,
#[serde(rename = "ClassOfService")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub class_of_service: Option<models::odata_v4::IdRef>,
#[serde(rename = "ClientEndpoints")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub client_endpoints: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "ClientEndpoints@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub client_endpoints_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "ConsistencyGroups")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub consistency_groups: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "ConsistencyGroups@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub consistency_groups_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "DedicatedSpareDrives")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub dedicated_spare_drives: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "DedicatedSpareDrives@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub dedicated_spare_drives_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "Drives")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub drives: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "Drives@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub drives_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "JournalingMedia")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub journaling_media: Option<models::odata_v4::IdRef>,
#[serde(rename = "Oem")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub oem: Option<models::resource::Oem>,
#[serde(rename = "OwningStorageResource")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub owning_storage_resource: Option<models::odata_v4::IdRef>,
#[serde(rename = "OwningStorageService")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub owning_storage_service: Option<models::odata_v4::IdRef>,
#[serde(rename = "ServerEndpoints")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub server_endpoints: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "ServerEndpoints@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub server_endpoints_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "SpareResourceSets")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub spare_resource_sets: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "SpareResourceSets@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub spare_resource_sets_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "StorageGroups")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub storage_groups: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "StorageGroups@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub storage_groups_odata_count: Option<models::odata_v4::Count>,
}
impl crate::Metadata<'static> for Links {
const JSON_SCHEMA: &'static str = "Volume.v1_8_0.json";
}