AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
DescribeInstanceAttributeResponse.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ec2/model/AttributeBooleanValue.h>
10#include <aws/ec2/model/EnclaveOptions.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/AttributeValue.h>
13#include <aws/ec2/model/ResponseMetadata.h>
14#include <aws/ec2/model/InstanceBlockDeviceMapping.h>
15#include <aws/ec2/model/ProductCode.h>
16#include <aws/ec2/model/GroupIdentifier.h>
17#include <utility>
18
19namespace Aws
20{
21template<typename RESULT_TYPE>
22class AmazonWebServiceResult;
23
24namespace Utils
25{
26namespace Xml
27{
28 class XmlDocument;
29} // namespace Xml
30} // namespace Utils
31namespace EC2
32{
33namespace Model
34{
41 {
42 public:
43 AWS_EC2_API DescribeInstanceAttributeResponse() = default;
46
47
49
52 inline const Aws::Vector<InstanceBlockDeviceMapping>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
53 template<typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
54 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
55 template<typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
56 DescribeInstanceAttributeResponse& WithBlockDeviceMappings(BlockDeviceMappingsT&& value) { SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value)); return *this;}
57 template<typename BlockDeviceMappingsT = InstanceBlockDeviceMapping>
58 DescribeInstanceAttributeResponse& AddBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value)); return *this; }
60
62
67 inline const AttributeBooleanValue& GetDisableApiTermination() const { return m_disableApiTermination; }
68 template<typename DisableApiTerminationT = AttributeBooleanValue>
69 void SetDisableApiTermination(DisableApiTerminationT&& value) { m_disableApiTerminationHasBeenSet = true; m_disableApiTermination = std::forward<DisableApiTerminationT>(value); }
70 template<typename DisableApiTerminationT = AttributeBooleanValue>
71 DescribeInstanceAttributeResponse& WithDisableApiTermination(DisableApiTerminationT&& value) { SetDisableApiTermination(std::forward<DisableApiTerminationT>(value)); return *this;}
73
75
78 inline const AttributeBooleanValue& GetEnaSupport() const { return m_enaSupport; }
79 template<typename EnaSupportT = AttributeBooleanValue>
80 void SetEnaSupport(EnaSupportT&& value) { m_enaSupportHasBeenSet = true; m_enaSupport = std::forward<EnaSupportT>(value); }
81 template<typename EnaSupportT = AttributeBooleanValue>
82 DescribeInstanceAttributeResponse& WithEnaSupport(EnaSupportT&& value) { SetEnaSupport(std::forward<EnaSupportT>(value)); return *this;}
84
86
90 inline const EnclaveOptions& GetEnclaveOptions() const { return m_enclaveOptions; }
91 template<typename EnclaveOptionsT = EnclaveOptions>
92 void SetEnclaveOptions(EnclaveOptionsT&& value) { m_enclaveOptionsHasBeenSet = true; m_enclaveOptions = std::forward<EnclaveOptionsT>(value); }
93 template<typename EnclaveOptionsT = EnclaveOptions>
94 DescribeInstanceAttributeResponse& WithEnclaveOptions(EnclaveOptionsT&& value) { SetEnclaveOptions(std::forward<EnclaveOptionsT>(value)); return *this;}
96
98
101 inline const AttributeBooleanValue& GetEbsOptimized() const { return m_ebsOptimized; }
102 template<typename EbsOptimizedT = AttributeBooleanValue>
103 void SetEbsOptimized(EbsOptimizedT&& value) { m_ebsOptimizedHasBeenSet = true; m_ebsOptimized = std::forward<EbsOptimizedT>(value); }
104 template<typename EbsOptimizedT = AttributeBooleanValue>
105 DescribeInstanceAttributeResponse& WithEbsOptimized(EbsOptimizedT&& value) { SetEbsOptimized(std::forward<EbsOptimizedT>(value)); return *this;}
107
109
112 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
113 template<typename InstanceIdT = Aws::String>
114 void SetInstanceId(InstanceIdT&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::forward<InstanceIdT>(value); }
115 template<typename InstanceIdT = Aws::String>
116 DescribeInstanceAttributeResponse& WithInstanceId(InstanceIdT&& value) { SetInstanceId(std::forward<InstanceIdT>(value)); return *this;}
118
120
124 inline const AttributeValue& GetInstanceInitiatedShutdownBehavior() const { return m_instanceInitiatedShutdownBehavior; }
125 template<typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
126 void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) { m_instanceInitiatedShutdownBehaviorHasBeenSet = true; m_instanceInitiatedShutdownBehavior = std::forward<InstanceInitiatedShutdownBehaviorT>(value); }
127 template<typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
128 DescribeInstanceAttributeResponse& WithInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) { SetInstanceInitiatedShutdownBehavior(std::forward<InstanceInitiatedShutdownBehaviorT>(value)); return *this;}
130
132
135 inline const AttributeValue& GetInstanceType() const { return m_instanceType; }
136 template<typename InstanceTypeT = AttributeValue>
137 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
138 template<typename InstanceTypeT = AttributeValue>
139 DescribeInstanceAttributeResponse& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
141
143
146 inline const AttributeValue& GetKernelId() const { return m_kernelId; }
147 template<typename KernelIdT = AttributeValue>
148 void SetKernelId(KernelIdT&& value) { m_kernelIdHasBeenSet = true; m_kernelId = std::forward<KernelIdT>(value); }
149 template<typename KernelIdT = AttributeValue>
150 DescribeInstanceAttributeResponse& WithKernelId(KernelIdT&& value) { SetKernelId(std::forward<KernelIdT>(value)); return *this;}
152
154
157 inline const Aws::Vector<ProductCode>& GetProductCodes() const { return m_productCodes; }
158 template<typename ProductCodesT = Aws::Vector<ProductCode>>
159 void SetProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes = std::forward<ProductCodesT>(value); }
160 template<typename ProductCodesT = Aws::Vector<ProductCode>>
161 DescribeInstanceAttributeResponse& WithProductCodes(ProductCodesT&& value) { SetProductCodes(std::forward<ProductCodesT>(value)); return *this;}
162 template<typename ProductCodesT = ProductCode>
163 DescribeInstanceAttributeResponse& AddProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes.emplace_back(std::forward<ProductCodesT>(value)); return *this; }
165
167
170 inline const AttributeValue& GetRamdiskId() const { return m_ramdiskId; }
171 template<typename RamdiskIdT = AttributeValue>
172 void SetRamdiskId(RamdiskIdT&& value) { m_ramdiskIdHasBeenSet = true; m_ramdiskId = std::forward<RamdiskIdT>(value); }
173 template<typename RamdiskIdT = AttributeValue>
174 DescribeInstanceAttributeResponse& WithRamdiskId(RamdiskIdT&& value) { SetRamdiskId(std::forward<RamdiskIdT>(value)); return *this;}
176
178
182 inline const AttributeValue& GetRootDeviceName() const { return m_rootDeviceName; }
183 template<typename RootDeviceNameT = AttributeValue>
184 void SetRootDeviceName(RootDeviceNameT&& value) { m_rootDeviceNameHasBeenSet = true; m_rootDeviceName = std::forward<RootDeviceNameT>(value); }
185 template<typename RootDeviceNameT = AttributeValue>
186 DescribeInstanceAttributeResponse& WithRootDeviceName(RootDeviceNameT&& value) { SetRootDeviceName(std::forward<RootDeviceNameT>(value)); return *this;}
188
190
193 inline const AttributeBooleanValue& GetSourceDestCheck() const { return m_sourceDestCheck; }
194 template<typename SourceDestCheckT = AttributeBooleanValue>
195 void SetSourceDestCheck(SourceDestCheckT&& value) { m_sourceDestCheckHasBeenSet = true; m_sourceDestCheck = std::forward<SourceDestCheckT>(value); }
196 template<typename SourceDestCheckT = AttributeBooleanValue>
197 DescribeInstanceAttributeResponse& WithSourceDestCheck(SourceDestCheckT&& value) { SetSourceDestCheck(std::forward<SourceDestCheckT>(value)); return *this;}
199
201
205 inline const AttributeValue& GetSriovNetSupport() const { return m_sriovNetSupport; }
206 template<typename SriovNetSupportT = AttributeValue>
207 void SetSriovNetSupport(SriovNetSupportT&& value) { m_sriovNetSupportHasBeenSet = true; m_sriovNetSupport = std::forward<SriovNetSupportT>(value); }
208 template<typename SriovNetSupportT = AttributeValue>
209 DescribeInstanceAttributeResponse& WithSriovNetSupport(SriovNetSupportT&& value) { SetSriovNetSupport(std::forward<SriovNetSupportT>(value)); return *this;}
211
213
216 inline const AttributeValue& GetUserData() const { return m_userData; }
217 template<typename UserDataT = AttributeValue>
218 void SetUserData(UserDataT&& value) { m_userDataHasBeenSet = true; m_userData = std::forward<UserDataT>(value); }
219 template<typename UserDataT = AttributeValue>
220 DescribeInstanceAttributeResponse& WithUserData(UserDataT&& value) { SetUserData(std::forward<UserDataT>(value)); return *this;}
222
224
227 inline const AttributeBooleanValue& GetDisableApiStop() const { return m_disableApiStop; }
228 template<typename DisableApiStopT = AttributeBooleanValue>
229 void SetDisableApiStop(DisableApiStopT&& value) { m_disableApiStopHasBeenSet = true; m_disableApiStop = std::forward<DisableApiStopT>(value); }
230 template<typename DisableApiStopT = AttributeBooleanValue>
231 DescribeInstanceAttributeResponse& WithDisableApiStop(DisableApiStopT&& value) { SetDisableApiStop(std::forward<DisableApiStopT>(value)); return *this;}
233
235
238 inline const Aws::Vector<GroupIdentifier>& GetGroups() const { return m_groups; }
239 template<typename GroupsT = Aws::Vector<GroupIdentifier>>
240 void SetGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups = std::forward<GroupsT>(value); }
241 template<typename GroupsT = Aws::Vector<GroupIdentifier>>
242 DescribeInstanceAttributeResponse& WithGroups(GroupsT&& value) { SetGroups(std::forward<GroupsT>(value)); return *this;}
243 template<typename GroupsT = GroupIdentifier>
244 DescribeInstanceAttributeResponse& AddGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups.emplace_back(std::forward<GroupsT>(value)); return *this; }
246
248
249 inline const ResponseMetadata& GetResponseMetadata() const { return m_responseMetadata; }
250 template<typename ResponseMetadataT = ResponseMetadata>
251 void SetResponseMetadata(ResponseMetadataT&& value) { m_responseMetadataHasBeenSet = true; m_responseMetadata = std::forward<ResponseMetadataT>(value); }
252 template<typename ResponseMetadataT = ResponseMetadata>
253 DescribeInstanceAttributeResponse& WithResponseMetadata(ResponseMetadataT&& value) { SetResponseMetadata(std::forward<ResponseMetadataT>(value)); return *this;}
255 private:
256
257 Aws::Vector<InstanceBlockDeviceMapping> m_blockDeviceMappings;
258 bool m_blockDeviceMappingsHasBeenSet = false;
259
260 AttributeBooleanValue m_disableApiTermination;
261 bool m_disableApiTerminationHasBeenSet = false;
262
263 AttributeBooleanValue m_enaSupport;
264 bool m_enaSupportHasBeenSet = false;
265
266 EnclaveOptions m_enclaveOptions;
267 bool m_enclaveOptionsHasBeenSet = false;
268
269 AttributeBooleanValue m_ebsOptimized;
270 bool m_ebsOptimizedHasBeenSet = false;
271
272 Aws::String m_instanceId;
273 bool m_instanceIdHasBeenSet = false;
274
275 AttributeValue m_instanceInitiatedShutdownBehavior;
276 bool m_instanceInitiatedShutdownBehaviorHasBeenSet = false;
277
278 AttributeValue m_instanceType;
279 bool m_instanceTypeHasBeenSet = false;
280
281 AttributeValue m_kernelId;
282 bool m_kernelIdHasBeenSet = false;
283
284 Aws::Vector<ProductCode> m_productCodes;
285 bool m_productCodesHasBeenSet = false;
286
287 AttributeValue m_ramdiskId;
288 bool m_ramdiskIdHasBeenSet = false;
289
290 AttributeValue m_rootDeviceName;
291 bool m_rootDeviceNameHasBeenSet = false;
292
293 AttributeBooleanValue m_sourceDestCheck;
294 bool m_sourceDestCheckHasBeenSet = false;
295
296 AttributeValue m_sriovNetSupport;
297 bool m_sriovNetSupportHasBeenSet = false;
298
299 AttributeValue m_userData;
300 bool m_userDataHasBeenSet = false;
301
302 AttributeBooleanValue m_disableApiStop;
303 bool m_disableApiStopHasBeenSet = false;
304
306 bool m_groupsHasBeenSet = false;
307
308 ResponseMetadata m_responseMetadata;
309 bool m_responseMetadataHasBeenSet = false;
310 };
311
312} // namespace Model
313} // namespace EC2
314} // 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