AWS SDK for C++

AWS SDK for C++ Version 1.11.783

Loading...
Searching...
No Matches
DescribeInstanceAttributeResponse.h
1
6#pragma once
7#include <aws/core/http/HttpResponse.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/AttributeBooleanValue.h>
12#include <aws/ec2/model/AttributeValue.h>
13#include <aws/ec2/model/EnclaveOptions.h>
14#include <aws/ec2/model/GroupIdentifier.h>
15#include <aws/ec2/model/InstanceBlockDeviceMapping.h>
16#include <aws/ec2/model/ProductCode.h>
17#include <aws/ec2/model/ResponseMetadata.h>
18
19#include <utility>
20
21namespace Aws {
22template <typename RESULT_TYPE>
23class AmazonWebServiceResult;
24
25namespace Utils {
26namespace Xml {
27class XmlDocument;
28} // namespace Xml
29} // namespace Utils
30namespace EC2 {
31namespace Model {
38 public:
39 AWS_EC2_API DescribeInstanceAttributeResponse() = default;
42
44
47 inline const Aws::Vector<InstanceBlockDeviceMapping>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
48 template <typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
49 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) {
50 m_blockDeviceMappingsHasBeenSet = true;
51 m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value);
52 }
53 template <typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
55 SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value));
56 return *this;
57 }
58 template <typename BlockDeviceMappingsT = InstanceBlockDeviceMapping>
60 m_blockDeviceMappingsHasBeenSet = true;
61 m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
62 return *this;
63 }
65
67
72 inline const AttributeBooleanValue& GetDisableApiTermination() const { return m_disableApiTermination; }
73 template <typename DisableApiTerminationT = AttributeBooleanValue>
74 void SetDisableApiTermination(DisableApiTerminationT&& value) {
75 m_disableApiTerminationHasBeenSet = true;
76 m_disableApiTermination = std::forward<DisableApiTerminationT>(value);
77 }
78 template <typename DisableApiTerminationT = AttributeBooleanValue>
80 SetDisableApiTermination(std::forward<DisableApiTerminationT>(value));
81 return *this;
82 }
84
86
89 inline const AttributeBooleanValue& GetEnaSupport() const { return m_enaSupport; }
90 template <typename EnaSupportT = AttributeBooleanValue>
91 void SetEnaSupport(EnaSupportT&& value) {
92 m_enaSupportHasBeenSet = true;
93 m_enaSupport = std::forward<EnaSupportT>(value);
94 }
95 template <typename EnaSupportT = AttributeBooleanValue>
97 SetEnaSupport(std::forward<EnaSupportT>(value));
98 return *this;
99 }
101
103
107 inline const EnclaveOptions& GetEnclaveOptions() const { return m_enclaveOptions; }
108 template <typename EnclaveOptionsT = EnclaveOptions>
109 void SetEnclaveOptions(EnclaveOptionsT&& value) {
110 m_enclaveOptionsHasBeenSet = true;
111 m_enclaveOptions = std::forward<EnclaveOptionsT>(value);
112 }
113 template <typename EnclaveOptionsT = EnclaveOptions>
115 SetEnclaveOptions(std::forward<EnclaveOptionsT>(value));
116 return *this;
117 }
119
121
124 inline const AttributeBooleanValue& GetEbsOptimized() const { return m_ebsOptimized; }
125 template <typename EbsOptimizedT = AttributeBooleanValue>
126 void SetEbsOptimized(EbsOptimizedT&& value) {
127 m_ebsOptimizedHasBeenSet = true;
128 m_ebsOptimized = std::forward<EbsOptimizedT>(value);
129 }
130 template <typename EbsOptimizedT = AttributeBooleanValue>
132 SetEbsOptimized(std::forward<EbsOptimizedT>(value));
133 return *this;
134 }
136
138
141 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
142 template <typename InstanceIdT = Aws::String>
143 void SetInstanceId(InstanceIdT&& value) {
144 m_instanceIdHasBeenSet = true;
145 m_instanceId = std::forward<InstanceIdT>(value);
146 }
147 template <typename InstanceIdT = Aws::String>
149 SetInstanceId(std::forward<InstanceIdT>(value));
150 return *this;
151 }
153
155
159 inline const AttributeValue& GetInstanceInitiatedShutdownBehavior() const { return m_instanceInitiatedShutdownBehavior; }
160 template <typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
161 void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) {
162 m_instanceInitiatedShutdownBehaviorHasBeenSet = true;
163 m_instanceInitiatedShutdownBehavior = std::forward<InstanceInitiatedShutdownBehaviorT>(value);
164 }
165 template <typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
167 SetInstanceInitiatedShutdownBehavior(std::forward<InstanceInitiatedShutdownBehaviorT>(value));
168 return *this;
169 }
171
173
176 inline const AttributeValue& GetInstanceType() const { return m_instanceType; }
177 template <typename InstanceTypeT = AttributeValue>
178 void SetInstanceType(InstanceTypeT&& value) {
179 m_instanceTypeHasBeenSet = true;
180 m_instanceType = std::forward<InstanceTypeT>(value);
181 }
182 template <typename InstanceTypeT = AttributeValue>
184 SetInstanceType(std::forward<InstanceTypeT>(value));
185 return *this;
186 }
188
190
193 inline const AttributeValue& GetKernelId() const { return m_kernelId; }
194 template <typename KernelIdT = AttributeValue>
195 void SetKernelId(KernelIdT&& value) {
196 m_kernelIdHasBeenSet = true;
197 m_kernelId = std::forward<KernelIdT>(value);
198 }
199 template <typename KernelIdT = AttributeValue>
201 SetKernelId(std::forward<KernelIdT>(value));
202 return *this;
203 }
205
207
210 inline const Aws::Vector<ProductCode>& GetProductCodes() const { return m_productCodes; }
211 template <typename ProductCodesT = Aws::Vector<ProductCode>>
212 void SetProductCodes(ProductCodesT&& value) {
213 m_productCodesHasBeenSet = true;
214 m_productCodes = std::forward<ProductCodesT>(value);
215 }
216 template <typename ProductCodesT = Aws::Vector<ProductCode>>
218 SetProductCodes(std::forward<ProductCodesT>(value));
219 return *this;
220 }
221 template <typename ProductCodesT = ProductCode>
223 m_productCodesHasBeenSet = true;
224 m_productCodes.emplace_back(std::forward<ProductCodesT>(value));
225 return *this;
226 }
228
230
233 inline const AttributeValue& GetRamdiskId() const { return m_ramdiskId; }
234 template <typename RamdiskIdT = AttributeValue>
235 void SetRamdiskId(RamdiskIdT&& value) {
236 m_ramdiskIdHasBeenSet = true;
237 m_ramdiskId = std::forward<RamdiskIdT>(value);
238 }
239 template <typename RamdiskIdT = AttributeValue>
241 SetRamdiskId(std::forward<RamdiskIdT>(value));
242 return *this;
243 }
245
247
251 inline const AttributeValue& GetRootDeviceName() const { return m_rootDeviceName; }
252 template <typename RootDeviceNameT = AttributeValue>
253 void SetRootDeviceName(RootDeviceNameT&& value) {
254 m_rootDeviceNameHasBeenSet = true;
255 m_rootDeviceName = std::forward<RootDeviceNameT>(value);
256 }
257 template <typename RootDeviceNameT = AttributeValue>
259 SetRootDeviceName(std::forward<RootDeviceNameT>(value));
260 return *this;
261 }
263
265
268 inline const AttributeBooleanValue& GetSourceDestCheck() const { return m_sourceDestCheck; }
269 template <typename SourceDestCheckT = AttributeBooleanValue>
270 void SetSourceDestCheck(SourceDestCheckT&& value) {
271 m_sourceDestCheckHasBeenSet = true;
272 m_sourceDestCheck = std::forward<SourceDestCheckT>(value);
273 }
274 template <typename SourceDestCheckT = AttributeBooleanValue>
276 SetSourceDestCheck(std::forward<SourceDestCheckT>(value));
277 return *this;
278 }
280
282
286 inline const AttributeValue& GetSriovNetSupport() const { return m_sriovNetSupport; }
287 template <typename SriovNetSupportT = AttributeValue>
288 void SetSriovNetSupport(SriovNetSupportT&& value) {
289 m_sriovNetSupportHasBeenSet = true;
290 m_sriovNetSupport = std::forward<SriovNetSupportT>(value);
291 }
292 template <typename SriovNetSupportT = AttributeValue>
294 SetSriovNetSupport(std::forward<SriovNetSupportT>(value));
295 return *this;
296 }
298
300
303 inline const AttributeValue& GetUserData() const { return m_userData; }
304 template <typename UserDataT = AttributeValue>
305 void SetUserData(UserDataT&& value) {
306 m_userDataHasBeenSet = true;
307 m_userData = std::forward<UserDataT>(value);
308 }
309 template <typename UserDataT = AttributeValue>
311 SetUserData(std::forward<UserDataT>(value));
312 return *this;
313 }
315
317
320 inline const AttributeBooleanValue& GetDisableApiStop() const { return m_disableApiStop; }
321 template <typename DisableApiStopT = AttributeBooleanValue>
322 void SetDisableApiStop(DisableApiStopT&& value) {
323 m_disableApiStopHasBeenSet = true;
324 m_disableApiStop = std::forward<DisableApiStopT>(value);
325 }
326 template <typename DisableApiStopT = AttributeBooleanValue>
328 SetDisableApiStop(std::forward<DisableApiStopT>(value));
329 return *this;
330 }
332
334
337 inline const Aws::Vector<GroupIdentifier>& GetGroups() const { return m_groups; }
338 template <typename GroupsT = Aws::Vector<GroupIdentifier>>
339 void SetGroups(GroupsT&& value) {
340 m_groupsHasBeenSet = true;
341 m_groups = std::forward<GroupsT>(value);
342 }
343 template <typename GroupsT = Aws::Vector<GroupIdentifier>>
345 SetGroups(std::forward<GroupsT>(value));
346 return *this;
347 }
348 template <typename GroupsT = GroupIdentifier>
350 m_groupsHasBeenSet = true;
351 m_groups.emplace_back(std::forward<GroupsT>(value));
352 return *this;
353 }
355
357
358 inline const ResponseMetadata& GetResponseMetadata() const { return m_responseMetadata; }
359 template <typename ResponseMetadataT = ResponseMetadata>
360 void SetResponseMetadata(ResponseMetadataT&& value) {
361 m_responseMetadataHasBeenSet = true;
362 m_responseMetadata = std::forward<ResponseMetadataT>(value);
363 }
364 template <typename ResponseMetadataT = ResponseMetadata>
366 SetResponseMetadata(std::forward<ResponseMetadataT>(value));
367 return *this;
368 }
370 inline Aws::Http::HttpResponseCode GetHttpResponseCode() const { return m_HttpResponseCode; }
371
372 private:
373 Aws::Vector<InstanceBlockDeviceMapping> m_blockDeviceMappings;
374
375 AttributeBooleanValue m_disableApiTermination;
376
377 AttributeBooleanValue m_enaSupport;
378
379 EnclaveOptions m_enclaveOptions;
380
381 AttributeBooleanValue m_ebsOptimized;
382
383 Aws::String m_instanceId;
384
385 AttributeValue m_instanceInitiatedShutdownBehavior;
386
387 AttributeValue m_instanceType;
388
389 AttributeValue m_kernelId;
390
391 Aws::Vector<ProductCode> m_productCodes;
392
393 AttributeValue m_ramdiskId;
394
395 AttributeValue m_rootDeviceName;
396
397 AttributeBooleanValue m_sourceDestCheck;
398
399 AttributeValue m_sriovNetSupport;
400
401 AttributeValue m_userData;
402
403 AttributeBooleanValue m_disableApiStop;
404
406
407 ResponseMetadata m_responseMetadata;
408 Aws::Http::HttpResponseCode m_HttpResponseCode;
409 bool m_blockDeviceMappingsHasBeenSet = false;
410 bool m_disableApiTerminationHasBeenSet = false;
411 bool m_enaSupportHasBeenSet = false;
412 bool m_enclaveOptionsHasBeenSet = false;
413 bool m_ebsOptimizedHasBeenSet = false;
414 bool m_instanceIdHasBeenSet = false;
415 bool m_instanceInitiatedShutdownBehaviorHasBeenSet = false;
416 bool m_instanceTypeHasBeenSet = false;
417 bool m_kernelIdHasBeenSet = false;
418 bool m_productCodesHasBeenSet = false;
419 bool m_ramdiskIdHasBeenSet = false;
420 bool m_rootDeviceNameHasBeenSet = false;
421 bool m_sourceDestCheckHasBeenSet = false;
422 bool m_sriovNetSupportHasBeenSet = false;
423 bool m_userDataHasBeenSet = false;
424 bool m_disableApiStopHasBeenSet = false;
425 bool m_groupsHasBeenSet = false;
426 bool m_responseMetadataHasBeenSet = false;
427};
428
429} // namespace Model
430} // namespace EC2
431} // 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