AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
ModifyInstanceAttributeRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/ec2/model/AttributeBooleanValue.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/ec2/model/InstanceAttributeName.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/ec2/model/AttributeValue.h>
14#include <aws/ec2/model/BlobAttributeValue.h>
15#include <aws/ec2/model/InstanceBlockDeviceMappingSpecification.h>
16#include <utility>
17
18namespace Aws
19{
20namespace EC2
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_EC2_API ModifyInstanceAttributeRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "ModifyInstanceAttribute"; }
37
38 AWS_EC2_API Aws::String SerializePayload() const override;
39
40 protected:
41 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42
43 public:
44
46
54 inline const AttributeBooleanValue& GetSourceDestCheck() const { return m_sourceDestCheck; }
55 inline bool SourceDestCheckHasBeenSet() const { return m_sourceDestCheckHasBeenSet; }
56 template<typename SourceDestCheckT = AttributeBooleanValue>
57 void SetSourceDestCheck(SourceDestCheckT&& value) { m_sourceDestCheckHasBeenSet = true; m_sourceDestCheck = std::forward<SourceDestCheckT>(value); }
58 template<typename SourceDestCheckT = AttributeBooleanValue>
59 ModifyInstanceAttributeRequest& WithSourceDestCheck(SourceDestCheckT&& value) { SetSourceDestCheck(std::forward<SourceDestCheckT>(value)); return *this;}
61
63
69 inline const AttributeBooleanValue& GetDisableApiStop() const { return m_disableApiStop; }
70 inline bool DisableApiStopHasBeenSet() const { return m_disableApiStopHasBeenSet; }
71 template<typename DisableApiStopT = AttributeBooleanValue>
72 void SetDisableApiStop(DisableApiStopT&& value) { m_disableApiStopHasBeenSet = true; m_disableApiStop = std::forward<DisableApiStopT>(value); }
73 template<typename DisableApiStopT = AttributeBooleanValue>
74 ModifyInstanceAttributeRequest& WithDisableApiStop(DisableApiStopT&& value) { SetDisableApiStop(std::forward<DisableApiStopT>(value)); return *this;}
76
78
84 inline bool GetDryRun() const { return m_dryRun; }
85 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
86 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
87 inline ModifyInstanceAttributeRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
89
91
94 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
95 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
96 template<typename InstanceIdT = Aws::String>
97 void SetInstanceId(InstanceIdT&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::forward<InstanceIdT>(value); }
98 template<typename InstanceIdT = Aws::String>
99 ModifyInstanceAttributeRequest& WithInstanceId(InstanceIdT&& value) { SetInstanceId(std::forward<InstanceIdT>(value)); return *this;}
101
103
118 inline InstanceAttributeName GetAttribute() const { return m_attribute; }
119 inline bool AttributeHasBeenSet() const { return m_attributeHasBeenSet; }
120 inline void SetAttribute(InstanceAttributeName value) { m_attributeHasBeenSet = true; m_attribute = value; }
123
125
130 inline const Aws::String& GetValue() const { return m_value; }
131 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
132 template<typename ValueT = Aws::String>
133 void SetValue(ValueT&& value) { m_valueHasBeenSet = true; m_value = std::forward<ValueT>(value); }
134 template<typename ValueT = Aws::String>
135 ModifyInstanceAttributeRequest& WithValue(ValueT&& value) { SetValue(std::forward<ValueT>(value)); return *this;}
137
139
152 inline const Aws::Vector<InstanceBlockDeviceMappingSpecification>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
153 inline bool BlockDeviceMappingsHasBeenSet() const { return m_blockDeviceMappingsHasBeenSet; }
154 template<typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMappingSpecification>>
155 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
156 template<typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMappingSpecification>>
157 ModifyInstanceAttributeRequest& WithBlockDeviceMappings(BlockDeviceMappingsT&& value) { SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value)); return *this;}
158 template<typename BlockDeviceMappingsT = InstanceBlockDeviceMappingSpecification>
159 ModifyInstanceAttributeRequest& AddBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value)); return *this; }
161
163
169 inline const AttributeBooleanValue& GetDisableApiTermination() const { return m_disableApiTermination; }
170 inline bool DisableApiTerminationHasBeenSet() const { return m_disableApiTerminationHasBeenSet; }
171 template<typename DisableApiTerminationT = AttributeBooleanValue>
172 void SetDisableApiTermination(DisableApiTerminationT&& value) { m_disableApiTerminationHasBeenSet = true; m_disableApiTermination = std::forward<DisableApiTerminationT>(value); }
173 template<typename DisableApiTerminationT = AttributeBooleanValue>
174 ModifyInstanceAttributeRequest& WithDisableApiTermination(DisableApiTerminationT&& value) { SetDisableApiTermination(std::forward<DisableApiTerminationT>(value)); return *this;}
176
178
185 inline const AttributeValue& GetInstanceType() const { return m_instanceType; }
186 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
187 template<typename InstanceTypeT = AttributeValue>
188 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
189 template<typename InstanceTypeT = AttributeValue>
190 ModifyInstanceAttributeRequest& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
192
194
199 inline const AttributeValue& GetKernel() const { return m_kernel; }
200 inline bool KernelHasBeenSet() const { return m_kernelHasBeenSet; }
201 template<typename KernelT = AttributeValue>
202 void SetKernel(KernelT&& value) { m_kernelHasBeenSet = true; m_kernel = std::forward<KernelT>(value); }
203 template<typename KernelT = AttributeValue>
204 ModifyInstanceAttributeRequest& WithKernel(KernelT&& value) { SetKernel(std::forward<KernelT>(value)); return *this;}
206
208
213 inline const AttributeValue& GetRamdisk() const { return m_ramdisk; }
214 inline bool RamdiskHasBeenSet() const { return m_ramdiskHasBeenSet; }
215 template<typename RamdiskT = AttributeValue>
216 void SetRamdisk(RamdiskT&& value) { m_ramdiskHasBeenSet = true; m_ramdisk = std::forward<RamdiskT>(value); }
217 template<typename RamdiskT = AttributeValue>
218 ModifyInstanceAttributeRequest& WithRamdisk(RamdiskT&& value) { SetRamdisk(std::forward<RamdiskT>(value)); return *this;}
220
222
229 inline const BlobAttributeValue& GetUserData() const { return m_userData; }
230 inline bool UserDataHasBeenSet() const { return m_userDataHasBeenSet; }
231 template<typename UserDataT = BlobAttributeValue>
232 void SetUserData(UserDataT&& value) { m_userDataHasBeenSet = true; m_userData = std::forward<UserDataT>(value); }
233 template<typename UserDataT = BlobAttributeValue>
234 ModifyInstanceAttributeRequest& WithUserData(UserDataT&& value) { SetUserData(std::forward<UserDataT>(value)); return *this;}
236
238
242 inline const AttributeValue& GetInstanceInitiatedShutdownBehavior() const { return m_instanceInitiatedShutdownBehavior; }
243 inline bool InstanceInitiatedShutdownBehaviorHasBeenSet() const { return m_instanceInitiatedShutdownBehaviorHasBeenSet; }
244 template<typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
245 void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) { m_instanceInitiatedShutdownBehaviorHasBeenSet = true; m_instanceInitiatedShutdownBehavior = std::forward<InstanceInitiatedShutdownBehaviorT>(value); }
246 template<typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
247 ModifyInstanceAttributeRequest& WithInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) { SetInstanceInitiatedShutdownBehavior(std::forward<InstanceInitiatedShutdownBehaviorT>(value)); return *this;}
249
251
256 inline const Aws::Vector<Aws::String>& GetGroups() const { return m_groups; }
257 inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
258 template<typename GroupsT = Aws::Vector<Aws::String>>
259 void SetGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups = std::forward<GroupsT>(value); }
260 template<typename GroupsT = Aws::Vector<Aws::String>>
261 ModifyInstanceAttributeRequest& WithGroups(GroupsT&& value) { SetGroups(std::forward<GroupsT>(value)); return *this;}
262 template<typename GroupsT = Aws::String>
263 ModifyInstanceAttributeRequest& AddGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups.emplace_back(std::forward<GroupsT>(value)); return *this; }
265
267
274 inline const AttributeBooleanValue& GetEbsOptimized() const { return m_ebsOptimized; }
275 inline bool EbsOptimizedHasBeenSet() const { return m_ebsOptimizedHasBeenSet; }
276 template<typename EbsOptimizedT = AttributeBooleanValue>
277 void SetEbsOptimized(EbsOptimizedT&& value) { m_ebsOptimizedHasBeenSet = true; m_ebsOptimized = std::forward<EbsOptimizedT>(value); }
278 template<typename EbsOptimizedT = AttributeBooleanValue>
279 ModifyInstanceAttributeRequest& WithEbsOptimized(EbsOptimizedT&& value) { SetEbsOptimized(std::forward<EbsOptimizedT>(value)); return *this;}
281
283
290 inline const AttributeValue& GetSriovNetSupport() const { return m_sriovNetSupport; }
291 inline bool SriovNetSupportHasBeenSet() const { return m_sriovNetSupportHasBeenSet; }
292 template<typename SriovNetSupportT = AttributeValue>
293 void SetSriovNetSupport(SriovNetSupportT&& value) { m_sriovNetSupportHasBeenSet = true; m_sriovNetSupport = std::forward<SriovNetSupportT>(value); }
294 template<typename SriovNetSupportT = AttributeValue>
295 ModifyInstanceAttributeRequest& WithSriovNetSupport(SriovNetSupportT&& value) { SetSriovNetSupport(std::forward<SriovNetSupportT>(value)); return *this;}
297
299
304 inline const AttributeBooleanValue& GetEnaSupport() const { return m_enaSupport; }
305 inline bool EnaSupportHasBeenSet() const { return m_enaSupportHasBeenSet; }
306 template<typename EnaSupportT = AttributeBooleanValue>
307 void SetEnaSupport(EnaSupportT&& value) { m_enaSupportHasBeenSet = true; m_enaSupport = std::forward<EnaSupportT>(value); }
308 template<typename EnaSupportT = AttributeBooleanValue>
309 ModifyInstanceAttributeRequest& WithEnaSupport(EnaSupportT&& value) { SetEnaSupport(std::forward<EnaSupportT>(value)); return *this;}
311 private:
312
313 AttributeBooleanValue m_sourceDestCheck;
314 bool m_sourceDestCheckHasBeenSet = false;
315
316 AttributeBooleanValue m_disableApiStop;
317 bool m_disableApiStopHasBeenSet = false;
318
319 bool m_dryRun{false};
320 bool m_dryRunHasBeenSet = false;
321
322 Aws::String m_instanceId;
323 bool m_instanceIdHasBeenSet = false;
324
326 bool m_attributeHasBeenSet = false;
327
328 Aws::String m_value;
329 bool m_valueHasBeenSet = false;
330
332 bool m_blockDeviceMappingsHasBeenSet = false;
333
334 AttributeBooleanValue m_disableApiTermination;
335 bool m_disableApiTerminationHasBeenSet = false;
336
337 AttributeValue m_instanceType;
338 bool m_instanceTypeHasBeenSet = false;
339
340 AttributeValue m_kernel;
341 bool m_kernelHasBeenSet = false;
342
343 AttributeValue m_ramdisk;
344 bool m_ramdiskHasBeenSet = false;
345
346 BlobAttributeValue m_userData;
347 bool m_userDataHasBeenSet = false;
348
349 AttributeValue m_instanceInitiatedShutdownBehavior;
350 bool m_instanceInitiatedShutdownBehaviorHasBeenSet = false;
351
353 bool m_groupsHasBeenSet = false;
354
355 AttributeBooleanValue m_ebsOptimized;
356 bool m_ebsOptimizedHasBeenSet = false;
357
358 AttributeValue m_sriovNetSupport;
359 bool m_sriovNetSupportHasBeenSet = false;
360
361 AttributeBooleanValue m_enaSupport;
362 bool m_enaSupportHasBeenSet = false;
363 };
364
365} // namespace Model
366} // namespace EC2
367} // namespace Aws
const Aws::Vector< Aws::String > & GetGroups() const
ModifyInstanceAttributeRequest & WithInstanceId(InstanceIdT &&value)
ModifyInstanceAttributeRequest & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
ModifyInstanceAttributeRequest & WithDisableApiTermination(DisableApiTerminationT &&value)
ModifyInstanceAttributeRequest & WithInstanceType(InstanceTypeT &&value)
ModifyInstanceAttributeRequest & WithSriovNetSupport(SriovNetSupportT &&value)
ModifyInstanceAttributeRequest & WithKernel(KernelT &&value)
ModifyInstanceAttributeRequest & WithDisableApiStop(DisableApiStopT &&value)
ModifyInstanceAttributeRequest & WithInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
virtual const char * GetServiceRequestName() const override
void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
ModifyInstanceAttributeRequest & WithUserData(UserDataT &&value)
ModifyInstanceAttributeRequest & WithRamdisk(RamdiskT &&value)
ModifyInstanceAttributeRequest & WithEnaSupport(EnaSupportT &&value)
ModifyInstanceAttributeRequest & WithSourceDestCheck(SourceDestCheckT &&value)
ModifyInstanceAttributeRequest & WithAttribute(InstanceAttributeName value)
AWS_EC2_API Aws::String SerializePayload() const override
ModifyInstanceAttributeRequest & WithValue(ValueT &&value)
ModifyInstanceAttributeRequest & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
ModifyInstanceAttributeRequest & WithDryRun(bool value)
const Aws::Vector< InstanceBlockDeviceMappingSpecification > & GetBlockDeviceMappings() const
ModifyInstanceAttributeRequest & WithEbsOptimized(EbsOptimizedT &&value)
ModifyInstanceAttributeRequest & AddGroups(GroupsT &&value)
ModifyInstanceAttributeRequest & WithGroups(GroupsT &&value)
const AttributeBooleanValue & GetDisableApiTermination() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector