7#include <aws/network-firewall/NetworkFirewall_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/network-firewall/model/EncryptionConfiguration.h>
11#include <aws/network-firewall/model/SubnetMapping.h>
12#include <aws/network-firewall/model/Tag.h>
13#include <aws/network-firewall/model/EnabledAnalysisType.h>
14#include <aws/network-firewall/model/AvailabilityZoneMapping.h>
27namespace NetworkFirewall
64 template<
typename FirewallNameT = Aws::String>
65 void SetFirewallName(FirewallNameT&& value) { m_firewallNameHasBeenSet =
true; m_firewallName = std::forward<FirewallNameT>(value); }
66 template<
typename FirewallNameT = Aws::String>
76 template<
typename FirewallArnT = Aws::String>
77 void SetFirewallArn(FirewallArnT&& value) { m_firewallArnHasBeenSet =
true; m_firewallArn = std::forward<FirewallArnT>(value); }
78 template<
typename FirewallArnT = Aws::String>
91 template<
typename FirewallPolicyArnT = Aws::String>
92 void SetFirewallPolicyArn(FirewallPolicyArnT&& value) { m_firewallPolicyArnHasBeenSet =
true; m_firewallPolicyArn = std::forward<FirewallPolicyArnT>(value); }
93 template<
typename FirewallPolicyArnT = Aws::String>
103 template<
typename VpcIdT = Aws::String>
104 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet =
true; m_vpcId = std::forward<VpcIdT>(value); }
105 template<
typename VpcIdT = Aws::String>
126 template<
typename SubnetMappingsT = Aws::Vector<SubnetMapping>>
127 void SetSubnetMappings(SubnetMappingsT&& value) { m_subnetMappingsHasBeenSet =
true; m_subnetMappings = std::forward<SubnetMappingsT>(value); }
128 template<
typename SubnetMappingsT = Aws::Vector<SubnetMapping>>
130 template<
typename SubnetMappingsT = SubnetMapping>
131 Firewall&
AddSubnetMappings(SubnetMappingsT&& value) { m_subnetMappingsHasBeenSet =
true; m_subnetMappings.emplace_back(std::forward<SubnetMappingsT>(value));
return *
this; }
144 inline void SetDeleteProtection(
bool value) { m_deleteProtectionHasBeenSet =
true; m_deleteProtection = value; }
181 template<
typename DescriptionT = Aws::String>
182 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
183 template<
typename DescriptionT = Aws::String>
193 template<
typename FirewallIdT = Aws::String>
194 void SetFirewallId(FirewallIdT&& value) { m_firewallIdHasBeenSet =
true; m_firewallId = std::forward<FirewallIdT>(value); }
195 template<
typename FirewallIdT = Aws::String>
205 template<
typename TagsT = Aws::Vector<Tag>>
206 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
207 template<
typename TagsT = Aws::Vector<Tag>>
209 template<
typename TagsT = Tag>
210 Firewall&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
220 template<
typename EncryptionConfigurationT = EncryptionConfiguration>
221 void SetEncryptionConfiguration(EncryptionConfigurationT&& value) { m_encryptionConfigurationHasBeenSet =
true; m_encryptionConfiguration = std::forward<EncryptionConfigurationT>(value); }
222 template<
typename EncryptionConfigurationT = EncryptionConfiguration>
244 template<
typename EnabledAnalysisTypesT = Aws::Vector<EnabledAnalysisType>>
245 void SetEnabledAnalysisTypes(EnabledAnalysisTypesT&& value) { m_enabledAnalysisTypesHasBeenSet =
true; m_enabledAnalysisTypes = std::forward<EnabledAnalysisTypesT>(value); }
246 template<
typename EnabledAnalysisTypesT = Aws::Vector<EnabledAnalysisType>>
258 template<
typename TransitGatewayIdT = Aws::String>
259 void SetTransitGatewayId(TransitGatewayIdT&& value) { m_transitGatewayIdHasBeenSet =
true; m_transitGatewayId = std::forward<TransitGatewayIdT>(value); }
260 template<
typename TransitGatewayIdT = Aws::String>
272 template<
typename TransitGatewayOwnerAccountIdT = Aws::String>
273 void SetTransitGatewayOwnerAccountId(TransitGatewayOwnerAccountIdT&& value) { m_transitGatewayOwnerAccountIdHasBeenSet =
true; m_transitGatewayOwnerAccountId = std::forward<TransitGatewayOwnerAccountIdT>(value); }
274 template<
typename TransitGatewayOwnerAccountIdT = Aws::String>
286 template<
typename AvailabilityZoneMappingsT = Aws::Vector<AvailabilityZoneMapping>>
287 void SetAvailabilityZoneMappings(AvailabilityZoneMappingsT&& value) { m_availabilityZoneMappingsHasBeenSet =
true; m_availabilityZoneMappings = std::forward<AvailabilityZoneMappingsT>(value); }
288 template<
typename AvailabilityZoneMappingsT = Aws::Vector<AvailabilityZoneMapping>>
290 template<
typename AvailabilityZoneMappingsT = AvailabilityZoneMapping>
291 Firewall&
AddAvailabilityZoneMappings(AvailabilityZoneMappingsT&& value) { m_availabilityZoneMappingsHasBeenSet =
true; m_availabilityZoneMappings.emplace_back(std::forward<AvailabilityZoneMappingsT>(value));
return *
this; }
308 bool m_firewallNameHasBeenSet =
false;
311 bool m_firewallArnHasBeenSet =
false;
314 bool m_firewallPolicyArnHasBeenSet =
false;
317 bool m_vpcIdHasBeenSet =
false;
320 bool m_subnetMappingsHasBeenSet =
false;
322 bool m_deleteProtection{
false};
323 bool m_deleteProtectionHasBeenSet =
false;
325 bool m_subnetChangeProtection{
false};
326 bool m_subnetChangeProtectionHasBeenSet =
false;
328 bool m_firewallPolicyChangeProtection{
false};
329 bool m_firewallPolicyChangeProtectionHasBeenSet =
false;
332 bool m_descriptionHasBeenSet =
false;
335 bool m_firewallIdHasBeenSet =
false;
338 bool m_tagsHasBeenSet =
false;
340 EncryptionConfiguration m_encryptionConfiguration;
341 bool m_encryptionConfigurationHasBeenSet =
false;
343 int m_numberOfAssociations{0};
344 bool m_numberOfAssociationsHasBeenSet =
false;
347 bool m_enabledAnalysisTypesHasBeenSet =
false;
350 bool m_transitGatewayIdHasBeenSet =
false;
353 bool m_transitGatewayOwnerAccountIdHasBeenSet =
false;
356 bool m_availabilityZoneMappingsHasBeenSet =
false;
358 bool m_availabilityZoneChangeProtection{
false};
359 bool m_availabilityZoneChangeProtectionHasBeenSet =
false;
const EncryptionConfiguration & GetEncryptionConfiguration() const
const Aws::String & GetFirewallPolicyArn() const
void SetFirewallPolicyArn(FirewallPolicyArnT &&value)
bool DeleteProtectionHasBeenSet() const
Firewall & AddTags(TagsT &&value)
Firewall & WithSubnetMappings(SubnetMappingsT &&value)
AWS_NETWORKFIREWALL_API Firewall & operator=(Aws::Utils::Json::JsonView jsonValue)
Firewall & WithTransitGatewayOwnerAccountId(TransitGatewayOwnerAccountIdT &&value)
void SetDeleteProtection(bool value)
bool EncryptionConfigurationHasBeenSet() const
void SetEnabledAnalysisTypes(EnabledAnalysisTypesT &&value)
const Aws::Vector< SubnetMapping > & GetSubnetMappings() const
void SetFirewallPolicyChangeProtection(bool value)
bool SubnetMappingsHasBeenSet() const
AWS_NETWORKFIREWALL_API Firewall()=default
Firewall & WithAvailabilityZoneMappings(AvailabilityZoneMappingsT &&value)
Firewall & WithTransitGatewayId(TransitGatewayIdT &&value)
bool FirewallPolicyArnHasBeenSet() const
Firewall & WithAvailabilityZoneChangeProtection(bool value)
void SetSubnetMappings(SubnetMappingsT &&value)
void SetFirewallId(FirewallIdT &&value)
bool TransitGatewayOwnerAccountIdHasBeenSet() const
const Aws::String & GetTransitGatewayId() const
Firewall & WithDeleteProtection(bool value)
AWS_NETWORKFIREWALL_API Firewall(Aws::Utils::Json::JsonView jsonValue)
Firewall & WithEncryptionConfiguration(EncryptionConfigurationT &&value)
const Aws::String & GetDescription() const
Firewall & AddAvailabilityZoneMappings(AvailabilityZoneMappingsT &&value)
const Aws::String & GetFirewallArn() const
void SetEncryptionConfiguration(EncryptionConfigurationT &&value)
void SetAvailabilityZoneChangeProtection(bool value)
bool TransitGatewayIdHasBeenSet() const
bool AvailabilityZoneChangeProtectionHasBeenSet() const
bool GetFirewallPolicyChangeProtection() const
Firewall & WithSubnetChangeProtection(bool value)
Firewall & WithEnabledAnalysisTypes(EnabledAnalysisTypesT &&value)
Firewall & WithFirewallArn(FirewallArnT &&value)
bool DescriptionHasBeenSet() const
const Aws::Vector< AvailabilityZoneMapping > & GetAvailabilityZoneMappings() const
const Aws::String & GetFirewallId() const
void SetVpcId(VpcIdT &&value)
bool GetAvailabilityZoneChangeProtection() const
void SetDescription(DescriptionT &&value)
void SetFirewallArn(FirewallArnT &&value)
bool FirewallNameHasBeenSet() const
void SetAvailabilityZoneMappings(AvailabilityZoneMappingsT &&value)
Firewall & WithFirewallId(FirewallIdT &&value)
bool TagsHasBeenSet() const
bool VpcIdHasBeenSet() const
Firewall & AddSubnetMappings(SubnetMappingsT &&value)
const Aws::Vector< Tag > & GetTags() const
void SetSubnetChangeProtection(bool value)
void SetTransitGatewayOwnerAccountId(TransitGatewayOwnerAccountIdT &&value)
Firewall & AddEnabledAnalysisTypes(EnabledAnalysisType value)
Firewall & WithDescription(DescriptionT &&value)
Firewall & WithFirewallPolicyArn(FirewallPolicyArnT &&value)
Firewall & WithNumberOfAssociations(int value)
const Aws::String & GetFirewallName() const
const Aws::String & GetTransitGatewayOwnerAccountId() const
bool GetSubnetChangeProtection() const
int GetNumberOfAssociations() const
bool FirewallIdHasBeenSet() const
void SetTransitGatewayId(TransitGatewayIdT &&value)
Firewall & WithVpcId(VpcIdT &&value)
Firewall & WithTags(TagsT &&value)
const Aws::String & GetVpcId() const
void SetTags(TagsT &&value)
const Aws::Vector< EnabledAnalysisType > & GetEnabledAnalysisTypes() const
bool FirewallPolicyChangeProtectionHasBeenSet() const
bool FirewallArnHasBeenSet() const
void SetNumberOfAssociations(int value)
bool AvailabilityZoneMappingsHasBeenSet() const
bool EnabledAnalysisTypesHasBeenSet() const
AWS_NETWORKFIREWALL_API Aws::Utils::Json::JsonValue Jsonize() const
bool GetDeleteProtection() const
Firewall & WithFirewallPolicyChangeProtection(bool value)
void SetFirewallName(FirewallNameT &&value)
bool SubnetChangeProtectionHasBeenSet() const
bool NumberOfAssociationsHasBeenSet() const
Firewall & WithFirewallName(FirewallNameT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue