AWS SDK for C++  0.14.3
AWS SDK for C++
DescribeInstanceAttributeResponse.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/ec2/EC2_EXPORTS.h>
25 
26 namespace Aws
27 {
28 template<typename RESULT_TYPE>
29 class AmazonWebServiceResult;
30 
31 namespace Utils
32 {
33 namespace Xml
34 {
35  class XmlDocument;
36 } // namespace Xml
37 } // namespace Utils
38 namespace EC2
39 {
40 namespace Model
41 {
46  {
47  public:
51 
55  inline const Aws::String& GetInstanceId() const{ return m_instanceId; }
56 
60  inline void SetInstanceId(const Aws::String& value) { m_instanceId = value; }
61 
65  inline void SetInstanceId(Aws::String&& value) { m_instanceId = value; }
66 
70  inline void SetInstanceId(const char* value) { m_instanceId.assign(value); }
71 
75  inline DescribeInstanceAttributeResponse& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;}
76 
80  inline DescribeInstanceAttributeResponse& WithInstanceId(Aws::String&& value) { SetInstanceId(value); return *this;}
81 
85  inline DescribeInstanceAttributeResponse& WithInstanceId(const char* value) { SetInstanceId(value); return *this;}
86 
90  inline const AttributeValue& GetInstanceType() const{ return m_instanceType; }
91 
95  inline void SetInstanceType(const AttributeValue& value) { m_instanceType = value; }
96 
100  inline void SetInstanceType(AttributeValue&& value) { m_instanceType = value; }
101 
105  inline DescribeInstanceAttributeResponse& WithInstanceType(const AttributeValue& value) { SetInstanceType(value); return *this;}
106 
110  inline DescribeInstanceAttributeResponse& WithInstanceType(AttributeValue&& value) { SetInstanceType(value); return *this;}
111 
115  inline const AttributeValue& GetKernelId() const{ return m_kernelId; }
116 
120  inline void SetKernelId(const AttributeValue& value) { m_kernelId = value; }
121 
125  inline void SetKernelId(AttributeValue&& value) { m_kernelId = value; }
126 
130  inline DescribeInstanceAttributeResponse& WithKernelId(const AttributeValue& value) { SetKernelId(value); return *this;}
131 
135  inline DescribeInstanceAttributeResponse& WithKernelId(AttributeValue&& value) { SetKernelId(value); return *this;}
136 
140  inline const AttributeValue& GetRamdiskId() const{ return m_ramdiskId; }
141 
145  inline void SetRamdiskId(const AttributeValue& value) { m_ramdiskId = value; }
146 
150  inline void SetRamdiskId(AttributeValue&& value) { m_ramdiskId = value; }
151 
155  inline DescribeInstanceAttributeResponse& WithRamdiskId(const AttributeValue& value) { SetRamdiskId(value); return *this;}
156 
160  inline DescribeInstanceAttributeResponse& WithRamdiskId(AttributeValue&& value) { SetRamdiskId(value); return *this;}
161 
165  inline const AttributeValue& GetUserData() const{ return m_userData; }
166 
170  inline void SetUserData(const AttributeValue& value) { m_userData = value; }
171 
175  inline void SetUserData(AttributeValue&& value) { m_userData = value; }
176 
180  inline DescribeInstanceAttributeResponse& WithUserData(const AttributeValue& value) { SetUserData(value); return *this;}
181 
185  inline DescribeInstanceAttributeResponse& WithUserData(AttributeValue&& value) { SetUserData(value); return *this;}
186 
191  inline const AttributeBooleanValue& GetDisableApiTermination() const{ return m_disableApiTermination; }
192 
197  inline void SetDisableApiTermination(const AttributeBooleanValue& value) { m_disableApiTermination = value; }
198 
203  inline void SetDisableApiTermination(AttributeBooleanValue&& value) { m_disableApiTermination = value; }
204 
209  inline DescribeInstanceAttributeResponse& WithDisableApiTermination(const AttributeBooleanValue& value) { SetDisableApiTermination(value); return *this;}
210 
215  inline DescribeInstanceAttributeResponse& WithDisableApiTermination(AttributeBooleanValue&& value) { SetDisableApiTermination(value); return *this;}
216 
221  inline const AttributeValue& GetInstanceInitiatedShutdownBehavior() const{ return m_instanceInitiatedShutdownBehavior; }
222 
227  inline void SetInstanceInitiatedShutdownBehavior(const AttributeValue& value) { m_instanceInitiatedShutdownBehavior = value; }
228 
233  inline void SetInstanceInitiatedShutdownBehavior(AttributeValue&& value) { m_instanceInitiatedShutdownBehavior = value; }
234 
239  inline DescribeInstanceAttributeResponse& WithInstanceInitiatedShutdownBehavior(const AttributeValue& value) { SetInstanceInitiatedShutdownBehavior(value); return *this;}
240 
245  inline DescribeInstanceAttributeResponse& WithInstanceInitiatedShutdownBehavior(AttributeValue&& value) { SetInstanceInitiatedShutdownBehavior(value); return *this;}
246 
251  inline const AttributeValue& GetRootDeviceName() const{ return m_rootDeviceName; }
252 
257  inline void SetRootDeviceName(const AttributeValue& value) { m_rootDeviceName = value; }
258 
263  inline void SetRootDeviceName(AttributeValue&& value) { m_rootDeviceName = value; }
264 
269  inline DescribeInstanceAttributeResponse& WithRootDeviceName(const AttributeValue& value) { SetRootDeviceName(value); return *this;}
270 
275  inline DescribeInstanceAttributeResponse& WithRootDeviceName(AttributeValue&& value) { SetRootDeviceName(value); return *this;}
276 
280  inline const Aws::Vector<InstanceBlockDeviceMapping>& GetBlockDeviceMappings() const{ return m_blockDeviceMappings; }
281 
285  inline void SetBlockDeviceMappings(const Aws::Vector<InstanceBlockDeviceMapping>& value) { m_blockDeviceMappings = value; }
286 
290  inline void SetBlockDeviceMappings(Aws::Vector<InstanceBlockDeviceMapping>&& value) { m_blockDeviceMappings = value; }
291 
295  inline DescribeInstanceAttributeResponse& WithBlockDeviceMappings(const Aws::Vector<InstanceBlockDeviceMapping>& value) { SetBlockDeviceMappings(value); return *this;}
296 
300  inline DescribeInstanceAttributeResponse& WithBlockDeviceMappings(Aws::Vector<InstanceBlockDeviceMapping>&& value) { SetBlockDeviceMappings(value); return *this;}
301 
305  inline DescribeInstanceAttributeResponse& AddBlockDeviceMappings(const InstanceBlockDeviceMapping& value) { m_blockDeviceMappings.push_back(value); return *this; }
306 
310  inline DescribeInstanceAttributeResponse& AddBlockDeviceMappings(InstanceBlockDeviceMapping&& value) { m_blockDeviceMappings.push_back(value); return *this; }
311 
315  inline const Aws::Vector<ProductCode>& GetProductCodes() const{ return m_productCodes; }
316 
320  inline void SetProductCodes(const Aws::Vector<ProductCode>& value) { m_productCodes = value; }
321 
325  inline void SetProductCodes(Aws::Vector<ProductCode>&& value) { m_productCodes = value; }
326 
330  inline DescribeInstanceAttributeResponse& WithProductCodes(const Aws::Vector<ProductCode>& value) { SetProductCodes(value); return *this;}
331 
335  inline DescribeInstanceAttributeResponse& WithProductCodes(Aws::Vector<ProductCode>&& value) { SetProductCodes(value); return *this;}
336 
340  inline DescribeInstanceAttributeResponse& AddProductCodes(const ProductCode& value) { m_productCodes.push_back(value); return *this; }
341 
345  inline DescribeInstanceAttributeResponse& AddProductCodes(ProductCode&& value) { m_productCodes.push_back(value); return *this; }
346 
350  inline const AttributeBooleanValue& GetEbsOptimized() const{ return m_ebsOptimized; }
351 
355  inline void SetEbsOptimized(const AttributeBooleanValue& value) { m_ebsOptimized = value; }
356 
360  inline void SetEbsOptimized(AttributeBooleanValue&& value) { m_ebsOptimized = value; }
361 
365  inline DescribeInstanceAttributeResponse& WithEbsOptimized(const AttributeBooleanValue& value) { SetEbsOptimized(value); return *this;}
366 
370  inline DescribeInstanceAttributeResponse& WithEbsOptimized(AttributeBooleanValue&& value) { SetEbsOptimized(value); return *this;}
371 
372 
373  inline const AttributeValue& GetSriovNetSupport() const{ return m_sriovNetSupport; }
374 
375 
376  inline void SetSriovNetSupport(const AttributeValue& value) { m_sriovNetSupport = value; }
377 
378 
379  inline void SetSriovNetSupport(AttributeValue&& value) { m_sriovNetSupport = value; }
380 
381 
382  inline DescribeInstanceAttributeResponse& WithSriovNetSupport(const AttributeValue& value) { SetSriovNetSupport(value); return *this;}
383 
384 
385  inline DescribeInstanceAttributeResponse& WithSriovNetSupport(AttributeValue&& value) { SetSriovNetSupport(value); return *this;}
386 
393  inline const AttributeBooleanValue& GetSourceDestCheck() const{ return m_sourceDestCheck; }
394 
401  inline void SetSourceDestCheck(const AttributeBooleanValue& value) { m_sourceDestCheck = value; }
402 
409  inline void SetSourceDestCheck(AttributeBooleanValue&& value) { m_sourceDestCheck = value; }
410 
417  inline DescribeInstanceAttributeResponse& WithSourceDestCheck(const AttributeBooleanValue& value) { SetSourceDestCheck(value); return *this;}
418 
425  inline DescribeInstanceAttributeResponse& WithSourceDestCheck(AttributeBooleanValue&& value) { SetSourceDestCheck(value); return *this;}
426 
430  inline const Aws::Vector<GroupIdentifier>& GetGroups() const{ return m_groups; }
431 
435  inline void SetGroups(const Aws::Vector<GroupIdentifier>& value) { m_groups = value; }
436 
440  inline void SetGroups(Aws::Vector<GroupIdentifier>&& value) { m_groups = value; }
441 
445  inline DescribeInstanceAttributeResponse& WithGroups(const Aws::Vector<GroupIdentifier>& value) { SetGroups(value); return *this;}
446 
450  inline DescribeInstanceAttributeResponse& WithGroups(Aws::Vector<GroupIdentifier>&& value) { SetGroups(value); return *this;}
451 
455  inline DescribeInstanceAttributeResponse& AddGroups(const GroupIdentifier& value) { m_groups.push_back(value); return *this; }
456 
460  inline DescribeInstanceAttributeResponse& AddGroups(GroupIdentifier&& value) { m_groups.push_back(value); return *this; }
461 
462 
463  inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; }
464 
465 
466  inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; }
467 
468 
469  inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = value; }
470 
471 
472  inline DescribeInstanceAttributeResponse& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;}
473 
474 
475  inline DescribeInstanceAttributeResponse& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(value); return *this;}
476 
477  private:
478  Aws::String m_instanceId;
479  AttributeValue m_instanceType;
480  AttributeValue m_kernelId;
481  AttributeValue m_ramdiskId;
482  AttributeValue m_userData;
483  AttributeBooleanValue m_disableApiTermination;
484  AttributeValue m_instanceInitiatedShutdownBehavior;
485  AttributeValue m_rootDeviceName;
486  Aws::Vector<InstanceBlockDeviceMapping> m_blockDeviceMappings;
487  Aws::Vector<ProductCode> m_productCodes;
488  AttributeBooleanValue m_ebsOptimized;
489  AttributeValue m_sriovNetSupport;
490  AttributeBooleanValue m_sourceDestCheck;
492  ResponseMetadata m_responseMetadata;
493  };
494 
495 } // namespace Model
496 } // namespace EC2
497 } // namespace Aws
DescribeInstanceAttributeResponse & AddProductCodes(const ProductCode &value)
DescribeInstanceAttributeResponse & WithInstanceInitiatedShutdownBehavior(const AttributeValue &value)
const Aws::Vector< InstanceBlockDeviceMapping > & GetBlockDeviceMappings() const
DescribeInstanceAttributeResponse & WithKernelId(const AttributeValue &value)
void SetDisableApiTermination(const AttributeBooleanValue &value)
DescribeInstanceAttributeResponse & AddProductCodes(ProductCode &&value)
DescribeInstanceAttributeResponse & WithSourceDestCheck(AttributeBooleanValue &&value)
DescribeInstanceAttributeResponse & WithGroups(const Aws::Vector< GroupIdentifier > &value)
DescribeInstanceAttributeResponse & WithBlockDeviceMappings(Aws::Vector< InstanceBlockDeviceMapping > &&value)
DescribeInstanceAttributeResponse & WithEbsOptimized(const AttributeBooleanValue &value)
DescribeInstanceAttributeResponse & WithGroups(Aws::Vector< GroupIdentifier > &&value)
DescribeInstanceAttributeResponse & WithEbsOptimized(AttributeBooleanValue &&value)
DescribeInstanceAttributeResponse & WithInstanceInitiatedShutdownBehavior(AttributeValue &&value)
DescribeInstanceAttributeResponse & AddBlockDeviceMappings(InstanceBlockDeviceMapping &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
DescribeInstanceAttributeResponse & WithInstanceType(const AttributeValue &value)
const Aws::Vector< GroupIdentifier > & GetGroups() const
void SetBlockDeviceMappings(const Aws::Vector< InstanceBlockDeviceMapping > &value)
DescribeInstanceAttributeResponse & WithDisableApiTermination(const AttributeBooleanValue &value)
DescribeInstanceAttributeResponse & WithInstanceId(const char *value)
DescribeInstanceAttributeResponse & WithInstanceType(AttributeValue &&value)
DescribeInstanceAttributeResponse & WithUserData(const AttributeValue &value)
DescribeInstanceAttributeResponse & WithRamdiskId(const AttributeValue &value)
DescribeInstanceAttributeResponse & AddGroups(const GroupIdentifier &value)
DescribeInstanceAttributeResponse & AddGroups(GroupIdentifier &&value)
DescribeInstanceAttributeResponse & WithSourceDestCheck(const AttributeBooleanValue &value)
DescribeInstanceAttributeResponse & WithProductCodes(Aws::Vector< ProductCode > &&value)
DescribeInstanceAttributeResponse & WithProductCodes(const Aws::Vector< ProductCode > &value)
DescribeInstanceAttributeResponse & WithKernelId(AttributeValue &&value)
DescribeInstanceAttributeResponse & WithResponseMetadata(const ResponseMetadata &value)
DescribeInstanceAttributeResponse & WithRootDeviceName(const AttributeValue &value)
DescribeInstanceAttributeResponse & AddBlockDeviceMappings(const InstanceBlockDeviceMapping &value)
void SetProductCodes(const Aws::Vector< ProductCode > &value)
DescribeInstanceAttributeResponse & WithResponseMetadata(ResponseMetadata &&value)
DescribeInstanceAttributeResponse & WithSriovNetSupport(const AttributeValue &value)
DescribeInstanceAttributeResponse & WithRamdiskId(AttributeValue &&value)
void SetBlockDeviceMappings(Aws::Vector< InstanceBlockDeviceMapping > &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
DescribeInstanceAttributeResponse & WithRootDeviceName(AttributeValue &&value)
DescribeInstanceAttributeResponse & WithInstanceId(Aws::String &&value)
DescribeInstanceAttributeResponse & WithInstanceId(const Aws::String &value)
void SetGroups(const Aws::Vector< GroupIdentifier > &value)
DescribeInstanceAttributeResponse & WithSriovNetSupport(AttributeValue &&value)
DescribeInstanceAttributeResponse & WithBlockDeviceMappings(const Aws::Vector< InstanceBlockDeviceMapping > &value)
DescribeInstanceAttributeResponse & WithUserData(AttributeValue &&value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
const Aws::Vector< ProductCode > & GetProductCodes() const
DescribeInstanceAttributeResponse & WithDisableApiTermination(AttributeBooleanValue &&value)
JSON (JavaScript Object Notation).