#[allow(missing_docs)] #[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct UpdateNotifyConfigurationOutput {
pub notify_configuration_arn: ::std::string::String,
pub notify_configuration_id: ::std::string::String,
pub display_name: ::std::string::String,
pub use_case: crate::types::NotifyConfigurationUseCase,
pub default_template_id: ::std::option::Option<::std::string::String>,
pub pool_id: ::std::option::Option<::std::string::String>,
pub enabled_countries: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub enabled_channels: ::std::vec::Vec<crate::types::NumberCapability>,
pub tier: crate::types::NotifyConfigurationTier,
pub tier_upgrade_status: crate::types::TierUpgradeStatus,
pub status: crate::types::NotifyConfigurationStatus,
pub rejection_reason: ::std::option::Option<::std::string::String>,
pub deletion_protection_enabled: bool,
pub created_timestamp: ::aws_smithy_types::DateTime,
_request_id: Option<String>,
}
impl UpdateNotifyConfigurationOutput {
pub fn notify_configuration_arn(&self) -> &str {
use std::ops::Deref;
self.notify_configuration_arn.deref()
}
pub fn notify_configuration_id(&self) -> &str {
use std::ops::Deref;
self.notify_configuration_id.deref()
}
pub fn display_name(&self) -> &str {
use std::ops::Deref;
self.display_name.deref()
}
pub fn use_case(&self) -> &crate::types::NotifyConfigurationUseCase {
&self.use_case
}
pub fn default_template_id(&self) -> ::std::option::Option<&str> {
self.default_template_id.as_deref()
}
pub fn pool_id(&self) -> ::std::option::Option<&str> {
self.pool_id.as_deref()
}
pub fn enabled_countries(&self) -> &[::std::string::String] {
self.enabled_countries.as_deref().unwrap_or_default()
}
pub fn enabled_channels(&self) -> &[crate::types::NumberCapability] {
use std::ops::Deref;
self.enabled_channels.deref()
}
pub fn tier(&self) -> &crate::types::NotifyConfigurationTier {
&self.tier
}
pub fn tier_upgrade_status(&self) -> &crate::types::TierUpgradeStatus {
&self.tier_upgrade_status
}
pub fn status(&self) -> &crate::types::NotifyConfigurationStatus {
&self.status
}
pub fn rejection_reason(&self) -> ::std::option::Option<&str> {
self.rejection_reason.as_deref()
}
pub fn deletion_protection_enabled(&self) -> bool {
self.deletion_protection_enabled
}
pub fn created_timestamp(&self) -> &::aws_smithy_types::DateTime {
&self.created_timestamp
}
}
impl ::aws_types::request_id::RequestId for UpdateNotifyConfigurationOutput {
fn request_id(&self) -> Option<&str> {
self._request_id.as_deref()
}
}
impl UpdateNotifyConfigurationOutput {
pub fn builder() -> crate::operation::update_notify_configuration::builders::UpdateNotifyConfigurationOutputBuilder {
crate::operation::update_notify_configuration::builders::UpdateNotifyConfigurationOutputBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct UpdateNotifyConfigurationOutputBuilder {
pub(crate) notify_configuration_arn: ::std::option::Option<::std::string::String>,
pub(crate) notify_configuration_id: ::std::option::Option<::std::string::String>,
pub(crate) display_name: ::std::option::Option<::std::string::String>,
pub(crate) use_case: ::std::option::Option<crate::types::NotifyConfigurationUseCase>,
pub(crate) default_template_id: ::std::option::Option<::std::string::String>,
pub(crate) pool_id: ::std::option::Option<::std::string::String>,
pub(crate) enabled_countries: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub(crate) enabled_channels: ::std::option::Option<::std::vec::Vec<crate::types::NumberCapability>>,
pub(crate) tier: ::std::option::Option<crate::types::NotifyConfigurationTier>,
pub(crate) tier_upgrade_status: ::std::option::Option<crate::types::TierUpgradeStatus>,
pub(crate) status: ::std::option::Option<crate::types::NotifyConfigurationStatus>,
pub(crate) rejection_reason: ::std::option::Option<::std::string::String>,
pub(crate) deletion_protection_enabled: ::std::option::Option<bool>,
pub(crate) created_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
_request_id: Option<String>,
}
impl UpdateNotifyConfigurationOutputBuilder {
pub fn notify_configuration_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.notify_configuration_arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_notify_configuration_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.notify_configuration_arn = input;
self
}
pub fn get_notify_configuration_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.notify_configuration_arn
}
pub fn notify_configuration_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.notify_configuration_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_notify_configuration_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.notify_configuration_id = input;
self
}
pub fn get_notify_configuration_id(&self) -> &::std::option::Option<::std::string::String> {
&self.notify_configuration_id
}
pub fn display_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.display_name = ::std::option::Option::Some(input.into());
self
}
pub fn set_display_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.display_name = input;
self
}
pub fn get_display_name(&self) -> &::std::option::Option<::std::string::String> {
&self.display_name
}
pub fn use_case(mut self, input: crate::types::NotifyConfigurationUseCase) -> Self {
self.use_case = ::std::option::Option::Some(input);
self
}
pub fn set_use_case(mut self, input: ::std::option::Option<crate::types::NotifyConfigurationUseCase>) -> Self {
self.use_case = input;
self
}
pub fn get_use_case(&self) -> &::std::option::Option<crate::types::NotifyConfigurationUseCase> {
&self.use_case
}
pub fn default_template_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.default_template_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_default_template_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.default_template_id = input;
self
}
pub fn get_default_template_id(&self) -> &::std::option::Option<::std::string::String> {
&self.default_template_id
}
pub fn pool_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.pool_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_pool_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.pool_id = input;
self
}
pub fn get_pool_id(&self) -> &::std::option::Option<::std::string::String> {
&self.pool_id
}
pub fn enabled_countries(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut v = self.enabled_countries.unwrap_or_default();
v.push(input.into());
self.enabled_countries = ::std::option::Option::Some(v);
self
}
pub fn set_enabled_countries(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.enabled_countries = input;
self
}
pub fn get_enabled_countries(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
&self.enabled_countries
}
pub fn enabled_channels(mut self, input: crate::types::NumberCapability) -> Self {
let mut v = self.enabled_channels.unwrap_or_default();
v.push(input);
self.enabled_channels = ::std::option::Option::Some(v);
self
}
pub fn set_enabled_channels(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::NumberCapability>>) -> Self {
self.enabled_channels = input;
self
}
pub fn get_enabled_channels(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::NumberCapability>> {
&self.enabled_channels
}
pub fn tier(mut self, input: crate::types::NotifyConfigurationTier) -> Self {
self.tier = ::std::option::Option::Some(input);
self
}
pub fn set_tier(mut self, input: ::std::option::Option<crate::types::NotifyConfigurationTier>) -> Self {
self.tier = input;
self
}
pub fn get_tier(&self) -> &::std::option::Option<crate::types::NotifyConfigurationTier> {
&self.tier
}
pub fn tier_upgrade_status(mut self, input: crate::types::TierUpgradeStatus) -> Self {
self.tier_upgrade_status = ::std::option::Option::Some(input);
self
}
pub fn set_tier_upgrade_status(mut self, input: ::std::option::Option<crate::types::TierUpgradeStatus>) -> Self {
self.tier_upgrade_status = input;
self
}
pub fn get_tier_upgrade_status(&self) -> &::std::option::Option<crate::types::TierUpgradeStatus> {
&self.tier_upgrade_status
}
pub fn status(mut self, input: crate::types::NotifyConfigurationStatus) -> Self {
self.status = ::std::option::Option::Some(input);
self
}
pub fn set_status(mut self, input: ::std::option::Option<crate::types::NotifyConfigurationStatus>) -> Self {
self.status = input;
self
}
pub fn get_status(&self) -> &::std::option::Option<crate::types::NotifyConfigurationStatus> {
&self.status
}
pub fn rejection_reason(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.rejection_reason = ::std::option::Option::Some(input.into());
self
}
pub fn set_rejection_reason(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.rejection_reason = input;
self
}
pub fn get_rejection_reason(&self) -> &::std::option::Option<::std::string::String> {
&self.rejection_reason
}
pub fn deletion_protection_enabled(mut self, input: bool) -> Self {
self.deletion_protection_enabled = ::std::option::Option::Some(input);
self
}
pub fn set_deletion_protection_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
self.deletion_protection_enabled = input;
self
}
pub fn get_deletion_protection_enabled(&self) -> &::std::option::Option<bool> {
&self.deletion_protection_enabled
}
pub fn created_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.created_timestamp = ::std::option::Option::Some(input);
self
}
pub fn set_created_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.created_timestamp = input;
self
}
pub fn get_created_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.created_timestamp
}
pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
self._request_id = Some(request_id.into());
self
}
pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
self._request_id = request_id;
self
}
pub fn build(
self,
) -> ::std::result::Result<
crate::operation::update_notify_configuration::UpdateNotifyConfigurationOutput,
::aws_smithy_types::error::operation::BuildError,
> {
::std::result::Result::Ok(crate::operation::update_notify_configuration::UpdateNotifyConfigurationOutput {
notify_configuration_arn: self.notify_configuration_arn.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"notify_configuration_arn",
"notify_configuration_arn was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
notify_configuration_id: self.notify_configuration_id.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"notify_configuration_id",
"notify_configuration_id was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
display_name: self.display_name.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"display_name",
"display_name was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
use_case: self.use_case.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"use_case",
"use_case was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
default_template_id: self.default_template_id,
pool_id: self.pool_id,
enabled_countries: self.enabled_countries,
enabled_channels: self.enabled_channels.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"enabled_channels",
"enabled_channels was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
tier: self.tier.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"tier",
"tier was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
tier_upgrade_status: self.tier_upgrade_status.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"tier_upgrade_status",
"tier_upgrade_status was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
status: self.status.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"status",
"status was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
rejection_reason: self.rejection_reason,
deletion_protection_enabled: self.deletion_protection_enabled.unwrap_or_default(),
created_timestamp: self.created_timestamp.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"created_timestamp",
"created_timestamp was not specified but it is required when building UpdateNotifyConfigurationOutput",
)
})?,
_request_id: self._request_id,
})
}
}