AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
JobFlowDetail.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/BootstrapActionDetail.h>
11#include <aws/elasticmapreduce/model/JobFlowExecutionStatusDetail.h>
12#include <aws/elasticmapreduce/model/JobFlowInstancesDetail.h>
13#include <aws/elasticmapreduce/model/ScaleDownBehavior.h>
14#include <aws/elasticmapreduce/model/StepDetail.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace EMR {
26namespace Model {
27
34 public:
35 AWS_EMR_API JobFlowDetail() = default;
39
41
44 inline const Aws::String& GetJobFlowId() const { return m_jobFlowId; }
45 inline bool JobFlowIdHasBeenSet() const { return m_jobFlowIdHasBeenSet; }
46 template <typename JobFlowIdT = Aws::String>
47 void SetJobFlowId(JobFlowIdT&& value) {
48 m_jobFlowIdHasBeenSet = true;
49 m_jobFlowId = std::forward<JobFlowIdT>(value);
50 }
51 template <typename JobFlowIdT = Aws::String>
52 JobFlowDetail& WithJobFlowId(JobFlowIdT&& value) {
53 SetJobFlowId(std::forward<JobFlowIdT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetName() const { return m_name; }
63 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
64 template <typename NameT = Aws::String>
65 void SetName(NameT&& value) {
66 m_nameHasBeenSet = true;
67 m_name = std::forward<NameT>(value);
68 }
69 template <typename NameT = Aws::String>
70 JobFlowDetail& WithName(NameT&& value) {
71 SetName(std::forward<NameT>(value));
72 return *this;
73 }
75
77
80 inline const Aws::String& GetLogUri() const { return m_logUri; }
81 inline bool LogUriHasBeenSet() const { return m_logUriHasBeenSet; }
82 template <typename LogUriT = Aws::String>
83 void SetLogUri(LogUriT&& value) {
84 m_logUriHasBeenSet = true;
85 m_logUri = std::forward<LogUriT>(value);
86 }
87 template <typename LogUriT = Aws::String>
88 JobFlowDetail& WithLogUri(LogUriT&& value) {
89 SetLogUri(std::forward<LogUriT>(value));
90 return *this;
91 }
93
95
99 inline const Aws::String& GetLogEncryptionKmsKeyId() const { return m_logEncryptionKmsKeyId; }
100 inline bool LogEncryptionKmsKeyIdHasBeenSet() const { return m_logEncryptionKmsKeyIdHasBeenSet; }
101 template <typename LogEncryptionKmsKeyIdT = Aws::String>
102 void SetLogEncryptionKmsKeyId(LogEncryptionKmsKeyIdT&& value) {
103 m_logEncryptionKmsKeyIdHasBeenSet = true;
104 m_logEncryptionKmsKeyId = std::forward<LogEncryptionKmsKeyIdT>(value);
105 }
106 template <typename LogEncryptionKmsKeyIdT = Aws::String>
107 JobFlowDetail& WithLogEncryptionKmsKeyId(LogEncryptionKmsKeyIdT&& value) {
108 SetLogEncryptionKmsKeyId(std::forward<LogEncryptionKmsKeyIdT>(value));
109 return *this;
110 }
112
114
119 inline const Aws::String& GetAmiVersion() const { return m_amiVersion; }
120 inline bool AmiVersionHasBeenSet() const { return m_amiVersionHasBeenSet; }
121 template <typename AmiVersionT = Aws::String>
122 void SetAmiVersion(AmiVersionT&& value) {
123 m_amiVersionHasBeenSet = true;
124 m_amiVersion = std::forward<AmiVersionT>(value);
125 }
126 template <typename AmiVersionT = Aws::String>
127 JobFlowDetail& WithAmiVersion(AmiVersionT&& value) {
128 SetAmiVersion(std::forward<AmiVersionT>(value));
129 return *this;
130 }
132
134
137 inline const JobFlowExecutionStatusDetail& GetExecutionStatusDetail() const { return m_executionStatusDetail; }
138 inline bool ExecutionStatusDetailHasBeenSet() const { return m_executionStatusDetailHasBeenSet; }
139 template <typename ExecutionStatusDetailT = JobFlowExecutionStatusDetail>
140 void SetExecutionStatusDetail(ExecutionStatusDetailT&& value) {
141 m_executionStatusDetailHasBeenSet = true;
142 m_executionStatusDetail = std::forward<ExecutionStatusDetailT>(value);
143 }
144 template <typename ExecutionStatusDetailT = JobFlowExecutionStatusDetail>
145 JobFlowDetail& WithExecutionStatusDetail(ExecutionStatusDetailT&& value) {
146 SetExecutionStatusDetail(std::forward<ExecutionStatusDetailT>(value));
147 return *this;
148 }
150
152
155 inline const JobFlowInstancesDetail& GetInstances() const { return m_instances; }
156 inline bool InstancesHasBeenSet() const { return m_instancesHasBeenSet; }
157 template <typename InstancesT = JobFlowInstancesDetail>
158 void SetInstances(InstancesT&& value) {
159 m_instancesHasBeenSet = true;
160 m_instances = std::forward<InstancesT>(value);
161 }
162 template <typename InstancesT = JobFlowInstancesDetail>
163 JobFlowDetail& WithInstances(InstancesT&& value) {
164 SetInstances(std::forward<InstancesT>(value));
165 return *this;
166 }
168
170
173 inline const Aws::Vector<StepDetail>& GetSteps() const { return m_steps; }
174 inline bool StepsHasBeenSet() const { return m_stepsHasBeenSet; }
175 template <typename StepsT = Aws::Vector<StepDetail>>
176 void SetSteps(StepsT&& value) {
177 m_stepsHasBeenSet = true;
178 m_steps = std::forward<StepsT>(value);
179 }
180 template <typename StepsT = Aws::Vector<StepDetail>>
181 JobFlowDetail& WithSteps(StepsT&& value) {
182 SetSteps(std::forward<StepsT>(value));
183 return *this;
184 }
185 template <typename StepsT = StepDetail>
186 JobFlowDetail& AddSteps(StepsT&& value) {
187 m_stepsHasBeenSet = true;
188 m_steps.emplace_back(std::forward<StepsT>(value));
189 return *this;
190 }
192
194
197 inline const Aws::Vector<BootstrapActionDetail>& GetBootstrapActions() const { return m_bootstrapActions; }
198 inline bool BootstrapActionsHasBeenSet() const { return m_bootstrapActionsHasBeenSet; }
199 template <typename BootstrapActionsT = Aws::Vector<BootstrapActionDetail>>
200 void SetBootstrapActions(BootstrapActionsT&& value) {
201 m_bootstrapActionsHasBeenSet = true;
202 m_bootstrapActions = std::forward<BootstrapActionsT>(value);
203 }
204 template <typename BootstrapActionsT = Aws::Vector<BootstrapActionDetail>>
205 JobFlowDetail& WithBootstrapActions(BootstrapActionsT&& value) {
206 SetBootstrapActions(std::forward<BootstrapActionsT>(value));
207 return *this;
208 }
209 template <typename BootstrapActionsT = BootstrapActionDetail>
210 JobFlowDetail& AddBootstrapActions(BootstrapActionsT&& value) {
211 m_bootstrapActionsHasBeenSet = true;
212 m_bootstrapActions.emplace_back(std::forward<BootstrapActionsT>(value));
213 return *this;
214 }
216
218
223 inline const Aws::Vector<Aws::String>& GetSupportedProducts() const { return m_supportedProducts; }
224 inline bool SupportedProductsHasBeenSet() const { return m_supportedProductsHasBeenSet; }
225 template <typename SupportedProductsT = Aws::Vector<Aws::String>>
226 void SetSupportedProducts(SupportedProductsT&& value) {
227 m_supportedProductsHasBeenSet = true;
228 m_supportedProducts = std::forward<SupportedProductsT>(value);
229 }
230 template <typename SupportedProductsT = Aws::Vector<Aws::String>>
231 JobFlowDetail& WithSupportedProducts(SupportedProductsT&& value) {
232 SetSupportedProducts(std::forward<SupportedProductsT>(value));
233 return *this;
234 }
235 template <typename SupportedProductsT = Aws::String>
236 JobFlowDetail& AddSupportedProducts(SupportedProductsT&& value) {
237 m_supportedProductsHasBeenSet = true;
238 m_supportedProducts.emplace_back(std::forward<SupportedProductsT>(value));
239 return *this;
240 }
242
244
257 inline bool GetVisibleToAllUsers() const { return m_visibleToAllUsers; }
258 inline bool VisibleToAllUsersHasBeenSet() const { return m_visibleToAllUsersHasBeenSet; }
259 inline void SetVisibleToAllUsers(bool value) {
260 m_visibleToAllUsersHasBeenSet = true;
261 m_visibleToAllUsers = value;
262 }
265 return *this;
266 }
268
270
274 inline const Aws::String& GetJobFlowRole() const { return m_jobFlowRole; }
275 inline bool JobFlowRoleHasBeenSet() const { return m_jobFlowRoleHasBeenSet; }
276 template <typename JobFlowRoleT = Aws::String>
277 void SetJobFlowRole(JobFlowRoleT&& value) {
278 m_jobFlowRoleHasBeenSet = true;
279 m_jobFlowRole = std::forward<JobFlowRoleT>(value);
280 }
281 template <typename JobFlowRoleT = Aws::String>
282 JobFlowDetail& WithJobFlowRole(JobFlowRoleT&& value) {
283 SetJobFlowRole(std::forward<JobFlowRoleT>(value));
284 return *this;
285 }
287
289
293 inline const Aws::String& GetServiceRole() const { return m_serviceRole; }
294 inline bool ServiceRoleHasBeenSet() const { return m_serviceRoleHasBeenSet; }
295 template <typename ServiceRoleT = Aws::String>
296 void SetServiceRole(ServiceRoleT&& value) {
297 m_serviceRoleHasBeenSet = true;
298 m_serviceRole = std::forward<ServiceRoleT>(value);
299 }
300 template <typename ServiceRoleT = Aws::String>
301 JobFlowDetail& WithServiceRole(ServiceRoleT&& value) {
302 SetServiceRole(std::forward<ServiceRoleT>(value));
303 return *this;
304 }
306
308
314 inline const Aws::String& GetAutoScalingRole() const { return m_autoScalingRole; }
315 inline bool AutoScalingRoleHasBeenSet() const { return m_autoScalingRoleHasBeenSet; }
316 template <typename AutoScalingRoleT = Aws::String>
317 void SetAutoScalingRole(AutoScalingRoleT&& value) {
318 m_autoScalingRoleHasBeenSet = true;
319 m_autoScalingRole = std::forward<AutoScalingRoleT>(value);
320 }
321 template <typename AutoScalingRoleT = Aws::String>
322 JobFlowDetail& WithAutoScalingRole(AutoScalingRoleT&& value) {
323 SetAutoScalingRole(std::forward<AutoScalingRoleT>(value));
324 return *this;
325 }
327
329
344 inline ScaleDownBehavior GetScaleDownBehavior() const { return m_scaleDownBehavior; }
345 inline bool ScaleDownBehaviorHasBeenSet() const { return m_scaleDownBehaviorHasBeenSet; }
347 m_scaleDownBehaviorHasBeenSet = true;
348 m_scaleDownBehavior = value;
349 }
352 return *this;
353 }
355 private:
356 Aws::String m_jobFlowId;
357
358 Aws::String m_name;
359
360 Aws::String m_logUri;
361
362 Aws::String m_logEncryptionKmsKeyId;
363
364 Aws::String m_amiVersion;
365
366 JobFlowExecutionStatusDetail m_executionStatusDetail;
367
368 JobFlowInstancesDetail m_instances;
369
371
372 Aws::Vector<BootstrapActionDetail> m_bootstrapActions;
373
374 Aws::Vector<Aws::String> m_supportedProducts;
375
376 bool m_visibleToAllUsers{false};
377
378 Aws::String m_jobFlowRole;
379
380 Aws::String m_serviceRole;
381
382 Aws::String m_autoScalingRole;
383
385 bool m_jobFlowIdHasBeenSet = false;
386 bool m_nameHasBeenSet = false;
387 bool m_logUriHasBeenSet = false;
388 bool m_logEncryptionKmsKeyIdHasBeenSet = false;
389 bool m_amiVersionHasBeenSet = false;
390 bool m_executionStatusDetailHasBeenSet = false;
391 bool m_instancesHasBeenSet = false;
392 bool m_stepsHasBeenSet = false;
393 bool m_bootstrapActionsHasBeenSet = false;
394 bool m_supportedProductsHasBeenSet = false;
395 bool m_visibleToAllUsersHasBeenSet = false;
396 bool m_jobFlowRoleHasBeenSet = false;
397 bool m_serviceRoleHasBeenSet = false;
398 bool m_autoScalingRoleHasBeenSet = false;
399 bool m_scaleDownBehaviorHasBeenSet = false;
400};
401
402} // namespace Model
403} // namespace EMR
404} // namespace Aws
void SetInstances(InstancesT &&value)
JobFlowDetail & WithServiceRole(ServiceRoleT &&value)
void SetSupportedProducts(SupportedProductsT &&value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
JobFlowDetail & WithLogEncryptionKmsKeyId(LogEncryptionKmsKeyIdT &&value)
void SetScaleDownBehavior(ScaleDownBehavior value)
bool LogEncryptionKmsKeyIdHasBeenSet() const
JobFlowDetail & WithAutoScalingRole(AutoScalingRoleT &&value)
void SetExecutionStatusDetail(ExecutionStatusDetailT &&value)
const JobFlowInstancesDetail & GetInstances() const
void SetServiceRole(ServiceRoleT &&value)
JobFlowDetail & WithExecutionStatusDetail(ExecutionStatusDetailT &&value)
void SetName(NameT &&value)
JobFlowDetail & WithBootstrapActions(BootstrapActionsT &&value)
JobFlowDetail & AddBootstrapActions(BootstrapActionsT &&value)
void SetLogUri(LogUriT &&value)
void SetJobFlowId(JobFlowIdT &&value)
void SetLogEncryptionKmsKeyId(LogEncryptionKmsKeyIdT &&value)
const Aws::String & GetName() const
const Aws::Vector< BootstrapActionDetail > & GetBootstrapActions() const
JobFlowDetail & WithScaleDownBehavior(ScaleDownBehavior value)
JobFlowDetail & WithSteps(StepsT &&value)
const Aws::String & GetLogUri() const
JobFlowDetail & AddSteps(StepsT &&value)
JobFlowDetail & WithSupportedProducts(SupportedProductsT &&value)
AWS_EMR_API JobFlowDetail()=default
const Aws::String & GetJobFlowId() const
void SetVisibleToAllUsers(bool value)
JobFlowDetail & WithLogUri(LogUriT &&value)
JobFlowDetail & WithJobFlowRole(JobFlowRoleT &&value)
void SetAutoScalingRole(AutoScalingRoleT &&value)
const JobFlowExecutionStatusDetail & GetExecutionStatusDetail() const
const Aws::Vector< StepDetail > & GetSteps() const
JobFlowDetail & WithJobFlowId(JobFlowIdT &&value)
AWS_EMR_API JobFlowDetail(Aws::Utils::Json::JsonView jsonValue)
void SetJobFlowRole(JobFlowRoleT &&value)
const Aws::String & GetJobFlowRole() const
JobFlowDetail & WithInstances(InstancesT &&value)
AWS_EMR_API JobFlowDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
ScaleDownBehavior GetScaleDownBehavior() const
JobFlowDetail & WithAmiVersion(AmiVersionT &&value)
JobFlowDetail & WithName(NameT &&value)
const Aws::String & GetAutoScalingRole() const
void SetAmiVersion(AmiVersionT &&value)
const Aws::String & GetServiceRole() const
const Aws::Vector< Aws::String > & GetSupportedProducts() const
const Aws::String & GetLogEncryptionKmsKeyId() const
bool ExecutionStatusDetailHasBeenSet() const
const Aws::String & GetAmiVersion() const
void SetSteps(StepsT &&value)
JobFlowDetail & WithVisibleToAllUsers(bool value)
JobFlowDetail & AddSupportedProducts(SupportedProductsT &&value)
void SetBootstrapActions(BootstrapActionsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue