#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Option {
pub option_name: ::std::option::Option<::std::string::String>,
pub option_description: ::std::option::Option<::std::string::String>,
pub persistent: ::std::option::Option<bool>,
pub permanent: ::std::option::Option<bool>,
pub port: ::std::option::Option<i32>,
pub option_version: ::std::option::Option<::std::string::String>,
pub option_settings: ::std::option::Option<::std::vec::Vec<crate::types::OptionSetting>>,
pub db_security_group_memberships: ::std::option::Option<::std::vec::Vec<crate::types::DbSecurityGroupMembership>>,
pub vpc_security_group_memberships: ::std::option::Option<::std::vec::Vec<crate::types::VpcSecurityGroupMembership>>,
}
impl Option {
pub fn option_name(&self) -> ::std::option::Option<&str> {
self.option_name.as_deref()
}
pub fn option_description(&self) -> ::std::option::Option<&str> {
self.option_description.as_deref()
}
pub fn persistent(&self) -> ::std::option::Option<bool> {
self.persistent
}
pub fn permanent(&self) -> ::std::option::Option<bool> {
self.permanent
}
pub fn port(&self) -> ::std::option::Option<i32> {
self.port
}
pub fn option_version(&self) -> ::std::option::Option<&str> {
self.option_version.as_deref()
}
pub fn option_settings(&self) -> &[crate::types::OptionSetting] {
self.option_settings.as_deref().unwrap_or_default()
}
pub fn db_security_group_memberships(&self) -> &[crate::types::DbSecurityGroupMembership] {
self.db_security_group_memberships.as_deref().unwrap_or_default()
}
pub fn vpc_security_group_memberships(&self) -> &[crate::types::VpcSecurityGroupMembership] {
self.vpc_security_group_memberships.as_deref().unwrap_or_default()
}
}
impl Option {
pub fn builder() -> crate::types::builders::OptionBuilder {
crate::types::builders::OptionBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct OptionBuilder {
pub(crate) option_name: ::std::option::Option<::std::string::String>,
pub(crate) option_description: ::std::option::Option<::std::string::String>,
pub(crate) persistent: ::std::option::Option<bool>,
pub(crate) permanent: ::std::option::Option<bool>,
pub(crate) port: ::std::option::Option<i32>,
pub(crate) option_version: ::std::option::Option<::std::string::String>,
pub(crate) option_settings: ::std::option::Option<::std::vec::Vec<crate::types::OptionSetting>>,
pub(crate) db_security_group_memberships: ::std::option::Option<::std::vec::Vec<crate::types::DbSecurityGroupMembership>>,
pub(crate) vpc_security_group_memberships: ::std::option::Option<::std::vec::Vec<crate::types::VpcSecurityGroupMembership>>,
}
impl OptionBuilder {
pub fn option_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.option_name = ::std::option::Option::Some(input.into());
self
}
pub fn set_option_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.option_name = input;
self
}
pub fn get_option_name(&self) -> &::std::option::Option<::std::string::String> {
&self.option_name
}
pub fn option_description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.option_description = ::std::option::Option::Some(input.into());
self
}
pub fn set_option_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.option_description = input;
self
}
pub fn get_option_description(&self) -> &::std::option::Option<::std::string::String> {
&self.option_description
}
pub fn persistent(mut self, input: bool) -> Self {
self.persistent = ::std::option::Option::Some(input);
self
}
pub fn set_persistent(mut self, input: ::std::option::Option<bool>) -> Self {
self.persistent = input;
self
}
pub fn get_persistent(&self) -> &::std::option::Option<bool> {
&self.persistent
}
pub fn permanent(mut self, input: bool) -> Self {
self.permanent = ::std::option::Option::Some(input);
self
}
pub fn set_permanent(mut self, input: ::std::option::Option<bool>) -> Self {
self.permanent = input;
self
}
pub fn get_permanent(&self) -> &::std::option::Option<bool> {
&self.permanent
}
pub fn port(mut self, input: i32) -> Self {
self.port = ::std::option::Option::Some(input);
self
}
pub fn set_port(mut self, input: ::std::option::Option<i32>) -> Self {
self.port = input;
self
}
pub fn get_port(&self) -> &::std::option::Option<i32> {
&self.port
}
pub fn option_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.option_version = ::std::option::Option::Some(input.into());
self
}
pub fn set_option_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.option_version = input;
self
}
pub fn get_option_version(&self) -> &::std::option::Option<::std::string::String> {
&self.option_version
}
pub fn option_settings(mut self, input: crate::types::OptionSetting) -> Self {
let mut v = self.option_settings.unwrap_or_default();
v.push(input);
self.option_settings = ::std::option::Option::Some(v);
self
}
pub fn set_option_settings(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::OptionSetting>>) -> Self {
self.option_settings = input;
self
}
pub fn get_option_settings(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::OptionSetting>> {
&self.option_settings
}
pub fn db_security_group_memberships(mut self, input: crate::types::DbSecurityGroupMembership) -> Self {
let mut v = self.db_security_group_memberships.unwrap_or_default();
v.push(input);
self.db_security_group_memberships = ::std::option::Option::Some(v);
self
}
pub fn set_db_security_group_memberships(
mut self,
input: ::std::option::Option<::std::vec::Vec<crate::types::DbSecurityGroupMembership>>,
) -> Self {
self.db_security_group_memberships = input;
self
}
pub fn get_db_security_group_memberships(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::DbSecurityGroupMembership>> {
&self.db_security_group_memberships
}
pub fn vpc_security_group_memberships(mut self, input: crate::types::VpcSecurityGroupMembership) -> Self {
let mut v = self.vpc_security_group_memberships.unwrap_or_default();
v.push(input);
self.vpc_security_group_memberships = ::std::option::Option::Some(v);
self
}
pub fn set_vpc_security_group_memberships(
mut self,
input: ::std::option::Option<::std::vec::Vec<crate::types::VpcSecurityGroupMembership>>,
) -> Self {
self.vpc_security_group_memberships = input;
self
}
pub fn get_vpc_security_group_memberships(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::VpcSecurityGroupMembership>> {
&self.vpc_security_group_memberships
}
pub fn build(self) -> crate::types::Option {
crate::types::Option {
option_name: self.option_name,
option_description: self.option_description,
persistent: self.persistent,
permanent: self.permanent,
port: self.port,
option_version: self.option_version,
option_settings: self.option_settings,
db_security_group_memberships: self.db_security_group_memberships,
vpc_security_group_memberships: self.vpc_security_group_memberships,
}
}
}