AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
DescribeInstanceAttributeResponse.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/EC2_EXPORTS.h>
10#include <aws/ec2/model/AttributeBooleanValue.h>
11#include <aws/ec2/model/AttributeValue.h>
12#include <aws/ec2/model/EnclaveOptions.h>
13#include <aws/ec2/model/GroupIdentifier.h>
14#include <aws/ec2/model/InstanceBlockDeviceMapping.h>
15#include <aws/ec2/model/ProductCode.h>
16#include <aws/ec2/model/ResponseMetadata.h>
17
18#include <utility>
19
20namespace Aws {
21template <typename RESULT_TYPE>
22class AmazonWebServiceResult;
23
24namespace Utils {
25namespace Xml {
26class XmlDocument;
27} // namespace Xml
28} // namespace Utils
29namespace EC2 {
30namespace Model {
37 public:
38 AWS_EC2_API DescribeInstanceAttributeResponse() = default;
41
43
46 inline const Aws::Vector<InstanceBlockDeviceMapping>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
47 template <typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
48 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) {
49 m_blockDeviceMappingsHasBeenSet = true;
50 m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value);
51 }
52 template <typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
54 SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value));
55 return *this;
56 }
57 template <typename BlockDeviceMappingsT = InstanceBlockDeviceMapping>
59 m_blockDeviceMappingsHasBeenSet = true;
60 m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
61 return *this;
62 }
64
66
71 inline const AttributeBooleanValue& GetDisableApiTermination() const { return m_disableApiTermination; }
72 template <typename DisableApiTerminationT = AttributeBooleanValue>
73 void SetDisableApiTermination(DisableApiTerminationT&& value) {
74 m_disableApiTerminationHasBeenSet = true;
75 m_disableApiTermination = std::forward<DisableApiTerminationT>(value);
76 }
77 template <typename DisableApiTerminationT = AttributeBooleanValue>
79 SetDisableApiTermination(std::forward<DisableApiTerminationT>(value));
80 return *this;
81 }
83
85
88 inline const AttributeBooleanValue& GetEnaSupport() const { return m_enaSupport; }
89 template <typename EnaSupportT = AttributeBooleanValue>
90 void SetEnaSupport(EnaSupportT&& value) {
91 m_enaSupportHasBeenSet = true;
92 m_enaSupport = std::forward<EnaSupportT>(value);
93 }
94 template <typename EnaSupportT = AttributeBooleanValue>
96 SetEnaSupport(std::forward<EnaSupportT>(value));
97 return *this;
98 }
100
102
106 inline const EnclaveOptions& GetEnclaveOptions() const { return m_enclaveOptions; }
107 template <typename EnclaveOptionsT = EnclaveOptions>
108 void SetEnclaveOptions(EnclaveOptionsT&& value) {
109 m_enclaveOptionsHasBeenSet = true;
110 m_enclaveOptions = std::forward<EnclaveOptionsT>(value);
111 }
112 template <typename EnclaveOptionsT = EnclaveOptions>
114 SetEnclaveOptions(std::forward<EnclaveOptionsT>(value));
115 return *this;
116 }
118
120
123 inline const AttributeBooleanValue& GetEbsOptimized() const { return m_ebsOptimized; }
124 template <typename EbsOptimizedT = AttributeBooleanValue>
125 void SetEbsOptimized(EbsOptimizedT&& value) {
126 m_ebsOptimizedHasBeenSet = true;
127 m_ebsOptimized = std::forward<EbsOptimizedT>(value);
128 }
129 template <typename EbsOptimizedT = AttributeBooleanValue>
131 SetEbsOptimized(std::forward<EbsOptimizedT>(value));
132 return *this;
133 }
135
137
140 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
141 template <typename InstanceIdT = Aws::String>
142 void SetInstanceId(InstanceIdT&& value) {
143 m_instanceIdHasBeenSet = true;
144 m_instanceId = std::forward<InstanceIdT>(value);
145 }
146 template <typename InstanceIdT = Aws::String>
148 SetInstanceId(std::forward<InstanceIdT>(value));
149 return *this;
150 }
152
154
158 inline const AttributeValue& GetInstanceInitiatedShutdownBehavior() const { return m_instanceInitiatedShutdownBehavior; }
159 template <typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
160 void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) {
161 m_instanceInitiatedShutdownBehaviorHasBeenSet = true;
162 m_instanceInitiatedShutdownBehavior = std::forward<InstanceInitiatedShutdownBehaviorT>(value);
163 }
164 template <typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
166 SetInstanceInitiatedShutdownBehavior(std::forward<InstanceInitiatedShutdownBehaviorT>(value));
167 return *this;
168 }
170
172
175 inline const AttributeValue& GetInstanceType() const { return m_instanceType; }
176 template <typename InstanceTypeT = AttributeValue>
177 void SetInstanceType(InstanceTypeT&& value) {
178 m_instanceTypeHasBeenSet = true;
179 m_instanceType = std::forward<InstanceTypeT>(value);
180 }
181 template <typename InstanceTypeT = AttributeValue>
183 SetInstanceType(std::forward<InstanceTypeT>(value));
184 return *this;
185 }
187
189
192 inline const AttributeValue& GetKernelId() const { return m_kernelId; }
193 template <typename KernelIdT = AttributeValue>
194 void SetKernelId(KernelIdT&& value) {
195 m_kernelIdHasBeenSet = true;
196 m_kernelId = std::forward<KernelIdT>(value);
197 }
198 template <typename KernelIdT = AttributeValue>
200 SetKernelId(std::forward<KernelIdT>(value));
201 return *this;
202 }
204
206
209 inline const Aws::Vector<ProductCode>& GetProductCodes() const { return m_productCodes; }
210 template <typename ProductCodesT = Aws::Vector<ProductCode>>
211 void SetProductCodes(ProductCodesT&& value) {
212 m_productCodesHasBeenSet = true;
213 m_productCodes = std::forward<ProductCodesT>(value);
214 }
215 template <typename ProductCodesT = Aws::Vector<ProductCode>>
217 SetProductCodes(std::forward<ProductCodesT>(value));
218 return *this;
219 }
220 template <typename ProductCodesT = ProductCode>
222 m_productCodesHasBeenSet = true;
223 m_productCodes.emplace_back(std::forward<ProductCodesT>(value));
224 return *this;
225 }
227
229
232 inline const AttributeValue& GetRamdiskId() const { return m_ramdiskId; }
233 template <typename RamdiskIdT = AttributeValue>
234 void SetRamdiskId(RamdiskIdT&& value) {
235 m_ramdiskIdHasBeenSet = true;
236 m_ramdiskId = std::forward<RamdiskIdT>(value);
237 }
238 template <typename RamdiskIdT = AttributeValue>
240 SetRamdiskId(std::forward<RamdiskIdT>(value));
241 return *this;
242 }
244
246
250 inline const AttributeValue& GetRootDeviceName() const { return m_rootDeviceName; }
251 template <typename RootDeviceNameT = AttributeValue>
252 void SetRootDeviceName(RootDeviceNameT&& value) {
253 m_rootDeviceNameHasBeenSet = true;
254 m_rootDeviceName = std::forward<RootDeviceNameT>(value);
255 }
256 template <typename RootDeviceNameT = AttributeValue>
258 SetRootDeviceName(std::forward<RootDeviceNameT>(value));
259 return *this;
260 }
262
264
267 inline const AttributeBooleanValue& GetSourceDestCheck() const { return m_sourceDestCheck; }
268 template <typename SourceDestCheckT = AttributeBooleanValue>
269 void SetSourceDestCheck(SourceDestCheckT&& value) {
270 m_sourceDestCheckHasBeenSet = true;
271 m_sourceDestCheck = std::forward<SourceDestCheckT>(value);
272 }
273 template <typename SourceDestCheckT = AttributeBooleanValue>
275 SetSourceDestCheck(std::forward<SourceDestCheckT>(value));
276 return *this;
277 }
279
281
285 inline const AttributeValue& GetSriovNetSupport() const { return m_sriovNetSupport; }
286 template <typename SriovNetSupportT = AttributeValue>
287 void SetSriovNetSupport(SriovNetSupportT&& value) {
288 m_sriovNetSupportHasBeenSet = true;
289 m_sriovNetSupport = std::forward<SriovNetSupportT>(value);
290 }
291 template <typename SriovNetSupportT = AttributeValue>
293 SetSriovNetSupport(std::forward<SriovNetSupportT>(value));
294 return *this;
295 }
297
299
302 inline const AttributeValue& GetUserData() const { return m_userData; }
303 template <typename UserDataT = AttributeValue>
304 void SetUserData(UserDataT&& value) {
305 m_userDataHasBeenSet = true;
306 m_userData = std::forward<UserDataT>(value);
307 }
308 template <typename UserDataT = AttributeValue>
310 SetUserData(std::forward<UserDataT>(value));
311 return *this;
312 }
314
316
319 inline const AttributeBooleanValue& GetDisableApiStop() const { return m_disableApiStop; }
320 template <typename DisableApiStopT = AttributeBooleanValue>
321 void SetDisableApiStop(DisableApiStopT&& value) {
322 m_disableApiStopHasBeenSet = true;
323 m_disableApiStop = std::forward<DisableApiStopT>(value);
324 }
325 template <typename DisableApiStopT = AttributeBooleanValue>
327 SetDisableApiStop(std::forward<DisableApiStopT>(value));
328 return *this;
329 }
331
333
336 inline const Aws::Vector<GroupIdentifier>& GetGroups() const { return m_groups; }
337 template <typename GroupsT = Aws::Vector<GroupIdentifier>>
338 void SetGroups(GroupsT&& value) {
339 m_groupsHasBeenSet = true;
340 m_groups = std::forward<GroupsT>(value);
341 }
342 template <typename GroupsT = Aws::Vector<GroupIdentifier>>
344 SetGroups(std::forward<GroupsT>(value));
345 return *this;
346 }
347 template <typename GroupsT = GroupIdentifier>
349 m_groupsHasBeenSet = true;
350 m_groups.emplace_back(std::forward<GroupsT>(value));
351 return *this;
352 }
354
356
357 inline const ResponseMetadata& GetResponseMetadata() const { return m_responseMetadata; }
358 template <typename ResponseMetadataT = ResponseMetadata>
359 void SetResponseMetadata(ResponseMetadataT&& value) {
360 m_responseMetadataHasBeenSet = true;
361 m_responseMetadata = std::forward<ResponseMetadataT>(value);
362 }
363 template <typename ResponseMetadataT = ResponseMetadata>
365 SetResponseMetadata(std::forward<ResponseMetadataT>(value));
366 return *this;
367 }
369 private:
370 Aws::Vector<InstanceBlockDeviceMapping> m_blockDeviceMappings;
371
372 AttributeBooleanValue m_disableApiTermination;
373
374 AttributeBooleanValue m_enaSupport;
375
376 EnclaveOptions m_enclaveOptions;
377
378 AttributeBooleanValue m_ebsOptimized;
379
380 Aws::String m_instanceId;
381
382 AttributeValue m_instanceInitiatedShutdownBehavior;
383
384 AttributeValue m_instanceType;
385
386 AttributeValue m_kernelId;
387
388 Aws::Vector<ProductCode> m_productCodes;
389
390 AttributeValue m_ramdiskId;
391
392 AttributeValue m_rootDeviceName;
393
394 AttributeBooleanValue m_sourceDestCheck;
395
396 AttributeValue m_sriovNetSupport;
397
398 AttributeValue m_userData;
399
400 AttributeBooleanValue m_disableApiStop;
401
403
404 ResponseMetadata m_responseMetadata;
405 bool m_blockDeviceMappingsHasBeenSet = false;
406 bool m_disableApiTerminationHasBeenSet = false;
407 bool m_enaSupportHasBeenSet = false;
408 bool m_enclaveOptionsHasBeenSet = false;
409 bool m_ebsOptimizedHasBeenSet = false;
410 bool m_instanceIdHasBeenSet = false;
411 bool m_instanceInitiatedShutdownBehaviorHasBeenSet = false;
412 bool m_instanceTypeHasBeenSet = false;
413 bool m_kernelIdHasBeenSet = false;
414 bool m_productCodesHasBeenSet = false;
415 bool m_ramdiskIdHasBeenSet = false;
416 bool m_rootDeviceNameHasBeenSet = false;
417 bool m_sourceDestCheckHasBeenSet = false;
418 bool m_sriovNetSupportHasBeenSet = false;
419 bool m_userDataHasBeenSet = false;
420 bool m_disableApiStopHasBeenSet = false;
421 bool m_groupsHasBeenSet = false;
422 bool m_responseMetadataHasBeenSet = false;
423};
424
425} // namespace Model
426} // namespace EC2
427} // namespace Aws
DescribeInstanceAttributeResponse & WithRamdiskId(RamdiskIdT &&value)
DescribeInstanceAttributeResponse & WithDisableApiStop(DisableApiStopT &&value)
DescribeInstanceAttributeResponse & WithDisableApiTermination(DisableApiTerminationT &&value)
DescribeInstanceAttributeResponse & WithInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
DescribeInstanceAttributeResponse & AddProductCodes(ProductCodesT &&value)
DescribeInstanceAttributeResponse & WithEnclaveOptions(EnclaveOptionsT &&value)
DescribeInstanceAttributeResponse & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
DescribeInstanceAttributeResponse & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
DescribeInstanceAttributeResponse & WithProductCodes(ProductCodesT &&value)
const Aws::Vector< GroupIdentifier > & GetGroups() const
const Aws::Vector< InstanceBlockDeviceMapping > & GetBlockDeviceMappings() const
DescribeInstanceAttributeResponse & WithSourceDestCheck(SourceDestCheckT &&value)
AWS_EC2_API DescribeInstanceAttributeResponse(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
DescribeInstanceAttributeResponse & WithInstanceType(InstanceTypeT &&value)
DescribeInstanceAttributeResponse & WithRootDeviceName(RootDeviceNameT &&value)
DescribeInstanceAttributeResponse & WithEbsOptimized(EbsOptimizedT &&value)
DescribeInstanceAttributeResponse & WithSriovNetSupport(SriovNetSupportT &&value)
DescribeInstanceAttributeResponse & AddGroups(GroupsT &&value)
DescribeInstanceAttributeResponse & WithGroups(GroupsT &&value)
DescribeInstanceAttributeResponse & WithEnaSupport(EnaSupportT &&value)
AWS_EC2_API DescribeInstanceAttributeResponse & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
DescribeInstanceAttributeResponse & WithResponseMetadata(ResponseMetadataT &&value)
DescribeInstanceAttributeResponse & WithKernelId(KernelIdT &&value)
DescribeInstanceAttributeResponse & WithInstanceId(InstanceIdT &&value)
DescribeInstanceAttributeResponse & WithUserData(UserDataT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Xml::XmlDocument XmlDocument