#[allow(missing_docs)] #[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct UpdateLicenseConfigurationInput {
pub license_configuration_arn: ::std::option::Option<::std::string::String>,
pub license_configuration_status: ::std::option::Option<crate::types::LicenseConfigurationStatus>,
pub license_rules: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub license_count: ::std::option::Option<i64>,
pub license_count_hard_limit: ::std::option::Option<bool>,
pub name: ::std::option::Option<::std::string::String>,
pub description: ::std::option::Option<::std::string::String>,
pub product_information_list: ::std::option::Option<::std::vec::Vec<crate::types::ProductInformation>>,
pub disassociate_when_not_found: ::std::option::Option<bool>,
pub license_expiry: ::std::option::Option<i64>,
}
impl UpdateLicenseConfigurationInput {
pub fn license_configuration_arn(&self) -> ::std::option::Option<&str> {
self.license_configuration_arn.as_deref()
}
pub fn license_configuration_status(&self) -> ::std::option::Option<&crate::types::LicenseConfigurationStatus> {
self.license_configuration_status.as_ref()
}
pub fn license_rules(&self) -> &[::std::string::String] {
self.license_rules.as_deref().unwrap_or_default()
}
pub fn license_count(&self) -> ::std::option::Option<i64> {
self.license_count
}
pub fn license_count_hard_limit(&self) -> ::std::option::Option<bool> {
self.license_count_hard_limit
}
pub fn name(&self) -> ::std::option::Option<&str> {
self.name.as_deref()
}
pub fn description(&self) -> ::std::option::Option<&str> {
self.description.as_deref()
}
pub fn product_information_list(&self) -> &[crate::types::ProductInformation] {
self.product_information_list.as_deref().unwrap_or_default()
}
pub fn disassociate_when_not_found(&self) -> ::std::option::Option<bool> {
self.disassociate_when_not_found
}
pub fn license_expiry(&self) -> ::std::option::Option<i64> {
self.license_expiry
}
}
impl UpdateLicenseConfigurationInput {
pub fn builder() -> crate::operation::update_license_configuration::builders::UpdateLicenseConfigurationInputBuilder {
crate::operation::update_license_configuration::builders::UpdateLicenseConfigurationInputBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct UpdateLicenseConfigurationInputBuilder {
pub(crate) license_configuration_arn: ::std::option::Option<::std::string::String>,
pub(crate) license_configuration_status: ::std::option::Option<crate::types::LicenseConfigurationStatus>,
pub(crate) license_rules: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub(crate) license_count: ::std::option::Option<i64>,
pub(crate) license_count_hard_limit: ::std::option::Option<bool>,
pub(crate) name: ::std::option::Option<::std::string::String>,
pub(crate) description: ::std::option::Option<::std::string::String>,
pub(crate) product_information_list: ::std::option::Option<::std::vec::Vec<crate::types::ProductInformation>>,
pub(crate) disassociate_when_not_found: ::std::option::Option<bool>,
pub(crate) license_expiry: ::std::option::Option<i64>,
}
impl UpdateLicenseConfigurationInputBuilder {
pub fn license_configuration_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.license_configuration_arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_license_configuration_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.license_configuration_arn = input;
self
}
pub fn get_license_configuration_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.license_configuration_arn
}
pub fn license_configuration_status(mut self, input: crate::types::LicenseConfigurationStatus) -> Self {
self.license_configuration_status = ::std::option::Option::Some(input);
self
}
pub fn set_license_configuration_status(mut self, input: ::std::option::Option<crate::types::LicenseConfigurationStatus>) -> Self {
self.license_configuration_status = input;
self
}
pub fn get_license_configuration_status(&self) -> &::std::option::Option<crate::types::LicenseConfigurationStatus> {
&self.license_configuration_status
}
pub fn license_rules(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut v = self.license_rules.unwrap_or_default();
v.push(input.into());
self.license_rules = ::std::option::Option::Some(v);
self
}
pub fn set_license_rules(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.license_rules = input;
self
}
pub fn get_license_rules(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
&self.license_rules
}
pub fn license_count(mut self, input: i64) -> Self {
self.license_count = ::std::option::Option::Some(input);
self
}
pub fn set_license_count(mut self, input: ::std::option::Option<i64>) -> Self {
self.license_count = input;
self
}
pub fn get_license_count(&self) -> &::std::option::Option<i64> {
&self.license_count
}
pub fn license_count_hard_limit(mut self, input: bool) -> Self {
self.license_count_hard_limit = ::std::option::Option::Some(input);
self
}
pub fn set_license_count_hard_limit(mut self, input: ::std::option::Option<bool>) -> Self {
self.license_count_hard_limit = input;
self
}
pub fn get_license_count_hard_limit(&self) -> &::std::option::Option<bool> {
&self.license_count_hard_limit
}
pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.name = ::std::option::Option::Some(input.into());
self
}
pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.name = input;
self
}
pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
&self.name
}
pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.description = ::std::option::Option::Some(input.into());
self
}
pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.description = input;
self
}
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
&self.description
}
pub fn product_information_list(mut self, input: crate::types::ProductInformation) -> Self {
let mut v = self.product_information_list.unwrap_or_default();
v.push(input);
self.product_information_list = ::std::option::Option::Some(v);
self
}
pub fn set_product_information_list(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ProductInformation>>) -> Self {
self.product_information_list = input;
self
}
pub fn get_product_information_list(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ProductInformation>> {
&self.product_information_list
}
pub fn disassociate_when_not_found(mut self, input: bool) -> Self {
self.disassociate_when_not_found = ::std::option::Option::Some(input);
self
}
pub fn set_disassociate_when_not_found(mut self, input: ::std::option::Option<bool>) -> Self {
self.disassociate_when_not_found = input;
self
}
pub fn get_disassociate_when_not_found(&self) -> &::std::option::Option<bool> {
&self.disassociate_when_not_found
}
pub fn license_expiry(mut self, input: i64) -> Self {
self.license_expiry = ::std::option::Option::Some(input);
self
}
pub fn set_license_expiry(mut self, input: ::std::option::Option<i64>) -> Self {
self.license_expiry = input;
self
}
pub fn get_license_expiry(&self) -> &::std::option::Option<i64> {
&self.license_expiry
}
pub fn build(
self,
) -> ::std::result::Result<
crate::operation::update_license_configuration::UpdateLicenseConfigurationInput,
::aws_smithy_types::error::operation::BuildError,
> {
::std::result::Result::Ok(crate::operation::update_license_configuration::UpdateLicenseConfigurationInput {
license_configuration_arn: self.license_configuration_arn,
license_configuration_status: self.license_configuration_status,
license_rules: self.license_rules,
license_count: self.license_count,
license_count_hard_limit: self.license_count_hard_limit,
name: self.name,
description: self.description,
product_information_list: self.product_information_list,
disassociate_when_not_found: self.disassociate_when_not_found,
license_expiry: self.license_expiry,
})
}
}