use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DescribeFileSystemsRequest {
#[serde(skip_serializing_if = "Option::is_none")]
pub max_items: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub marker: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub file_system_id: Option<String>,
}
impl DescribeFileSystemsRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
max_items: Some(100),
marker: Some("test-marker".into()),
file_system_id: Some("test-file_system_id".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DescribeFileSystemsResponse {
#[serde(default)]
#[serde(skip_serializing_if = "Vec::is_empty")]
pub file_systems: Vec<FileSystemDescription>,
#[serde(skip_serializing_if = "Option::is_none")]
pub next_marker: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub marker: Option<String>,
}
impl DescribeFileSystemsResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
file_systems: vec![],
next_marker: Some("test-next_marker".into()),
marker: Some("test-marker".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct FileSystemDescription {
pub owner_id: String,
pub file_system_id: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub file_system_arn: Option<String>,
pub creation_time: String,
pub life_cycle_state: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
pub number_of_mount_targets: i32,
pub performance_mode: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub encrypted: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub kms_key_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub throughput_mode: Option<String>,
#[serde(default)]
pub tags: Vec<Tag>,
}
impl FileSystemDescription {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
owner_id: "test-owner_id".into(),
file_system_id: "test-file_system_id".into(),
file_system_arn: Some("test-file_system_arn".into()),
creation_time: "test-creation_time".into(),
life_cycle_state: "test-life_cycle_state".into(),
name: Some("test-name".into()),
number_of_mount_targets: 100,
performance_mode: "test-performance_mode".into(),
encrypted: Some(false),
kms_key_id: Some("test-kms_key_id".into()),
throughput_mode: Some("test-throughput_mode".into()),
tags: vec![],
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct Tag {
pub key: String,
pub value: String,
}
impl Tag {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
key: "test-key".into(),
value: "test-value".into(),
}
}
}