#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct MergeShardsInput {
pub stream_name: ::std::option::Option<::std::string::String>,
pub shard_to_merge: ::std::option::Option<::std::string::String>,
pub adjacent_shard_to_merge: ::std::option::Option<::std::string::String>,
pub stream_arn: ::std::option::Option<::std::string::String>,
}
impl MergeShardsInput {
pub fn stream_name(&self) -> ::std::option::Option<&str> {
self.stream_name.as_deref()
}
pub fn shard_to_merge(&self) -> ::std::option::Option<&str> {
self.shard_to_merge.as_deref()
}
pub fn adjacent_shard_to_merge(&self) -> ::std::option::Option<&str> {
self.adjacent_shard_to_merge.as_deref()
}
pub fn stream_arn(&self) -> ::std::option::Option<&str> {
self.stream_arn.as_deref()
}
}
impl MergeShardsInput {
pub fn builder() -> crate::operation::merge_shards::builders::MergeShardsInputBuilder {
crate::operation::merge_shards::builders::MergeShardsInputBuilder::default()
}
}
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct MergeShardsInputBuilder {
pub(crate) stream_name: ::std::option::Option<::std::string::String>,
pub(crate) shard_to_merge: ::std::option::Option<::std::string::String>,
pub(crate) adjacent_shard_to_merge: ::std::option::Option<::std::string::String>,
pub(crate) stream_arn: ::std::option::Option<::std::string::String>,
}
impl MergeShardsInputBuilder {
pub fn stream_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.stream_name = ::std::option::Option::Some(input.into());
self
}
pub fn set_stream_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.stream_name = input;
self
}
pub fn get_stream_name(&self) -> &::std::option::Option<::std::string::String> {
&self.stream_name
}
pub fn shard_to_merge(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.shard_to_merge = ::std::option::Option::Some(input.into());
self
}
pub fn set_shard_to_merge(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.shard_to_merge = input;
self
}
pub fn get_shard_to_merge(&self) -> &::std::option::Option<::std::string::String> {
&self.shard_to_merge
}
pub fn adjacent_shard_to_merge(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.adjacent_shard_to_merge = ::std::option::Option::Some(input.into());
self
}
pub fn set_adjacent_shard_to_merge(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.adjacent_shard_to_merge = input;
self
}
pub fn get_adjacent_shard_to_merge(&self) -> &::std::option::Option<::std::string::String> {
&self.adjacent_shard_to_merge
}
pub fn stream_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.stream_arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_stream_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.stream_arn = input;
self
}
pub fn get_stream_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.stream_arn
}
pub fn build(self) -> ::std::result::Result<crate::operation::merge_shards::MergeShardsInput, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::operation::merge_shards::MergeShardsInput {
stream_name: self.stream_name,
shard_to_merge: self.shard_to_merge,
adjacent_shard_to_merge: self.adjacent_shard_to_merge,
stream_arn: self.stream_arn,
})
}
}