AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Firewall.h
1
6#pragma once
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>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace NetworkFirewall
28{
29namespace Model
30{
31
49 {
50 public:
51 AWS_NETWORKFIREWALL_API Firewall() = default;
52 AWS_NETWORKFIREWALL_API Firewall(Aws::Utils::Json::JsonView jsonValue);
53 AWS_NETWORKFIREWALL_API Firewall& operator=(Aws::Utils::Json::JsonView jsonValue);
54 AWS_NETWORKFIREWALL_API Aws::Utils::Json::JsonValue Jsonize() const;
55
56
58
62 inline const Aws::String& GetFirewallName() const { return m_firewallName; }
63 inline bool FirewallNameHasBeenSet() const { return m_firewallNameHasBeenSet; }
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>
67 Firewall& WithFirewallName(FirewallNameT&& value) { SetFirewallName(std::forward<FirewallNameT>(value)); return *this;}
69
71
74 inline const Aws::String& GetFirewallArn() const { return m_firewallArn; }
75 inline bool FirewallArnHasBeenSet() const { return m_firewallArnHasBeenSet; }
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>
79 Firewall& WithFirewallArn(FirewallArnT&& value) { SetFirewallArn(std::forward<FirewallArnT>(value)); return *this;}
81
83
89 inline const Aws::String& GetFirewallPolicyArn() const { return m_firewallPolicyArn; }
90 inline bool FirewallPolicyArnHasBeenSet() const { return m_firewallPolicyArnHasBeenSet; }
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>
94 Firewall& WithFirewallPolicyArn(FirewallPolicyArnT&& value) { SetFirewallPolicyArn(std::forward<FirewallPolicyArnT>(value)); return *this;}
96
98
101 inline const Aws::String& GetVpcId() const { return m_vpcId; }
102 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
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>
106 Firewall& WithVpcId(VpcIdT&& value) { SetVpcId(std::forward<VpcIdT>(value)); return *this;}
108
110
124 inline const Aws::Vector<SubnetMapping>& GetSubnetMappings() const { return m_subnetMappings; }
125 inline bool SubnetMappingsHasBeenSet() const { return m_subnetMappingsHasBeenSet; }
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>>
129 Firewall& WithSubnetMappings(SubnetMappingsT&& value) { SetSubnetMappings(std::forward<SubnetMappingsT>(value)); return *this;}
130 template<typename SubnetMappingsT = SubnetMapping>
131 Firewall& AddSubnetMappings(SubnetMappingsT&& value) { m_subnetMappingsHasBeenSet = true; m_subnetMappings.emplace_back(std::forward<SubnetMappingsT>(value)); return *this; }
133
135
142 inline bool GetDeleteProtection() const { return m_deleteProtection; }
143 inline bool DeleteProtectionHasBeenSet() const { return m_deleteProtectionHasBeenSet; }
144 inline void SetDeleteProtection(bool value) { m_deleteProtectionHasBeenSet = true; m_deleteProtection = value; }
145 inline Firewall& WithDeleteProtection(bool value) { SetDeleteProtection(value); return *this;}
147
149
155 inline bool GetSubnetChangeProtection() const { return m_subnetChangeProtection; }
156 inline bool SubnetChangeProtectionHasBeenSet() const { return m_subnetChangeProtectionHasBeenSet; }
157 inline void SetSubnetChangeProtection(bool value) { m_subnetChangeProtectionHasBeenSet = true; m_subnetChangeProtection = value; }
158 inline Firewall& WithSubnetChangeProtection(bool value) { SetSubnetChangeProtection(value); return *this;}
160
162
169 inline bool GetFirewallPolicyChangeProtection() const { return m_firewallPolicyChangeProtection; }
170 inline bool FirewallPolicyChangeProtectionHasBeenSet() const { return m_firewallPolicyChangeProtectionHasBeenSet; }
171 inline void SetFirewallPolicyChangeProtection(bool value) { m_firewallPolicyChangeProtectionHasBeenSet = true; m_firewallPolicyChangeProtection = value; }
174
176
179 inline const Aws::String& GetDescription() const { return m_description; }
180 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
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>
184 Firewall& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
186
188
191 inline const Aws::String& GetFirewallId() const { return m_firewallId; }
192 inline bool FirewallIdHasBeenSet() const { return m_firewallIdHasBeenSet; }
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>
196 Firewall& WithFirewallId(FirewallIdT&& value) { SetFirewallId(std::forward<FirewallIdT>(value)); return *this;}
198
200
203 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
204 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
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>>
208 Firewall& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
209 template<typename TagsT = Tag>
210 Firewall& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
212
214
218 inline const EncryptionConfiguration& GetEncryptionConfiguration() const { return m_encryptionConfiguration; }
219 inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; }
220 template<typename EncryptionConfigurationT = EncryptionConfiguration>
221 void SetEncryptionConfiguration(EncryptionConfigurationT&& value) { m_encryptionConfigurationHasBeenSet = true; m_encryptionConfiguration = std::forward<EncryptionConfigurationT>(value); }
222 template<typename EncryptionConfigurationT = EncryptionConfiguration>
223 Firewall& WithEncryptionConfiguration(EncryptionConfigurationT&& value) { SetEncryptionConfiguration(std::forward<EncryptionConfigurationT>(value)); return *this;}
225
227
231 inline int GetNumberOfAssociations() const { return m_numberOfAssociations; }
232 inline bool NumberOfAssociationsHasBeenSet() const { return m_numberOfAssociationsHasBeenSet; }
233 inline void SetNumberOfAssociations(int value) { m_numberOfAssociationsHasBeenSet = true; m_numberOfAssociations = value; }
234 inline Firewall& WithNumberOfAssociations(int value) { SetNumberOfAssociations(value); return *this;}
236
238
242 inline const Aws::Vector<EnabledAnalysisType>& GetEnabledAnalysisTypes() const { return m_enabledAnalysisTypes; }
243 inline bool EnabledAnalysisTypesHasBeenSet() const { return m_enabledAnalysisTypesHasBeenSet; }
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>>
247 Firewall& WithEnabledAnalysisTypes(EnabledAnalysisTypesT&& value) { SetEnabledAnalysisTypes(std::forward<EnabledAnalysisTypesT>(value)); return *this;}
248 inline Firewall& AddEnabledAnalysisTypes(EnabledAnalysisType value) { m_enabledAnalysisTypesHasBeenSet = true; m_enabledAnalysisTypes.push_back(value); return *this; }
250
252
256 inline const Aws::String& GetTransitGatewayId() const { return m_transitGatewayId; }
257 inline bool TransitGatewayIdHasBeenSet() const { return m_transitGatewayIdHasBeenSet; }
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>
261 Firewall& WithTransitGatewayId(TransitGatewayIdT&& value) { SetTransitGatewayId(std::forward<TransitGatewayIdT>(value)); return *this;}
263
265
270 inline const Aws::String& GetTransitGatewayOwnerAccountId() const { return m_transitGatewayOwnerAccountId; }
271 inline bool TransitGatewayOwnerAccountIdHasBeenSet() const { return m_transitGatewayOwnerAccountIdHasBeenSet; }
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>
275 Firewall& WithTransitGatewayOwnerAccountId(TransitGatewayOwnerAccountIdT&& value) { SetTransitGatewayOwnerAccountId(std::forward<TransitGatewayOwnerAccountIdT>(value)); return *this;}
277
279
284 inline const Aws::Vector<AvailabilityZoneMapping>& GetAvailabilityZoneMappings() const { return m_availabilityZoneMappings; }
285 inline bool AvailabilityZoneMappingsHasBeenSet() const { return m_availabilityZoneMappingsHasBeenSet; }
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>>
289 Firewall& WithAvailabilityZoneMappings(AvailabilityZoneMappingsT&& value) { SetAvailabilityZoneMappings(std::forward<AvailabilityZoneMappingsT>(value)); return *this;}
290 template<typename AvailabilityZoneMappingsT = AvailabilityZoneMapping>
291 Firewall& AddAvailabilityZoneMappings(AvailabilityZoneMappingsT&& value) { m_availabilityZoneMappingsHasBeenSet = true; m_availabilityZoneMappings.emplace_back(std::forward<AvailabilityZoneMappingsT>(value)); return *this; }
293
295
300 inline bool GetAvailabilityZoneChangeProtection() const { return m_availabilityZoneChangeProtection; }
301 inline bool AvailabilityZoneChangeProtectionHasBeenSet() const { return m_availabilityZoneChangeProtectionHasBeenSet; }
302 inline void SetAvailabilityZoneChangeProtection(bool value) { m_availabilityZoneChangeProtectionHasBeenSet = true; m_availabilityZoneChangeProtection = value; }
305 private:
306
307 Aws::String m_firewallName;
308 bool m_firewallNameHasBeenSet = false;
309
310 Aws::String m_firewallArn;
311 bool m_firewallArnHasBeenSet = false;
312
313 Aws::String m_firewallPolicyArn;
314 bool m_firewallPolicyArnHasBeenSet = false;
315
316 Aws::String m_vpcId;
317 bool m_vpcIdHasBeenSet = false;
318
319 Aws::Vector<SubnetMapping> m_subnetMappings;
320 bool m_subnetMappingsHasBeenSet = false;
321
322 bool m_deleteProtection{false};
323 bool m_deleteProtectionHasBeenSet = false;
324
325 bool m_subnetChangeProtection{false};
326 bool m_subnetChangeProtectionHasBeenSet = false;
327
328 bool m_firewallPolicyChangeProtection{false};
329 bool m_firewallPolicyChangeProtectionHasBeenSet = false;
330
331 Aws::String m_description;
332 bool m_descriptionHasBeenSet = false;
333
334 Aws::String m_firewallId;
335 bool m_firewallIdHasBeenSet = false;
336
337 Aws::Vector<Tag> m_tags;
338 bool m_tagsHasBeenSet = false;
339
340 EncryptionConfiguration m_encryptionConfiguration;
341 bool m_encryptionConfigurationHasBeenSet = false;
342
343 int m_numberOfAssociations{0};
344 bool m_numberOfAssociationsHasBeenSet = false;
345
346 Aws::Vector<EnabledAnalysisType> m_enabledAnalysisTypes;
347 bool m_enabledAnalysisTypesHasBeenSet = false;
348
349 Aws::String m_transitGatewayId;
350 bool m_transitGatewayIdHasBeenSet = false;
351
352 Aws::String m_transitGatewayOwnerAccountId;
353 bool m_transitGatewayOwnerAccountIdHasBeenSet = false;
354
355 Aws::Vector<AvailabilityZoneMapping> m_availabilityZoneMappings;
356 bool m_availabilityZoneMappingsHasBeenSet = false;
357
358 bool m_availabilityZoneChangeProtection{false};
359 bool m_availabilityZoneChangeProtectionHasBeenSet = false;
360 };
361
362} // namespace Model
363} // namespace NetworkFirewall
364} // namespace Aws
const EncryptionConfiguration & GetEncryptionConfiguration() const
Definition Firewall.h:218
const Aws::String & GetFirewallPolicyArn() const
Definition Firewall.h:89
void SetFirewallPolicyArn(FirewallPolicyArnT &&value)
Definition Firewall.h:92
Firewall & AddTags(TagsT &&value)
Definition Firewall.h:210
Firewall & WithSubnetMappings(SubnetMappingsT &&value)
Definition Firewall.h:129
AWS_NETWORKFIREWALL_API Firewall & operator=(Aws::Utils::Json::JsonView jsonValue)
Firewall & WithTransitGatewayOwnerAccountId(TransitGatewayOwnerAccountIdT &&value)
Definition Firewall.h:275
void SetEnabledAnalysisTypes(EnabledAnalysisTypesT &&value)
Definition Firewall.h:245
const Aws::Vector< SubnetMapping > & GetSubnetMappings() const
Definition Firewall.h:124
void SetFirewallPolicyChangeProtection(bool value)
Definition Firewall.h:171
AWS_NETWORKFIREWALL_API Firewall()=default
Firewall & WithAvailabilityZoneMappings(AvailabilityZoneMappingsT &&value)
Definition Firewall.h:289
Firewall & WithTransitGatewayId(TransitGatewayIdT &&value)
Definition Firewall.h:261
Firewall & WithAvailabilityZoneChangeProtection(bool value)
Definition Firewall.h:303
void SetSubnetMappings(SubnetMappingsT &&value)
Definition Firewall.h:127
void SetFirewallId(FirewallIdT &&value)
Definition Firewall.h:194
bool TransitGatewayOwnerAccountIdHasBeenSet() const
Definition Firewall.h:271
const Aws::String & GetTransitGatewayId() const
Definition Firewall.h:256
Firewall & WithDeleteProtection(bool value)
Definition Firewall.h:145
AWS_NETWORKFIREWALL_API Firewall(Aws::Utils::Json::JsonView jsonValue)
Firewall & WithEncryptionConfiguration(EncryptionConfigurationT &&value)
Definition Firewall.h:223
const Aws::String & GetDescription() const
Definition Firewall.h:179
Firewall & AddAvailabilityZoneMappings(AvailabilityZoneMappingsT &&value)
Definition Firewall.h:291
const Aws::String & GetFirewallArn() const
Definition Firewall.h:74
void SetEncryptionConfiguration(EncryptionConfigurationT &&value)
Definition Firewall.h:221
void SetAvailabilityZoneChangeProtection(bool value)
Definition Firewall.h:302
bool AvailabilityZoneChangeProtectionHasBeenSet() const
Definition Firewall.h:301
Firewall & WithSubnetChangeProtection(bool value)
Definition Firewall.h:158
Firewall & WithEnabledAnalysisTypes(EnabledAnalysisTypesT &&value)
Definition Firewall.h:247
Firewall & WithFirewallArn(FirewallArnT &&value)
Definition Firewall.h:79
const Aws::Vector< AvailabilityZoneMapping > & GetAvailabilityZoneMappings() const
Definition Firewall.h:284
const Aws::String & GetFirewallId() const
Definition Firewall.h:191
bool GetAvailabilityZoneChangeProtection() const
Definition Firewall.h:300
void SetDescription(DescriptionT &&value)
Definition Firewall.h:182
void SetFirewallArn(FirewallArnT &&value)
Definition Firewall.h:77
void SetAvailabilityZoneMappings(AvailabilityZoneMappingsT &&value)
Definition Firewall.h:287
Firewall & WithFirewallId(FirewallIdT &&value)
Definition Firewall.h:196
Firewall & AddSubnetMappings(SubnetMappingsT &&value)
Definition Firewall.h:131
const Aws::Vector< Tag > & GetTags() const
Definition Firewall.h:203
void SetSubnetChangeProtection(bool value)
Definition Firewall.h:157
void SetTransitGatewayOwnerAccountId(TransitGatewayOwnerAccountIdT &&value)
Definition Firewall.h:273
Firewall & AddEnabledAnalysisTypes(EnabledAnalysisType value)
Definition Firewall.h:248
Firewall & WithDescription(DescriptionT &&value)
Definition Firewall.h:184
Firewall & WithFirewallPolicyArn(FirewallPolicyArnT &&value)
Definition Firewall.h:94
Firewall & WithNumberOfAssociations(int value)
Definition Firewall.h:234
const Aws::String & GetFirewallName() const
Definition Firewall.h:62
const Aws::String & GetTransitGatewayOwnerAccountId() const
Definition Firewall.h:270
void SetTransitGatewayId(TransitGatewayIdT &&value)
Definition Firewall.h:259
Firewall & WithVpcId(VpcIdT &&value)
Definition Firewall.h:106
Firewall & WithTags(TagsT &&value)
Definition Firewall.h:208
const Aws::String & GetVpcId() const
Definition Firewall.h:101
const Aws::Vector< EnabledAnalysisType > & GetEnabledAnalysisTypes() const
Definition Firewall.h:242
bool FirewallPolicyChangeProtectionHasBeenSet() const
Definition Firewall.h:170
bool AvailabilityZoneMappingsHasBeenSet() const
Definition Firewall.h:285
AWS_NETWORKFIREWALL_API Aws::Utils::Json::JsonValue Jsonize() const
Firewall & WithFirewallPolicyChangeProtection(bool value)
Definition Firewall.h:172
void SetFirewallName(FirewallNameT &&value)
Definition Firewall.h:65
Firewall & WithFirewallName(FirewallNameT &&value)
Definition Firewall.h:67
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue