#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Customizations {
pub web_acl: ::std::option::Option<crate::types::WebAclCustomization>,
pub certificate: ::std::option::Option<crate::types::Certificate>,
pub geo_restrictions: ::std::option::Option<crate::types::GeoRestrictionCustomization>,
}
impl Customizations {
pub fn web_acl(&self) -> ::std::option::Option<&crate::types::WebAclCustomization> {
self.web_acl.as_ref()
}
pub fn certificate(&self) -> ::std::option::Option<&crate::types::Certificate> {
self.certificate.as_ref()
}
pub fn geo_restrictions(&self) -> ::std::option::Option<&crate::types::GeoRestrictionCustomization> {
self.geo_restrictions.as_ref()
}
}
impl Customizations {
pub fn builder() -> crate::types::builders::CustomizationsBuilder {
crate::types::builders::CustomizationsBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct CustomizationsBuilder {
pub(crate) web_acl: ::std::option::Option<crate::types::WebAclCustomization>,
pub(crate) certificate: ::std::option::Option<crate::types::Certificate>,
pub(crate) geo_restrictions: ::std::option::Option<crate::types::GeoRestrictionCustomization>,
}
impl CustomizationsBuilder {
pub fn web_acl(mut self, input: crate::types::WebAclCustomization) -> Self {
self.web_acl = ::std::option::Option::Some(input);
self
}
pub fn set_web_acl(mut self, input: ::std::option::Option<crate::types::WebAclCustomization>) -> Self {
self.web_acl = input;
self
}
pub fn get_web_acl(&self) -> &::std::option::Option<crate::types::WebAclCustomization> {
&self.web_acl
}
pub fn certificate(mut self, input: crate::types::Certificate) -> Self {
self.certificate = ::std::option::Option::Some(input);
self
}
pub fn set_certificate(mut self, input: ::std::option::Option<crate::types::Certificate>) -> Self {
self.certificate = input;
self
}
pub fn get_certificate(&self) -> &::std::option::Option<crate::types::Certificate> {
&self.certificate
}
pub fn geo_restrictions(mut self, input: crate::types::GeoRestrictionCustomization) -> Self {
self.geo_restrictions = ::std::option::Option::Some(input);
self
}
pub fn set_geo_restrictions(mut self, input: ::std::option::Option<crate::types::GeoRestrictionCustomization>) -> Self {
self.geo_restrictions = input;
self
}
pub fn get_geo_restrictions(&self) -> &::std::option::Option<crate::types::GeoRestrictionCustomization> {
&self.geo_restrictions
}
pub fn build(self) -> crate::types::Customizations {
crate::types::Customizations {
web_acl: self.web_acl,
certificate: self.certificate,
geo_restrictions: self.geo_restrictions,
}
}
}