AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
Instance.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/elasticmapreduce/EMR_EXPORTS.h>
10#include <aws/elasticmapreduce/model/EbsVolume.h>
11#include <aws/elasticmapreduce/model/InstanceStatus.h>
12#include <aws/elasticmapreduce/model/MarketType.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace EMR {
24namespace Model {
25
32class Instance {
33 public:
34 AWS_EMR_API Instance() = default;
35 AWS_EMR_API Instance(Aws::Utils::Json::JsonView jsonValue);
38
40
43 inline const Aws::String& GetId() const { return m_id; }
44 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
45 template <typename IdT = Aws::String>
46 void SetId(IdT&& value) {
47 m_idHasBeenSet = true;
48 m_id = std::forward<IdT>(value);
49 }
50 template <typename IdT = Aws::String>
51 Instance& WithId(IdT&& value) {
52 SetId(std::forward<IdT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetEc2InstanceId() const { return m_ec2InstanceId; }
62 inline bool Ec2InstanceIdHasBeenSet() const { return m_ec2InstanceIdHasBeenSet; }
63 template <typename Ec2InstanceIdT = Aws::String>
64 void SetEc2InstanceId(Ec2InstanceIdT&& value) {
65 m_ec2InstanceIdHasBeenSet = true;
66 m_ec2InstanceId = std::forward<Ec2InstanceIdT>(value);
67 }
68 template <typename Ec2InstanceIdT = Aws::String>
69 Instance& WithEc2InstanceId(Ec2InstanceIdT&& value) {
70 SetEc2InstanceId(std::forward<Ec2InstanceIdT>(value));
71 return *this;
72 }
74
76
79 inline const Aws::String& GetPublicDnsName() const { return m_publicDnsName; }
80 inline bool PublicDnsNameHasBeenSet() const { return m_publicDnsNameHasBeenSet; }
81 template <typename PublicDnsNameT = Aws::String>
82 void SetPublicDnsName(PublicDnsNameT&& value) {
83 m_publicDnsNameHasBeenSet = true;
84 m_publicDnsName = std::forward<PublicDnsNameT>(value);
85 }
86 template <typename PublicDnsNameT = Aws::String>
87 Instance& WithPublicDnsName(PublicDnsNameT&& value) {
88 SetPublicDnsName(std::forward<PublicDnsNameT>(value));
89 return *this;
90 }
92
94
97 inline const Aws::String& GetPublicIpAddress() const { return m_publicIpAddress; }
98 inline bool PublicIpAddressHasBeenSet() const { return m_publicIpAddressHasBeenSet; }
99 template <typename PublicIpAddressT = Aws::String>
100 void SetPublicIpAddress(PublicIpAddressT&& value) {
101 m_publicIpAddressHasBeenSet = true;
102 m_publicIpAddress = std::forward<PublicIpAddressT>(value);
103 }
104 template <typename PublicIpAddressT = Aws::String>
105 Instance& WithPublicIpAddress(PublicIpAddressT&& value) {
106 SetPublicIpAddress(std::forward<PublicIpAddressT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::String& GetPrivateDnsName() const { return m_privateDnsName; }
116 inline bool PrivateDnsNameHasBeenSet() const { return m_privateDnsNameHasBeenSet; }
117 template <typename PrivateDnsNameT = Aws::String>
118 void SetPrivateDnsName(PrivateDnsNameT&& value) {
119 m_privateDnsNameHasBeenSet = true;
120 m_privateDnsName = std::forward<PrivateDnsNameT>(value);
121 }
122 template <typename PrivateDnsNameT = Aws::String>
123 Instance& WithPrivateDnsName(PrivateDnsNameT&& value) {
124 SetPrivateDnsName(std::forward<PrivateDnsNameT>(value));
125 return *this;
126 }
128
130
133 inline const Aws::String& GetPrivateIpAddress() const { return m_privateIpAddress; }
134 inline bool PrivateIpAddressHasBeenSet() const { return m_privateIpAddressHasBeenSet; }
135 template <typename PrivateIpAddressT = Aws::String>
136 void SetPrivateIpAddress(PrivateIpAddressT&& value) {
137 m_privateIpAddressHasBeenSet = true;
138 m_privateIpAddress = std::forward<PrivateIpAddressT>(value);
139 }
140 template <typename PrivateIpAddressT = Aws::String>
141 Instance& WithPrivateIpAddress(PrivateIpAddressT&& value) {
142 SetPrivateIpAddress(std::forward<PrivateIpAddressT>(value));
143 return *this;
144 }
146
148
151 inline const InstanceStatus& GetStatus() const { return m_status; }
152 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
153 template <typename StatusT = InstanceStatus>
154 void SetStatus(StatusT&& value) {
155 m_statusHasBeenSet = true;
156 m_status = std::forward<StatusT>(value);
157 }
158 template <typename StatusT = InstanceStatus>
159 Instance& WithStatus(StatusT&& value) {
160 SetStatus(std::forward<StatusT>(value));
161 return *this;
162 }
164
166
169 inline const Aws::String& GetInstanceGroupId() const { return m_instanceGroupId; }
170 inline bool InstanceGroupIdHasBeenSet() const { return m_instanceGroupIdHasBeenSet; }
171 template <typename InstanceGroupIdT = Aws::String>
172 void SetInstanceGroupId(InstanceGroupIdT&& value) {
173 m_instanceGroupIdHasBeenSet = true;
174 m_instanceGroupId = std::forward<InstanceGroupIdT>(value);
175 }
176 template <typename InstanceGroupIdT = Aws::String>
177 Instance& WithInstanceGroupId(InstanceGroupIdT&& value) {
178 SetInstanceGroupId(std::forward<InstanceGroupIdT>(value));
179 return *this;
180 }
182
184
188 inline const Aws::String& GetInstanceFleetId() const { return m_instanceFleetId; }
189 inline bool InstanceFleetIdHasBeenSet() const { return m_instanceFleetIdHasBeenSet; }
190 template <typename InstanceFleetIdT = Aws::String>
191 void SetInstanceFleetId(InstanceFleetIdT&& value) {
192 m_instanceFleetIdHasBeenSet = true;
193 m_instanceFleetId = std::forward<InstanceFleetIdT>(value);
194 }
195 template <typename InstanceFleetIdT = Aws::String>
196 Instance& WithInstanceFleetId(InstanceFleetIdT&& value) {
197 SetInstanceFleetId(std::forward<InstanceFleetIdT>(value));
198 return *this;
199 }
201
203
207 inline MarketType GetMarket() const { return m_market; }
208 inline bool MarketHasBeenSet() const { return m_marketHasBeenSet; }
209 inline void SetMarket(MarketType value) {
210 m_marketHasBeenSet = true;
211 m_market = value;
212 }
214 SetMarket(value);
215 return *this;
216 }
218
220
223 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
224 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
225 template <typename InstanceTypeT = Aws::String>
226 void SetInstanceType(InstanceTypeT&& value) {
227 m_instanceTypeHasBeenSet = true;
228 m_instanceType = std::forward<InstanceTypeT>(value);
229 }
230 template <typename InstanceTypeT = Aws::String>
231 Instance& WithInstanceType(InstanceTypeT&& value) {
232 SetInstanceType(std::forward<InstanceTypeT>(value));
233 return *this;
234 }
236
238
241 inline const Aws::Vector<EbsVolume>& GetEbsVolumes() const { return m_ebsVolumes; }
242 inline bool EbsVolumesHasBeenSet() const { return m_ebsVolumesHasBeenSet; }
243 template <typename EbsVolumesT = Aws::Vector<EbsVolume>>
244 void SetEbsVolumes(EbsVolumesT&& value) {
245 m_ebsVolumesHasBeenSet = true;
246 m_ebsVolumes = std::forward<EbsVolumesT>(value);
247 }
248 template <typename EbsVolumesT = Aws::Vector<EbsVolume>>
249 Instance& WithEbsVolumes(EbsVolumesT&& value) {
250 SetEbsVolumes(std::forward<EbsVolumesT>(value));
251 return *this;
252 }
253 template <typename EbsVolumesT = EbsVolume>
254 Instance& AddEbsVolumes(EbsVolumesT&& value) {
255 m_ebsVolumesHasBeenSet = true;
256 m_ebsVolumes.emplace_back(std::forward<EbsVolumesT>(value));
257 return *this;
258 }
260 private:
261 Aws::String m_id;
262
263 Aws::String m_ec2InstanceId;
264
265 Aws::String m_publicDnsName;
266
267 Aws::String m_publicIpAddress;
268
269 Aws::String m_privateDnsName;
270
271 Aws::String m_privateIpAddress;
272
273 InstanceStatus m_status;
274
275 Aws::String m_instanceGroupId;
276
277 Aws::String m_instanceFleetId;
278
280
281 Aws::String m_instanceType;
282
283 Aws::Vector<EbsVolume> m_ebsVolumes;
284 bool m_idHasBeenSet = false;
285 bool m_ec2InstanceIdHasBeenSet = false;
286 bool m_publicDnsNameHasBeenSet = false;
287 bool m_publicIpAddressHasBeenSet = false;
288 bool m_privateDnsNameHasBeenSet = false;
289 bool m_privateIpAddressHasBeenSet = false;
290 bool m_statusHasBeenSet = false;
291 bool m_instanceGroupIdHasBeenSet = false;
292 bool m_instanceFleetIdHasBeenSet = false;
293 bool m_marketHasBeenSet = false;
294 bool m_instanceTypeHasBeenSet = false;
295 bool m_ebsVolumesHasBeenSet = false;
296};
297
298} // namespace Model
299} // namespace EMR
300} // namespace Aws
Instance & WithEc2InstanceId(Ec2InstanceIdT &&value)
Definition Instance.h:69
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_EMR_API Instance & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< EbsVolume > & GetEbsVolumes() const
Definition Instance.h:241
const Aws::String & GetEc2InstanceId() const
Definition Instance.h:61
Instance & WithMarket(MarketType value)
Definition Instance.h:213
void SetPublicIpAddress(PublicIpAddressT &&value)
Definition Instance.h:100
AWS_EMR_API Instance(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetInstanceFleetId() const
Definition Instance.h:188
bool PrivateIpAddressHasBeenSet() const
Definition Instance.h:134
Instance & WithPublicDnsName(PublicDnsNameT &&value)
Definition Instance.h:87
void SetPrivateIpAddress(PrivateIpAddressT &&value)
Definition Instance.h:136
void SetId(IdT &&value)
Definition Instance.h:46
const Aws::String & GetPrivateIpAddress() const
Definition Instance.h:133
const Aws::String & GetId() const
Definition Instance.h:43
void SetEbsVolumes(EbsVolumesT &&value)
Definition Instance.h:244
void SetPrivateDnsName(PrivateDnsNameT &&value)
Definition Instance.h:118
Instance & WithInstanceGroupId(InstanceGroupIdT &&value)
Definition Instance.h:177
bool PublicIpAddressHasBeenSet() const
Definition Instance.h:98
bool StatusHasBeenSet() const
Definition Instance.h:152
AWS_EMR_API Instance()=default
void SetStatus(StatusT &&value)
Definition Instance.h:154
Instance & WithId(IdT &&value)
Definition Instance.h:51
const Aws::String & GetInstanceGroupId() const
Definition Instance.h:169
void SetMarket(MarketType value)
Definition Instance.h:209
const Aws::String & GetPublicDnsName() const
Definition Instance.h:79
bool MarketHasBeenSet() const
Definition Instance.h:208
Instance & WithPrivateIpAddress(PrivateIpAddressT &&value)
Definition Instance.h:141
void SetPublicDnsName(PublicDnsNameT &&value)
Definition Instance.h:82
Instance & WithInstanceFleetId(InstanceFleetIdT &&value)
Definition Instance.h:196
void SetInstanceType(InstanceTypeT &&value)
Definition Instance.h:226
Instance & AddEbsVolumes(EbsVolumesT &&value)
Definition Instance.h:254
bool PrivateDnsNameHasBeenSet() const
Definition Instance.h:116
const Aws::String & GetInstanceType() const
Definition Instance.h:223
Instance & WithPrivateDnsName(PrivateDnsNameT &&value)
Definition Instance.h:123
bool EbsVolumesHasBeenSet() const
Definition Instance.h:242
bool InstanceTypeHasBeenSet() const
Definition Instance.h:224
bool Ec2InstanceIdHasBeenSet() const
Definition Instance.h:62
Instance & WithPublicIpAddress(PublicIpAddressT &&value)
Definition Instance.h:105
void SetInstanceGroupId(InstanceGroupIdT &&value)
Definition Instance.h:172
bool IdHasBeenSet() const
Definition Instance.h:44
bool InstanceGroupIdHasBeenSet() const
Definition Instance.h:170
bool InstanceFleetIdHasBeenSet() const
Definition Instance.h:189
void SetInstanceFleetId(InstanceFleetIdT &&value)
Definition Instance.h:191
MarketType GetMarket() const
Definition Instance.h:207
void SetEc2InstanceId(Ec2InstanceIdT &&value)
Definition Instance.h:64
const Aws::String & GetPrivateDnsName() const
Definition Instance.h:115
bool PublicDnsNameHasBeenSet() const
Definition Instance.h:80
Instance & WithStatus(StatusT &&value)
Definition Instance.h:159
const Aws::String & GetPublicIpAddress() const
Definition Instance.h:97
Instance & WithInstanceType(InstanceTypeT &&value)
Definition Instance.h:231
const InstanceStatus & GetStatus() const
Definition Instance.h:151
Instance & WithEbsVolumes(EbsVolumesT &&value)
Definition Instance.h:249
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue