#[allow(missing_docs)] #[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct UpdateDomainInput {
#[doc(hidden)]
pub domain_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub default_user_settings: std::option::Option<crate::types::UserSettings>,
#[doc(hidden)]
pub domain_settings_for_update: std::option::Option<crate::types::DomainSettingsForUpdate>,
#[doc(hidden)]
pub default_space_settings: std::option::Option<crate::types::DefaultSpaceSettings>,
#[doc(hidden)]
pub app_security_group_management:
std::option::Option<crate::types::AppSecurityGroupManagement>,
}
impl UpdateDomainInput {
pub fn domain_id(&self) -> std::option::Option<&str> {
self.domain_id.as_deref()
}
pub fn default_user_settings(&self) -> std::option::Option<&crate::types::UserSettings> {
self.default_user_settings.as_ref()
}
pub fn domain_settings_for_update(
&self,
) -> std::option::Option<&crate::types::DomainSettingsForUpdate> {
self.domain_settings_for_update.as_ref()
}
pub fn default_space_settings(
&self,
) -> std::option::Option<&crate::types::DefaultSpaceSettings> {
self.default_space_settings.as_ref()
}
pub fn app_security_group_management(
&self,
) -> std::option::Option<&crate::types::AppSecurityGroupManagement> {
self.app_security_group_management.as_ref()
}
}
impl UpdateDomainInput {
pub fn builder() -> crate::operation::update_domain::builders::UpdateDomainInputBuilder {
crate::operation::update_domain::builders::UpdateDomainInputBuilder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct UpdateDomainInputBuilder {
pub(crate) domain_id: std::option::Option<std::string::String>,
pub(crate) default_user_settings: std::option::Option<crate::types::UserSettings>,
pub(crate) domain_settings_for_update:
std::option::Option<crate::types::DomainSettingsForUpdate>,
pub(crate) default_space_settings: std::option::Option<crate::types::DefaultSpaceSettings>,
pub(crate) app_security_group_management:
std::option::Option<crate::types::AppSecurityGroupManagement>,
}
impl UpdateDomainInputBuilder {
pub fn domain_id(mut self, input: impl Into<std::string::String>) -> Self {
self.domain_id = Some(input.into());
self
}
pub fn set_domain_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.domain_id = input;
self
}
pub fn default_user_settings(mut self, input: crate::types::UserSettings) -> Self {
self.default_user_settings = Some(input);
self
}
pub fn set_default_user_settings(
mut self,
input: std::option::Option<crate::types::UserSettings>,
) -> Self {
self.default_user_settings = input;
self
}
pub fn domain_settings_for_update(
mut self,
input: crate::types::DomainSettingsForUpdate,
) -> Self {
self.domain_settings_for_update = Some(input);
self
}
pub fn set_domain_settings_for_update(
mut self,
input: std::option::Option<crate::types::DomainSettingsForUpdate>,
) -> Self {
self.domain_settings_for_update = input;
self
}
pub fn default_space_settings(mut self, input: crate::types::DefaultSpaceSettings) -> Self {
self.default_space_settings = Some(input);
self
}
pub fn set_default_space_settings(
mut self,
input: std::option::Option<crate::types::DefaultSpaceSettings>,
) -> Self {
self.default_space_settings = input;
self
}
pub fn app_security_group_management(
mut self,
input: crate::types::AppSecurityGroupManagement,
) -> Self {
self.app_security_group_management = Some(input);
self
}
pub fn set_app_security_group_management(
mut self,
input: std::option::Option<crate::types::AppSecurityGroupManagement>,
) -> Self {
self.app_security_group_management = input;
self
}
pub fn build(
self,
) -> Result<
crate::operation::update_domain::UpdateDomainInput,
aws_smithy_http::operation::error::BuildError,
> {
Ok(crate::operation::update_domain::UpdateDomainInput {
domain_id: self.domain_id,
default_user_settings: self.default_user_settings,
domain_settings_for_update: self.domain_settings_for_update,
default_space_settings: self.default_space_settings,
app_security_group_management: self.app_security_group_management,
})
}
}