#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct AwsWafv2WebAclActionDetails {
pub allow: ::std::option::Option<crate::types::AwsWafv2ActionAllowDetails>,
pub block: ::std::option::Option<crate::types::AwsWafv2ActionBlockDetails>,
}
impl AwsWafv2WebAclActionDetails {
pub fn allow(&self) -> ::std::option::Option<&crate::types::AwsWafv2ActionAllowDetails> {
self.allow.as_ref()
}
pub fn block(&self) -> ::std::option::Option<&crate::types::AwsWafv2ActionBlockDetails> {
self.block.as_ref()
}
}
impl AwsWafv2WebAclActionDetails {
pub fn builder() -> crate::types::builders::AwsWafv2WebAclActionDetailsBuilder {
crate::types::builders::AwsWafv2WebAclActionDetailsBuilder::default()
}
}
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct AwsWafv2WebAclActionDetailsBuilder {
pub(crate) allow: ::std::option::Option<crate::types::AwsWafv2ActionAllowDetails>,
pub(crate) block: ::std::option::Option<crate::types::AwsWafv2ActionBlockDetails>,
}
impl AwsWafv2WebAclActionDetailsBuilder {
pub fn allow(mut self, input: crate::types::AwsWafv2ActionAllowDetails) -> Self {
self.allow = ::std::option::Option::Some(input);
self
}
pub fn set_allow(mut self, input: ::std::option::Option<crate::types::AwsWafv2ActionAllowDetails>) -> Self {
self.allow = input;
self
}
pub fn get_allow(&self) -> &::std::option::Option<crate::types::AwsWafv2ActionAllowDetails> {
&self.allow
}
pub fn block(mut self, input: crate::types::AwsWafv2ActionBlockDetails) -> Self {
self.block = ::std::option::Option::Some(input);
self
}
pub fn set_block(mut self, input: ::std::option::Option<crate::types::AwsWafv2ActionBlockDetails>) -> Self {
self.block = input;
self
}
pub fn get_block(&self) -> &::std::option::Option<crate::types::AwsWafv2ActionBlockDetails> {
&self.block
}
pub fn build(self) -> crate::types::AwsWafv2WebAclActionDetails {
crate::types::AwsWafv2WebAclActionDetails {
allow: self.allow,
block: self.block,
}
}
}