/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace NetworkFirewall { namespace Model { /** *

The high-level properties of a firewall policy. This, along with the * FirewallPolicy, define the policy. You can retrieve all objects for a * firewall policy by calling DescribeFirewallPolicy.

See * Also:

AWS * API Reference

*/ class FirewallPolicyResponse { public: AWS_NETWORKFIREWALL_API FirewallPolicyResponse(); AWS_NETWORKFIREWALL_API FirewallPolicyResponse(Aws::Utils::Json::JsonView jsonValue); AWS_NETWORKFIREWALL_API FirewallPolicyResponse& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_NETWORKFIREWALL_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The descriptive name of the firewall policy. You can't change the name of a * firewall policy after you create it.

*/ inline const Aws::String& GetFirewallPolicyName() const{ return m_firewallPolicyName; } /** *

The descriptive name of the firewall policy. You can't change the name of a * firewall policy after you create it.

*/ inline bool FirewallPolicyNameHasBeenSet() const { return m_firewallPolicyNameHasBeenSet; } /** *

The descriptive name of the firewall policy. You can't change the name of a * firewall policy after you create it.

*/ inline void SetFirewallPolicyName(const Aws::String& value) { m_firewallPolicyNameHasBeenSet = true; m_firewallPolicyName = value; } /** *

The descriptive name of the firewall policy. You can't change the name of a * firewall policy after you create it.

*/ inline void SetFirewallPolicyName(Aws::String&& value) { m_firewallPolicyNameHasBeenSet = true; m_firewallPolicyName = std::move(value); } /** *

The descriptive name of the firewall policy. You can't change the name of a * firewall policy after you create it.

*/ inline void SetFirewallPolicyName(const char* value) { m_firewallPolicyNameHasBeenSet = true; m_firewallPolicyName.assign(value); } /** *

The descriptive name of the firewall policy. You can't change the name of a * firewall policy after you create it.

*/ inline FirewallPolicyResponse& WithFirewallPolicyName(const Aws::String& value) { SetFirewallPolicyName(value); return *this;} /** *

The descriptive name of the firewall policy. You can't change the name of a * firewall policy after you create it.

*/ inline FirewallPolicyResponse& WithFirewallPolicyName(Aws::String&& value) { SetFirewallPolicyName(std::move(value)); return *this;} /** *

The descriptive name of the firewall policy. You can't change the name of a * firewall policy after you create it.

*/ inline FirewallPolicyResponse& WithFirewallPolicyName(const char* value) { SetFirewallPolicyName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the firewall policy.

If this * response is for a create request that had DryRun set to * TRUE, then this ARN is a placeholder that isn't attached to a valid * resource.

*/ inline const Aws::String& GetFirewallPolicyArn() const{ return m_firewallPolicyArn; } /** *

The Amazon Resource Name (ARN) of the firewall policy.

If this * response is for a create request that had DryRun set to * TRUE, then this ARN is a placeholder that isn't attached to a valid * resource.

*/ inline bool FirewallPolicyArnHasBeenSet() const { return m_firewallPolicyArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the firewall policy.

If this * response is for a create request that had DryRun set to * TRUE, then this ARN is a placeholder that isn't attached to a valid * resource.

*/ inline void SetFirewallPolicyArn(const Aws::String& value) { m_firewallPolicyArnHasBeenSet = true; m_firewallPolicyArn = value; } /** *

The Amazon Resource Name (ARN) of the firewall policy.

If this * response is for a create request that had DryRun set to * TRUE, then this ARN is a placeholder that isn't attached to a valid * resource.

*/ inline void SetFirewallPolicyArn(Aws::String&& value) { m_firewallPolicyArnHasBeenSet = true; m_firewallPolicyArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the firewall policy.

If this * response is for a create request that had DryRun set to * TRUE, then this ARN is a placeholder that isn't attached to a valid * resource.

*/ inline void SetFirewallPolicyArn(const char* value) { m_firewallPolicyArnHasBeenSet = true; m_firewallPolicyArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the firewall policy.

If this * response is for a create request that had DryRun set to * TRUE, then this ARN is a placeholder that isn't attached to a valid * resource.

*/ inline FirewallPolicyResponse& WithFirewallPolicyArn(const Aws::String& value) { SetFirewallPolicyArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the firewall policy.

If this * response is for a create request that had DryRun set to * TRUE, then this ARN is a placeholder that isn't attached to a valid * resource.

*/ inline FirewallPolicyResponse& WithFirewallPolicyArn(Aws::String&& value) { SetFirewallPolicyArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the firewall policy.

If this * response is for a create request that had DryRun set to * TRUE, then this ARN is a placeholder that isn't attached to a valid * resource.

*/ inline FirewallPolicyResponse& WithFirewallPolicyArn(const char* value) { SetFirewallPolicyArn(value); return *this;} /** *

The unique identifier for the firewall policy.

*/ inline const Aws::String& GetFirewallPolicyId() const{ return m_firewallPolicyId; } /** *

The unique identifier for the firewall policy.

*/ inline bool FirewallPolicyIdHasBeenSet() const { return m_firewallPolicyIdHasBeenSet; } /** *

The unique identifier for the firewall policy.

*/ inline void SetFirewallPolicyId(const Aws::String& value) { m_firewallPolicyIdHasBeenSet = true; m_firewallPolicyId = value; } /** *

The unique identifier for the firewall policy.

*/ inline void SetFirewallPolicyId(Aws::String&& value) { m_firewallPolicyIdHasBeenSet = true; m_firewallPolicyId = std::move(value); } /** *

The unique identifier for the firewall policy.

*/ inline void SetFirewallPolicyId(const char* value) { m_firewallPolicyIdHasBeenSet = true; m_firewallPolicyId.assign(value); } /** *

The unique identifier for the firewall policy.

*/ inline FirewallPolicyResponse& WithFirewallPolicyId(const Aws::String& value) { SetFirewallPolicyId(value); return *this;} /** *

The unique identifier for the firewall policy.

*/ inline FirewallPolicyResponse& WithFirewallPolicyId(Aws::String&& value) { SetFirewallPolicyId(std::move(value)); return *this;} /** *

The unique identifier for the firewall policy.

*/ inline FirewallPolicyResponse& WithFirewallPolicyId(const char* value) { SetFirewallPolicyId(value); return *this;} /** *

A description of the firewall policy.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

A description of the firewall policy.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

A description of the firewall policy.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

A description of the firewall policy.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

A description of the firewall policy.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

A description of the firewall policy.

*/ inline FirewallPolicyResponse& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

A description of the firewall policy.

*/ inline FirewallPolicyResponse& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

A description of the firewall policy.

*/ inline FirewallPolicyResponse& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The current status of the firewall policy. You can retrieve this for a * firewall policy by calling DescribeFirewallPolicy and providing the * firewall policy's name or ARN.

*/ inline const ResourceStatus& GetFirewallPolicyStatus() const{ return m_firewallPolicyStatus; } /** *

The current status of the firewall policy. You can retrieve this for a * firewall policy by calling DescribeFirewallPolicy and providing the * firewall policy's name or ARN.

*/ inline bool FirewallPolicyStatusHasBeenSet() const { return m_firewallPolicyStatusHasBeenSet; } /** *

The current status of the firewall policy. You can retrieve this for a * firewall policy by calling DescribeFirewallPolicy and providing the * firewall policy's name or ARN.

*/ inline void SetFirewallPolicyStatus(const ResourceStatus& value) { m_firewallPolicyStatusHasBeenSet = true; m_firewallPolicyStatus = value; } /** *

The current status of the firewall policy. You can retrieve this for a * firewall policy by calling DescribeFirewallPolicy and providing the * firewall policy's name or ARN.

*/ inline void SetFirewallPolicyStatus(ResourceStatus&& value) { m_firewallPolicyStatusHasBeenSet = true; m_firewallPolicyStatus = std::move(value); } /** *

The current status of the firewall policy. You can retrieve this for a * firewall policy by calling DescribeFirewallPolicy and providing the * firewall policy's name or ARN.

*/ inline FirewallPolicyResponse& WithFirewallPolicyStatus(const ResourceStatus& value) { SetFirewallPolicyStatus(value); return *this;} /** *

The current status of the firewall policy. You can retrieve this for a * firewall policy by calling DescribeFirewallPolicy and providing the * firewall policy's name or ARN.

*/ inline FirewallPolicyResponse& WithFirewallPolicyStatus(ResourceStatus&& value) { SetFirewallPolicyStatus(std::move(value)); return *this;} /** *

The key:value pairs to associate with the resource.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

The key:value pairs to associate with the resource.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The key:value pairs to associate with the resource.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The key:value pairs to associate with the resource.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The key:value pairs to associate with the resource.

*/ inline FirewallPolicyResponse& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

The key:value pairs to associate with the resource.

*/ inline FirewallPolicyResponse& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

The key:value pairs to associate with the resource.

*/ inline FirewallPolicyResponse& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The key:value pairs to associate with the resource.

*/ inline FirewallPolicyResponse& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

The number of capacity units currently consumed by the policy's stateless * rules.

*/ inline int GetConsumedStatelessRuleCapacity() const{ return m_consumedStatelessRuleCapacity; } /** *

The number of capacity units currently consumed by the policy's stateless * rules.

*/ inline bool ConsumedStatelessRuleCapacityHasBeenSet() const { return m_consumedStatelessRuleCapacityHasBeenSet; } /** *

The number of capacity units currently consumed by the policy's stateless * rules.

*/ inline void SetConsumedStatelessRuleCapacity(int value) { m_consumedStatelessRuleCapacityHasBeenSet = true; m_consumedStatelessRuleCapacity = value; } /** *

The number of capacity units currently consumed by the policy's stateless * rules.

*/ inline FirewallPolicyResponse& WithConsumedStatelessRuleCapacity(int value) { SetConsumedStatelessRuleCapacity(value); return *this;} /** *

The number of capacity units currently consumed by the policy's stateful * rules.

*/ inline int GetConsumedStatefulRuleCapacity() const{ return m_consumedStatefulRuleCapacity; } /** *

The number of capacity units currently consumed by the policy's stateful * rules.

*/ inline bool ConsumedStatefulRuleCapacityHasBeenSet() const { return m_consumedStatefulRuleCapacityHasBeenSet; } /** *

The number of capacity units currently consumed by the policy's stateful * rules.

*/ inline void SetConsumedStatefulRuleCapacity(int value) { m_consumedStatefulRuleCapacityHasBeenSet = true; m_consumedStatefulRuleCapacity = value; } /** *

The number of capacity units currently consumed by the policy's stateful * rules.

*/ inline FirewallPolicyResponse& WithConsumedStatefulRuleCapacity(int value) { SetConsumedStatefulRuleCapacity(value); return *this;} /** *

The number of firewalls that are associated with this firewall policy.

*/ inline int GetNumberOfAssociations() const{ return m_numberOfAssociations; } /** *

The number of firewalls that are associated with this firewall policy.

*/ inline bool NumberOfAssociationsHasBeenSet() const { return m_numberOfAssociationsHasBeenSet; } /** *

The number of firewalls that are associated with this firewall policy.

*/ inline void SetNumberOfAssociations(int value) { m_numberOfAssociationsHasBeenSet = true; m_numberOfAssociations = value; } /** *

The number of firewalls that are associated with this firewall policy.

*/ inline FirewallPolicyResponse& WithNumberOfAssociations(int value) { SetNumberOfAssociations(value); return *this;} /** *

A complex type that contains the Amazon Web Services KMS encryption * configuration settings for your firewall policy.

*/ inline const EncryptionConfiguration& GetEncryptionConfiguration() const{ return m_encryptionConfiguration; } /** *

A complex type that contains the Amazon Web Services KMS encryption * configuration settings for your firewall policy.

*/ inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; } /** *

A complex type that contains the Amazon Web Services KMS encryption * configuration settings for your firewall policy.

*/ inline void SetEncryptionConfiguration(const EncryptionConfiguration& value) { m_encryptionConfigurationHasBeenSet = true; m_encryptionConfiguration = value; } /** *

A complex type that contains the Amazon Web Services KMS encryption * configuration settings for your firewall policy.

*/ inline void SetEncryptionConfiguration(EncryptionConfiguration&& value) { m_encryptionConfigurationHasBeenSet = true; m_encryptionConfiguration = std::move(value); } /** *

A complex type that contains the Amazon Web Services KMS encryption * configuration settings for your firewall policy.

*/ inline FirewallPolicyResponse& WithEncryptionConfiguration(const EncryptionConfiguration& value) { SetEncryptionConfiguration(value); return *this;} /** *

A complex type that contains the Amazon Web Services KMS encryption * configuration settings for your firewall policy.

*/ inline FirewallPolicyResponse& WithEncryptionConfiguration(EncryptionConfiguration&& value) { SetEncryptionConfiguration(std::move(value)); return *this;} /** *

The last time that the firewall policy was changed.

*/ inline const Aws::Utils::DateTime& GetLastModifiedTime() const{ return m_lastModifiedTime; } /** *

The last time that the firewall policy was changed.

*/ inline bool LastModifiedTimeHasBeenSet() const { return m_lastModifiedTimeHasBeenSet; } /** *

The last time that the firewall policy was changed.

*/ inline void SetLastModifiedTime(const Aws::Utils::DateTime& value) { m_lastModifiedTimeHasBeenSet = true; m_lastModifiedTime = value; } /** *

The last time that the firewall policy was changed.

*/ inline void SetLastModifiedTime(Aws::Utils::DateTime&& value) { m_lastModifiedTimeHasBeenSet = true; m_lastModifiedTime = std::move(value); } /** *

The last time that the firewall policy was changed.

*/ inline FirewallPolicyResponse& WithLastModifiedTime(const Aws::Utils::DateTime& value) { SetLastModifiedTime(value); return *this;} /** *

The last time that the firewall policy was changed.

*/ inline FirewallPolicyResponse& WithLastModifiedTime(Aws::Utils::DateTime&& value) { SetLastModifiedTime(std::move(value)); return *this;} private: Aws::String m_firewallPolicyName; bool m_firewallPolicyNameHasBeenSet = false; Aws::String m_firewallPolicyArn; bool m_firewallPolicyArnHasBeenSet = false; Aws::String m_firewallPolicyId; bool m_firewallPolicyIdHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; ResourceStatus m_firewallPolicyStatus; bool m_firewallPolicyStatusHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; int m_consumedStatelessRuleCapacity; bool m_consumedStatelessRuleCapacityHasBeenSet = false; int m_consumedStatefulRuleCapacity; bool m_consumedStatefulRuleCapacityHasBeenSet = false; int m_numberOfAssociations; bool m_numberOfAssociationsHasBeenSet = false; EncryptionConfiguration m_encryptionConfiguration; bool m_encryptionConfigurationHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedTime; bool m_lastModifiedTimeHasBeenSet = false; }; } // namespace Model } // namespace NetworkFirewall } // namespace Aws