AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
Ec2Instance.h
1
6#pragma once
7#include <aws/guardduty/GuardDuty_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/guardduty/model/IamInstanceProfile.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/guardduty/model/ProductCode.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace GuardDuty
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_GUARDDUTY_API Ec2Instance() = default;
39 AWS_GUARDDUTY_API Ec2Instance(Aws::Utils::Json::JsonView jsonValue);
40 AWS_GUARDDUTY_API Ec2Instance& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
51 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
52 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
53 template<typename AvailabilityZoneT = Aws::String>
54 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
55 template<typename AvailabilityZoneT = Aws::String>
56 Ec2Instance& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
58
60
63 inline const Aws::String& GetImageDescription() const { return m_imageDescription; }
64 inline bool ImageDescriptionHasBeenSet() const { return m_imageDescriptionHasBeenSet; }
65 template<typename ImageDescriptionT = Aws::String>
66 void SetImageDescription(ImageDescriptionT&& value) { m_imageDescriptionHasBeenSet = true; m_imageDescription = std::forward<ImageDescriptionT>(value); }
67 template<typename ImageDescriptionT = Aws::String>
68 Ec2Instance& WithImageDescription(ImageDescriptionT&& value) { SetImageDescription(std::forward<ImageDescriptionT>(value)); return *this;}
70
72
77 inline const Aws::String& GetInstanceState() const { return m_instanceState; }
78 inline bool InstanceStateHasBeenSet() const { return m_instanceStateHasBeenSet; }
79 template<typename InstanceStateT = Aws::String>
80 void SetInstanceState(InstanceStateT&& value) { m_instanceStateHasBeenSet = true; m_instanceState = std::forward<InstanceStateT>(value); }
81 template<typename InstanceStateT = Aws::String>
82 Ec2Instance& WithInstanceState(InstanceStateT&& value) { SetInstanceState(std::forward<InstanceStateT>(value)); return *this;}
84
86
87 inline const IamInstanceProfile& GetIamInstanceProfile() const { return m_iamInstanceProfile; }
88 inline bool IamInstanceProfileHasBeenSet() const { return m_iamInstanceProfileHasBeenSet; }
89 template<typename IamInstanceProfileT = IamInstanceProfile>
90 void SetIamInstanceProfile(IamInstanceProfileT&& value) { m_iamInstanceProfileHasBeenSet = true; m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value); }
91 template<typename IamInstanceProfileT = IamInstanceProfile>
92 Ec2Instance& WithIamInstanceProfile(IamInstanceProfileT&& value) { SetIamInstanceProfile(std::forward<IamInstanceProfileT>(value)); return *this;}
94
96
99 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
100 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
101 template<typename InstanceTypeT = Aws::String>
102 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
103 template<typename InstanceTypeT = Aws::String>
104 Ec2Instance& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
106
108
112 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
113 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
114 template<typename OutpostArnT = Aws::String>
115 void SetOutpostArn(OutpostArnT&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::forward<OutpostArnT>(value); }
116 template<typename OutpostArnT = Aws::String>
117 Ec2Instance& WithOutpostArn(OutpostArnT&& value) { SetOutpostArn(std::forward<OutpostArnT>(value)); return *this;}
119
121
124 inline const Aws::String& GetPlatform() const { return m_platform; }
125 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
126 template<typename PlatformT = Aws::String>
127 void SetPlatform(PlatformT&& value) { m_platformHasBeenSet = true; m_platform = std::forward<PlatformT>(value); }
128 template<typename PlatformT = Aws::String>
129 Ec2Instance& WithPlatform(PlatformT&& value) { SetPlatform(std::forward<PlatformT>(value)); return *this;}
131
133
136 inline const Aws::Vector<ProductCode>& GetProductCodes() const { return m_productCodes; }
137 inline bool ProductCodesHasBeenSet() const { return m_productCodesHasBeenSet; }
138 template<typename ProductCodesT = Aws::Vector<ProductCode>>
139 void SetProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes = std::forward<ProductCodesT>(value); }
140 template<typename ProductCodesT = Aws::Vector<ProductCode>>
141 Ec2Instance& WithProductCodes(ProductCodesT&& value) { SetProductCodes(std::forward<ProductCodesT>(value)); return *this;}
142 template<typename ProductCodesT = ProductCode>
143 Ec2Instance& AddProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes.emplace_back(std::forward<ProductCodesT>(value)); return *this; }
145
147
150 inline const Aws::Vector<Aws::String>& GetEc2NetworkInterfaceUids() const { return m_ec2NetworkInterfaceUids; }
151 inline bool Ec2NetworkInterfaceUidsHasBeenSet() const { return m_ec2NetworkInterfaceUidsHasBeenSet; }
152 template<typename Ec2NetworkInterfaceUidsT = Aws::Vector<Aws::String>>
153 void SetEc2NetworkInterfaceUids(Ec2NetworkInterfaceUidsT&& value) { m_ec2NetworkInterfaceUidsHasBeenSet = true; m_ec2NetworkInterfaceUids = std::forward<Ec2NetworkInterfaceUidsT>(value); }
154 template<typename Ec2NetworkInterfaceUidsT = Aws::Vector<Aws::String>>
155 Ec2Instance& WithEc2NetworkInterfaceUids(Ec2NetworkInterfaceUidsT&& value) { SetEc2NetworkInterfaceUids(std::forward<Ec2NetworkInterfaceUidsT>(value)); return *this;}
156 template<typename Ec2NetworkInterfaceUidsT = Aws::String>
157 Ec2Instance& AddEc2NetworkInterfaceUids(Ec2NetworkInterfaceUidsT&& value) { m_ec2NetworkInterfaceUidsHasBeenSet = true; m_ec2NetworkInterfaceUids.emplace_back(std::forward<Ec2NetworkInterfaceUidsT>(value)); return *this; }
159 private:
160
161 Aws::String m_availabilityZone;
162 bool m_availabilityZoneHasBeenSet = false;
163
164 Aws::String m_imageDescription;
165 bool m_imageDescriptionHasBeenSet = false;
166
167 Aws::String m_instanceState;
168 bool m_instanceStateHasBeenSet = false;
169
170 IamInstanceProfile m_iamInstanceProfile;
171 bool m_iamInstanceProfileHasBeenSet = false;
172
173 Aws::String m_instanceType;
174 bool m_instanceTypeHasBeenSet = false;
175
176 Aws::String m_outpostArn;
177 bool m_outpostArnHasBeenSet = false;
178
179 Aws::String m_platform;
180 bool m_platformHasBeenSet = false;
181
182 Aws::Vector<ProductCode> m_productCodes;
183 bool m_productCodesHasBeenSet = false;
184
185 Aws::Vector<Aws::String> m_ec2NetworkInterfaceUids;
186 bool m_ec2NetworkInterfaceUidsHasBeenSet = false;
187 };
188
189} // namespace Model
190} // namespace GuardDuty
191} // namespace Aws
const Aws::String & GetPlatform() const
AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_GUARDDUTY_API Ec2Instance & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetIamInstanceProfile(IamInstanceProfileT &&value)
Definition Ec2Instance.h:90
const Aws::Vector< ProductCode > & GetProductCodes() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
Definition Ec2Instance.h:54
Ec2Instance & WithAvailabilityZone(AvailabilityZoneT &&value)
Definition Ec2Instance.h:56
Ec2Instance & WithEc2NetworkInterfaceUids(Ec2NetworkInterfaceUidsT &&value)
const IamInstanceProfile & GetIamInstanceProfile() const
Definition Ec2Instance.h:87
void SetProductCodes(ProductCodesT &&value)
const Aws::String & GetInstanceType() const
Definition Ec2Instance.h:99
Ec2Instance & AddProductCodes(ProductCodesT &&value)
AWS_GUARDDUTY_API Ec2Instance()=default
Ec2Instance & WithInstanceType(InstanceTypeT &&value)
const Aws::String & GetInstanceState() const
Definition Ec2Instance.h:77
void SetEc2NetworkInterfaceUids(Ec2NetworkInterfaceUidsT &&value)
void SetPlatform(PlatformT &&value)
const Aws::Vector< Aws::String > & GetEc2NetworkInterfaceUids() const
Ec2Instance & WithOutpostArn(OutpostArnT &&value)
AWS_GUARDDUTY_API Ec2Instance(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetAvailabilityZone() const
Definition Ec2Instance.h:51
Ec2Instance & WithImageDescription(ImageDescriptionT &&value)
Definition Ec2Instance.h:68
const Aws::String & GetImageDescription() const
Definition Ec2Instance.h:63
Ec2Instance & WithIamInstanceProfile(IamInstanceProfileT &&value)
Definition Ec2Instance.h:92
void SetImageDescription(ImageDescriptionT &&value)
Definition Ec2Instance.h:66
void SetInstanceType(InstanceTypeT &&value)
Ec2Instance & WithPlatform(PlatformT &&value)
Ec2Instance & WithProductCodes(ProductCodesT &&value)
Ec2Instance & AddEc2NetworkInterfaceUids(Ec2NetworkInterfaceUidsT &&value)
void SetInstanceState(InstanceStateT &&value)
Definition Ec2Instance.h:80
const Aws::String & GetOutpostArn() const
void SetOutpostArn(OutpostArnT &&value)
Ec2Instance & WithInstanceState(InstanceStateT &&value)
Definition Ec2Instance.h:82
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue