aws-sdk-networkfirewall 1.111.0

AWS SDK for AWS Network Firewall
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct DeleteFirewallOutput {
    /// <p>A firewall defines the behavior of a firewall, the main VPC where the firewall is used, the Availability Zones where the firewall can be used, and one subnet to use for a firewall endpoint within each of the Availability Zones. The Availability Zones are defined implicitly in the subnet specifications.</p>
    /// <p>In addition to the firewall endpoints that you define in this <code>Firewall</code> specification, you can create firewall endpoints in <code>VpcEndpointAssociation</code> resources for any VPC, in any Availability Zone where the firewall is already in use.</p>
    /// <p>The status of the firewall, for example whether it's ready to filter network traffic, is provided in the corresponding <code>FirewallStatus</code>. You can retrieve both the firewall and firewall status by calling <code>DescribeFirewall</code>.</p>
    pub firewall: ::std::option::Option<crate::types::Firewall>,
    /// <p>Detailed information about the current status of a <code>Firewall</code>. You can retrieve this for a firewall by calling <code>DescribeFirewall</code> and providing the firewall name and ARN.</p>
    /// <p>The firewall status indicates a combined status. It indicates whether all subnets are up-to-date with the latest firewall configurations, which is based on the sync states config values, and also whether all subnets have their endpoints fully enabled, based on their sync states attachment values.</p>
    pub firewall_status: ::std::option::Option<crate::types::FirewallStatus>,
    _request_id: Option<String>,
}
impl DeleteFirewallOutput {
    /// <p>A firewall defines the behavior of a firewall, the main VPC where the firewall is used, the Availability Zones where the firewall can be used, and one subnet to use for a firewall endpoint within each of the Availability Zones. The Availability Zones are defined implicitly in the subnet specifications.</p>
    /// <p>In addition to the firewall endpoints that you define in this <code>Firewall</code> specification, you can create firewall endpoints in <code>VpcEndpointAssociation</code> resources for any VPC, in any Availability Zone where the firewall is already in use.</p>
    /// <p>The status of the firewall, for example whether it's ready to filter network traffic, is provided in the corresponding <code>FirewallStatus</code>. You can retrieve both the firewall and firewall status by calling <code>DescribeFirewall</code>.</p>
    pub fn firewall(&self) -> ::std::option::Option<&crate::types::Firewall> {
        self.firewall.as_ref()
    }
    /// <p>Detailed information about the current status of a <code>Firewall</code>. You can retrieve this for a firewall by calling <code>DescribeFirewall</code> and providing the firewall name and ARN.</p>
    /// <p>The firewall status indicates a combined status. It indicates whether all subnets are up-to-date with the latest firewall configurations, which is based on the sync states config values, and also whether all subnets have their endpoints fully enabled, based on their sync states attachment values.</p>
    pub fn firewall_status(&self) -> ::std::option::Option<&crate::types::FirewallStatus> {
        self.firewall_status.as_ref()
    }
}
impl ::aws_types::request_id::RequestId for DeleteFirewallOutput {
    fn request_id(&self) -> Option<&str> {
        self._request_id.as_deref()
    }
}
impl DeleteFirewallOutput {
    /// Creates a new builder-style object to manufacture [`DeleteFirewallOutput`](crate::operation::delete_firewall::DeleteFirewallOutput).
    pub fn builder() -> crate::operation::delete_firewall::builders::DeleteFirewallOutputBuilder {
        crate::operation::delete_firewall::builders::DeleteFirewallOutputBuilder::default()
    }
}

/// A builder for [`DeleteFirewallOutput`](crate::operation::delete_firewall::DeleteFirewallOutput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct DeleteFirewallOutputBuilder {
    pub(crate) firewall: ::std::option::Option<crate::types::Firewall>,
    pub(crate) firewall_status: ::std::option::Option<crate::types::FirewallStatus>,
    _request_id: Option<String>,
}
impl DeleteFirewallOutputBuilder {
    /// <p>A firewall defines the behavior of a firewall, the main VPC where the firewall is used, the Availability Zones where the firewall can be used, and one subnet to use for a firewall endpoint within each of the Availability Zones. The Availability Zones are defined implicitly in the subnet specifications.</p>
    /// <p>In addition to the firewall endpoints that you define in this <code>Firewall</code> specification, you can create firewall endpoints in <code>VpcEndpointAssociation</code> resources for any VPC, in any Availability Zone where the firewall is already in use.</p>
    /// <p>The status of the firewall, for example whether it's ready to filter network traffic, is provided in the corresponding <code>FirewallStatus</code>. You can retrieve both the firewall and firewall status by calling <code>DescribeFirewall</code>.</p>
    pub fn firewall(mut self, input: crate::types::Firewall) -> Self {
        self.firewall = ::std::option::Option::Some(input);
        self
    }
    /// <p>A firewall defines the behavior of a firewall, the main VPC where the firewall is used, the Availability Zones where the firewall can be used, and one subnet to use for a firewall endpoint within each of the Availability Zones. The Availability Zones are defined implicitly in the subnet specifications.</p>
    /// <p>In addition to the firewall endpoints that you define in this <code>Firewall</code> specification, you can create firewall endpoints in <code>VpcEndpointAssociation</code> resources for any VPC, in any Availability Zone where the firewall is already in use.</p>
    /// <p>The status of the firewall, for example whether it's ready to filter network traffic, is provided in the corresponding <code>FirewallStatus</code>. You can retrieve both the firewall and firewall status by calling <code>DescribeFirewall</code>.</p>
    pub fn set_firewall(mut self, input: ::std::option::Option<crate::types::Firewall>) -> Self {
        self.firewall = input;
        self
    }
    /// <p>A firewall defines the behavior of a firewall, the main VPC where the firewall is used, the Availability Zones where the firewall can be used, and one subnet to use for a firewall endpoint within each of the Availability Zones. The Availability Zones are defined implicitly in the subnet specifications.</p>
    /// <p>In addition to the firewall endpoints that you define in this <code>Firewall</code> specification, you can create firewall endpoints in <code>VpcEndpointAssociation</code> resources for any VPC, in any Availability Zone where the firewall is already in use.</p>
    /// <p>The status of the firewall, for example whether it's ready to filter network traffic, is provided in the corresponding <code>FirewallStatus</code>. You can retrieve both the firewall and firewall status by calling <code>DescribeFirewall</code>.</p>
    pub fn get_firewall(&self) -> &::std::option::Option<crate::types::Firewall> {
        &self.firewall
    }
    /// <p>Detailed information about the current status of a <code>Firewall</code>. You can retrieve this for a firewall by calling <code>DescribeFirewall</code> and providing the firewall name and ARN.</p>
    /// <p>The firewall status indicates a combined status. It indicates whether all subnets are up-to-date with the latest firewall configurations, which is based on the sync states config values, and also whether all subnets have their endpoints fully enabled, based on their sync states attachment values.</p>
    pub fn firewall_status(mut self, input: crate::types::FirewallStatus) -> Self {
        self.firewall_status = ::std::option::Option::Some(input);
        self
    }
    /// <p>Detailed information about the current status of a <code>Firewall</code>. You can retrieve this for a firewall by calling <code>DescribeFirewall</code> and providing the firewall name and ARN.</p>
    /// <p>The firewall status indicates a combined status. It indicates whether all subnets are up-to-date with the latest firewall configurations, which is based on the sync states config values, and also whether all subnets have their endpoints fully enabled, based on their sync states attachment values.</p>
    pub fn set_firewall_status(mut self, input: ::std::option::Option<crate::types::FirewallStatus>) -> Self {
        self.firewall_status = input;
        self
    }
    /// <p>Detailed information about the current status of a <code>Firewall</code>. You can retrieve this for a firewall by calling <code>DescribeFirewall</code> and providing the firewall name and ARN.</p>
    /// <p>The firewall status indicates a combined status. It indicates whether all subnets are up-to-date with the latest firewall configurations, which is based on the sync states config values, and also whether all subnets have their endpoints fully enabled, based on their sync states attachment values.</p>
    pub fn get_firewall_status(&self) -> &::std::option::Option<crate::types::FirewallStatus> {
        &self.firewall_status
    }
    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
        self._request_id = Some(request_id.into());
        self
    }

    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
        self._request_id = request_id;
        self
    }
    /// Consumes the builder and constructs a [`DeleteFirewallOutput`](crate::operation::delete_firewall::DeleteFirewallOutput).
    pub fn build(self) -> crate::operation::delete_firewall::DeleteFirewallOutput {
        crate::operation::delete_firewall::DeleteFirewallOutput {
            firewall: self.firewall,
            firewall_status: self.firewall_status,
            _request_id: self._request_id,
        }
    }
}