AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
ModifyNetworkInterfaceAttributeRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/ec2/model/EnaSrdSpecification.h>
10#include <aws/ec2/model/ConnectionTrackingSpecificationRequest.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/ec2/model/AttributeValue.h>
14#include <aws/ec2/model/AttributeBooleanValue.h>
15#include <aws/ec2/model/NetworkInterfaceAttachmentChanges.h>
16#include <utility>
17
18namespace Aws
19{
20namespace EC2
21{
22namespace Model
23{
24
32 {
33 public:
35
36 // Service request name is the Operation name which will send this request out,
37 // each operation should has unique request name, so that we can get operation's name from this request.
38 // Note: this is not true for response, multiple operations may have the same response name,
39 // so we can not get operation's name from response.
40 inline virtual const char* GetServiceRequestName() const override { return "ModifyNetworkInterfaceAttribute"; }
41
42 AWS_EC2_API Aws::String SerializePayload() const override;
43
44 protected:
45 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
46
47 public:
48
50
54 inline const EnaSrdSpecification& GetEnaSrdSpecification() const { return m_enaSrdSpecification; }
55 inline bool EnaSrdSpecificationHasBeenSet() const { return m_enaSrdSpecificationHasBeenSet; }
56 template<typename EnaSrdSpecificationT = EnaSrdSpecification>
57 void SetEnaSrdSpecification(EnaSrdSpecificationT&& value) { m_enaSrdSpecificationHasBeenSet = true; m_enaSrdSpecification = std::forward<EnaSrdSpecificationT>(value); }
58 template<typename EnaSrdSpecificationT = EnaSrdSpecification>
59 ModifyNetworkInterfaceAttributeRequest& WithEnaSrdSpecification(EnaSrdSpecificationT&& value) { SetEnaSrdSpecification(std::forward<EnaSrdSpecificationT>(value)); return *this;}
61
63
78 inline bool GetEnablePrimaryIpv6() const { return m_enablePrimaryIpv6; }
79 inline bool EnablePrimaryIpv6HasBeenSet() const { return m_enablePrimaryIpv6HasBeenSet; }
80 inline void SetEnablePrimaryIpv6(bool value) { m_enablePrimaryIpv6HasBeenSet = true; m_enablePrimaryIpv6 = value; }
83
85
88 inline const ConnectionTrackingSpecificationRequest& GetConnectionTrackingSpecification() const { return m_connectionTrackingSpecification; }
89 inline bool ConnectionTrackingSpecificationHasBeenSet() const { return m_connectionTrackingSpecificationHasBeenSet; }
90 template<typename ConnectionTrackingSpecificationT = ConnectionTrackingSpecificationRequest>
91 void SetConnectionTrackingSpecification(ConnectionTrackingSpecificationT&& value) { m_connectionTrackingSpecificationHasBeenSet = true; m_connectionTrackingSpecification = std::forward<ConnectionTrackingSpecificationT>(value); }
92 template<typename ConnectionTrackingSpecificationT = ConnectionTrackingSpecificationRequest>
93 ModifyNetworkInterfaceAttributeRequest& WithConnectionTrackingSpecification(ConnectionTrackingSpecificationT&& value) { SetConnectionTrackingSpecification(std::forward<ConnectionTrackingSpecificationT>(value)); return *this;}
95
97
102 inline bool GetAssociatePublicIpAddress() const { return m_associatePublicIpAddress; }
103 inline bool AssociatePublicIpAddressHasBeenSet() const { return m_associatePublicIpAddressHasBeenSet; }
104 inline void SetAssociatePublicIpAddress(bool value) { m_associatePublicIpAddressHasBeenSet = true; m_associatePublicIpAddress = value; }
107
109
112 inline const Aws::Vector<Aws::String>& GetAssociatedSubnetIds() const { return m_associatedSubnetIds; }
113 inline bool AssociatedSubnetIdsHasBeenSet() const { return m_associatedSubnetIdsHasBeenSet; }
114 template<typename AssociatedSubnetIdsT = Aws::Vector<Aws::String>>
115 void SetAssociatedSubnetIds(AssociatedSubnetIdsT&& value) { m_associatedSubnetIdsHasBeenSet = true; m_associatedSubnetIds = std::forward<AssociatedSubnetIdsT>(value); }
116 template<typename AssociatedSubnetIdsT = Aws::Vector<Aws::String>>
117 ModifyNetworkInterfaceAttributeRequest& WithAssociatedSubnetIds(AssociatedSubnetIdsT&& value) { SetAssociatedSubnetIds(std::forward<AssociatedSubnetIdsT>(value)); return *this;}
118 template<typename AssociatedSubnetIdsT = Aws::String>
119 ModifyNetworkInterfaceAttributeRequest& AddAssociatedSubnetIds(AssociatedSubnetIdsT&& value) { m_associatedSubnetIdsHasBeenSet = true; m_associatedSubnetIds.emplace_back(std::forward<AssociatedSubnetIdsT>(value)); return *this; }
121
123
129 inline bool GetDryRun() const { return m_dryRun; }
130 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
131 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
132 inline ModifyNetworkInterfaceAttributeRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
134
136
139 inline const Aws::String& GetNetworkInterfaceId() const { return m_networkInterfaceId; }
140 inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
141 template<typename NetworkInterfaceIdT = Aws::String>
142 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value); }
143 template<typename NetworkInterfaceIdT = Aws::String>
144 ModifyNetworkInterfaceAttributeRequest& WithNetworkInterfaceId(NetworkInterfaceIdT&& value) { SetNetworkInterfaceId(std::forward<NetworkInterfaceIdT>(value)); return *this;}
146
148
151 inline const AttributeValue& GetDescription() const { return m_description; }
152 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
153 template<typename DescriptionT = AttributeValue>
154 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
155 template<typename DescriptionT = AttributeValue>
156 ModifyNetworkInterfaceAttributeRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
158
160
168 inline const AttributeBooleanValue& GetSourceDestCheck() const { return m_sourceDestCheck; }
169 inline bool SourceDestCheckHasBeenSet() const { return m_sourceDestCheckHasBeenSet; }
170 template<typename SourceDestCheckT = AttributeBooleanValue>
171 void SetSourceDestCheck(SourceDestCheckT&& value) { m_sourceDestCheckHasBeenSet = true; m_sourceDestCheck = std::forward<SourceDestCheckT>(value); }
172 template<typename SourceDestCheckT = AttributeBooleanValue>
173 ModifyNetworkInterfaceAttributeRequest& WithSourceDestCheck(SourceDestCheckT&& value) { SetSourceDestCheck(std::forward<SourceDestCheckT>(value)); return *this;}
175
177
183 inline const Aws::Vector<Aws::String>& GetGroups() const { return m_groups; }
184 inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
185 template<typename GroupsT = Aws::Vector<Aws::String>>
186 void SetGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups = std::forward<GroupsT>(value); }
187 template<typename GroupsT = Aws::Vector<Aws::String>>
188 ModifyNetworkInterfaceAttributeRequest& WithGroups(GroupsT&& value) { SetGroups(std::forward<GroupsT>(value)); return *this;}
189 template<typename GroupsT = Aws::String>
190 ModifyNetworkInterfaceAttributeRequest& AddGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups.emplace_back(std::forward<GroupsT>(value)); return *this; }
192
194
199 inline const NetworkInterfaceAttachmentChanges& GetAttachment() const { return m_attachment; }
200 inline bool AttachmentHasBeenSet() const { return m_attachmentHasBeenSet; }
201 template<typename AttachmentT = NetworkInterfaceAttachmentChanges>
202 void SetAttachment(AttachmentT&& value) { m_attachmentHasBeenSet = true; m_attachment = std::forward<AttachmentT>(value); }
203 template<typename AttachmentT = NetworkInterfaceAttachmentChanges>
204 ModifyNetworkInterfaceAttributeRequest& WithAttachment(AttachmentT&& value) { SetAttachment(std::forward<AttachmentT>(value)); return *this;}
206 private:
207
208 EnaSrdSpecification m_enaSrdSpecification;
209 bool m_enaSrdSpecificationHasBeenSet = false;
210
211 bool m_enablePrimaryIpv6{false};
212 bool m_enablePrimaryIpv6HasBeenSet = false;
213
214 ConnectionTrackingSpecificationRequest m_connectionTrackingSpecification;
215 bool m_connectionTrackingSpecificationHasBeenSet = false;
216
217 bool m_associatePublicIpAddress{false};
218 bool m_associatePublicIpAddressHasBeenSet = false;
219
220 Aws::Vector<Aws::String> m_associatedSubnetIds;
221 bool m_associatedSubnetIdsHasBeenSet = false;
222
223 bool m_dryRun{false};
224 bool m_dryRunHasBeenSet = false;
225
226 Aws::String m_networkInterfaceId;
227 bool m_networkInterfaceIdHasBeenSet = false;
228
229 AttributeValue m_description;
230 bool m_descriptionHasBeenSet = false;
231
232 AttributeBooleanValue m_sourceDestCheck;
233 bool m_sourceDestCheckHasBeenSet = false;
234
236 bool m_groupsHasBeenSet = false;
237
238 NetworkInterfaceAttachmentChanges m_attachment;
239 bool m_attachmentHasBeenSet = false;
240 };
241
242} // namespace Model
243} // namespace EC2
244} // namespace Aws
ModifyNetworkInterfaceAttributeRequest & WithDescription(DescriptionT &&value)
ModifyNetworkInterfaceAttributeRequest & WithAssociatedSubnetIds(AssociatedSubnetIdsT &&value)
ModifyNetworkInterfaceAttributeRequest & AddGroups(GroupsT &&value)
ModifyNetworkInterfaceAttributeRequest & WithGroups(GroupsT &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
ModifyNetworkInterfaceAttributeRequest & WithConnectionTrackingSpecification(ConnectionTrackingSpecificationT &&value)
ModifyNetworkInterfaceAttributeRequest & WithDryRun(bool value)
ModifyNetworkInterfaceAttributeRequest & WithEnaSrdSpecification(EnaSrdSpecificationT &&value)
ModifyNetworkInterfaceAttributeRequest & WithAssociatePublicIpAddress(bool value)
ModifyNetworkInterfaceAttributeRequest & WithSourceDestCheck(SourceDestCheckT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
ModifyNetworkInterfaceAttributeRequest & WithEnablePrimaryIpv6(bool value)
ModifyNetworkInterfaceAttributeRequest & WithAttachment(AttachmentT &&value)
ModifyNetworkInterfaceAttributeRequest & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
ModifyNetworkInterfaceAttributeRequest & AddAssociatedSubnetIds(AssociatedSubnetIdsT &&value)
void SetConnectionTrackingSpecification(ConnectionTrackingSpecificationT &&value)
const ConnectionTrackingSpecificationRequest & GetConnectionTrackingSpecification() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector