use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ListStreamsInput {
#[serde(skip_serializing_if = "Option::is_none")]
pub limit: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub next_token: Option<String>,
}
impl ListStreamsInput {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
limit: Some(100),
next_token: Some("test-next_token".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ListStreamsOutput {
#[serde(default)]
pub stream_names: Vec<String>,
#[serde(default)]
#[serde(skip_serializing_if = "Vec::is_empty")]
pub stream_summaries: Vec<StreamSummary>,
#[serde(skip_serializing_if = "Option::is_none")]
pub next_token: Option<String>,
#[serde(default)]
pub has_more_streams: bool,
}
impl ListStreamsOutput {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
stream_names: vec![],
stream_summaries: vec![],
next_token: Some("test-next_token".into()),
has_more_streams: false,
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct StreamSummary {
pub stream_name: String,
pub stream_arn: String,
pub stream_status: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub stream_mode_details: Option<StreamModeDetails>,
#[serde(skip_serializing_if = "Option::is_none")]
pub stream_creation_timestamp: Option<f64>,
}
impl StreamSummary {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
stream_name: "test-stream_name".into(),
stream_arn: "test-stream_arn".into(),
stream_status: "test-stream_status".into(),
stream_mode_details: Some(StreamModeDetails::fixture()),
..Default::default()
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DescribeStreamSummaryInput {
#[serde(skip_serializing_if = "Option::is_none")]
pub stream_name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub stream_arn: Option<String>,
}
impl DescribeStreamSummaryInput {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
stream_name: Some("test-stream_name".into()),
stream_arn: Some("test-stream_arn".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DescribeStreamSummaryOutput {
pub stream_description_summary: StreamDescriptionSummary,
}
impl DescribeStreamSummaryOutput {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
stream_description_summary: StreamDescriptionSummary::fixture(),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct StreamDescriptionSummary {
pub stream_name: String,
pub stream_arn: String,
pub stream_status: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub stream_mode_details: Option<StreamModeDetails>,
pub retention_period_hours: i32,
pub stream_creation_timestamp: f64,
pub open_shard_count: i32,
#[serde(skip_serializing_if = "Option::is_none")]
pub consumer_count: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub encryption_type: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub key_id: Option<String>,
}
impl StreamDescriptionSummary {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
stream_name: "test-stream_name".into(),
stream_arn: "test-stream_arn".into(),
stream_status: "test-stream_status".into(),
stream_mode_details: Some(StreamModeDetails::fixture()),
retention_period_hours: 100,
open_shard_count: 100,
consumer_count: Some(100),
encryption_type: Some("test-encryption_type".into()),
key_id: Some("test-key_id".into()),
..Default::default()
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct StreamModeDetails {
pub stream_mode: String,
}
impl StreamModeDetails {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
stream_mode: "test-stream_mode".into(),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DeleteStreamInput {
#[serde(skip_serializing_if = "Option::is_none")]
pub stream_name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub stream_arn: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub enforce_consumer_deletion: Option<bool>,
}
impl DeleteStreamInput {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
stream_name: Some("test-stream_name".into()),
stream_arn: Some("test-stream_arn".into()),
enforce_consumer_deletion: Some(false),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct UpdateStreamModeInput {
pub stream_arn: String,
pub stream_mode_details: StreamModeDetails,
}
impl UpdateStreamModeInput {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
stream_arn: "test-stream_arn".into(),
stream_mode_details: StreamModeDetails::fixture(),
}
}
}