use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DescribeClustersRequest {
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_identifier: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub max_records: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub marker: Option<String>,
}
impl DescribeClustersRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster_identifier: Some("test-cluster_identifier".into()),
max_records: Some(100),
marker: Some("test-marker".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DescribeClustersResponse {
#[serde(default)]
#[serde(skip_serializing_if = "Vec::is_empty")]
pub clusters: Vec<Cluster>,
#[serde(skip_serializing_if = "Option::is_none")]
pub marker: Option<String>,
}
impl DescribeClustersResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
clusters: vec![],
marker: Some("test-marker".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct Cluster {
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_identifier: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub node_type: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_status: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_availability_status: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub master_username: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub endpoint: Option<Endpoint>,
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_create_time: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub number_of_nodes: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub publicly_accessible: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub encrypted: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub vpc_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub availability_zone: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub preferred_maintenance_window: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_version: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub allow_version_upgrade: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub automated_snapshot_retention_period: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub manual_snapshot_retention_period: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub kms_key_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub enhanced_vpc_routing: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_namespace_arn: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub total_storage_capacity_in_mega_bytes: Option<i64>,
}
impl Cluster {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster_identifier: Some("test-cluster_identifier".into()),
node_type: Some("test-node_type".into()),
cluster_status: Some("test-cluster_status".into()),
cluster_availability_status: Some("test-cluster_availability_status".into()),
master_username: Some("test-master_username".into()),
endpoint: Some(Endpoint::fixture()),
cluster_create_time: Some("test-cluster_create_time".into()),
number_of_nodes: Some(100),
publicly_accessible: Some(false),
encrypted: Some(false),
vpc_id: Some("test-vpc_id".into()),
availability_zone: Some("test-availability_zone".into()),
preferred_maintenance_window: Some("test-preferred_maintenance_window".into()),
cluster_version: Some("test-cluster_version".into()),
allow_version_upgrade: Some(false),
automated_snapshot_retention_period: Some(100),
manual_snapshot_retention_period: Some(100),
kms_key_id: Some("test-kms_key_id".into()),
enhanced_vpc_routing: Some(false),
cluster_namespace_arn: Some("test-cluster_namespace_arn".into()),
total_storage_capacity_in_mega_bytes: Some(100),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct Endpoint {
#[serde(skip_serializing_if = "Option::is_none")]
pub address: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub port: Option<i32>,
}
impl Endpoint {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
address: Some("test-address".into()),
port: Some(100),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct PauseClusterRequest {
pub cluster_identifier: String,
}
impl PauseClusterRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster_identifier: "test-cluster_identifier".into(),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct PauseClusterResponse {
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster: Option<Cluster>,
}
impl PauseClusterResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster: Some(Cluster::fixture()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ResumeClusterRequest {
pub cluster_identifier: String,
}
impl ResumeClusterRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster_identifier: "test-cluster_identifier".into(),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ResumeClusterResponse {
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster: Option<Cluster>,
}
impl ResumeClusterResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster: Some(Cluster::fixture()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ResizeClusterRequest {
pub cluster_identifier: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_type: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub node_type: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub number_of_nodes: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub classic: Option<bool>,
}
impl ResizeClusterRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster_identifier: "test-cluster_identifier".into(),
cluster_type: Some("test-cluster_type".into()),
node_type: Some("test-node_type".into()),
number_of_nodes: Some(100),
classic: Some(false),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ResizeClusterResponse {
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster: Option<Cluster>,
}
impl ResizeClusterResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster: Some(Cluster::fixture()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DeleteClusterRequest {
pub cluster_identifier: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub skip_final_cluster_snapshot: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub final_cluster_snapshot_identifier: Option<String>,
}
impl DeleteClusterRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster_identifier: "test-cluster_identifier".into(),
skip_final_cluster_snapshot: Some(false),
final_cluster_snapshot_identifier: Some(
"test-final_cluster_snapshot_identifier".into(),
),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DeleteClusterResponse {
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster: Option<Cluster>,
}
impl DeleteClusterResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
cluster: Some(Cluster::fixture()),
}
}
}