AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
DisassociateNatGatewayAddressRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ec2/EC2Request.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11
12#include <utility>
13
14namespace Aws {
15namespace EC2 {
16namespace Model {
17
21 public:
22 AWS_EC2_API DisassociateNatGatewayAddressRequest() = default;
23
24 // Service request name is the Operation name which will send this request out,
25 // each operation should has unique request name, so that we can get operation's name from this request.
26 // Note: this is not true for response, multiple operations may have the same response name,
27 // so we can not get operation's name from response.
28 inline virtual const char* GetServiceRequestName() const override { return "DisassociateNatGatewayAddress"; }
29
30 AWS_EC2_API Aws::String SerializePayload() const override;
31
32 protected:
33 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
34
35 public:
37
40 inline const Aws::String& GetNatGatewayId() const { return m_natGatewayId; }
41 inline bool NatGatewayIdHasBeenSet() const { return m_natGatewayIdHasBeenSet; }
42 template <typename NatGatewayIdT = Aws::String>
43 void SetNatGatewayId(NatGatewayIdT&& value) {
44 m_natGatewayIdHasBeenSet = true;
45 m_natGatewayId = std::forward<NatGatewayIdT>(value);
46 }
47 template <typename NatGatewayIdT = Aws::String>
49 SetNatGatewayId(std::forward<NatGatewayIdT>(value));
50 return *this;
51 }
53
55
59 inline const Aws::Vector<Aws::String>& GetAssociationIds() const { return m_associationIds; }
60 inline bool AssociationIdsHasBeenSet() const { return m_associationIdsHasBeenSet; }
61 template <typename AssociationIdsT = Aws::Vector<Aws::String>>
62 void SetAssociationIds(AssociationIdsT&& value) {
63 m_associationIdsHasBeenSet = true;
64 m_associationIds = std::forward<AssociationIdsT>(value);
65 }
66 template <typename AssociationIdsT = Aws::Vector<Aws::String>>
68 SetAssociationIds(std::forward<AssociationIdsT>(value));
69 return *this;
70 }
71 template <typename AssociationIdsT = Aws::String>
73 m_associationIdsHasBeenSet = true;
74 m_associationIds.emplace_back(std::forward<AssociationIdsT>(value));
75 return *this;
76 }
78
80
85 inline int GetMaxDrainDurationSeconds() const { return m_maxDrainDurationSeconds; }
86 inline bool MaxDrainDurationSecondsHasBeenSet() const { return m_maxDrainDurationSecondsHasBeenSet; }
87 inline void SetMaxDrainDurationSeconds(int value) {
88 m_maxDrainDurationSecondsHasBeenSet = true;
89 m_maxDrainDurationSeconds = value;
90 }
93 return *this;
94 }
96
98
104 inline bool GetDryRun() const { return m_dryRun; }
105 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
106 inline void SetDryRun(bool value) {
107 m_dryRunHasBeenSet = true;
108 m_dryRun = value;
109 }
111 SetDryRun(value);
112 return *this;
113 }
115 private:
116 Aws::String m_natGatewayId;
117
118 Aws::Vector<Aws::String> m_associationIds;
119
120 int m_maxDrainDurationSeconds{0};
121
122 bool m_dryRun{false};
123 bool m_natGatewayIdHasBeenSet = false;
124 bool m_associationIdsHasBeenSet = false;
125 bool m_maxDrainDurationSecondsHasBeenSet = false;
126 bool m_dryRunHasBeenSet = false;
127};
128
129} // namespace Model
130} // namespace EC2
131} // namespace Aws
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
DisassociateNatGatewayAddressRequest & WithDryRun(bool value)
DisassociateNatGatewayAddressRequest & WithAssociationIds(AssociationIdsT &&value)
DisassociateNatGatewayAddressRequest & WithMaxDrainDurationSeconds(int value)
DisassociateNatGatewayAddressRequest & WithNatGatewayId(NatGatewayIdT &&value)
DisassociateNatGatewayAddressRequest & AddAssociationIds(AssociationIdsT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector