7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/elasticmapreduce/model/JobFlowExecutionStatusDetail.h>
10#include <aws/elasticmapreduce/model/JobFlowInstancesDetail.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/elasticmapreduce/model/ScaleDownBehavior.h>
13#include <aws/elasticmapreduce/model/StepDetail.h>
14#include <aws/elasticmapreduce/model/BootstrapActionDetail.h>
52 template<
typename JobFlowIdT = Aws::String>
53 void SetJobFlowId(JobFlowIdT&& value) { m_jobFlowIdHasBeenSet =
true; m_jobFlowId = std::forward<JobFlowIdT>(value); }
54 template<
typename JobFlowIdT = Aws::String>
64 template<
typename NameT = Aws::String>
65 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
66 template<
typename NameT = Aws::String>
76 template<
typename LogUriT = Aws::String>
77 void SetLogUri(LogUriT&& value) { m_logUriHasBeenSet =
true; m_logUri = std::forward<LogUriT>(value); }
78 template<
typename LogUriT = Aws::String>
89 template<
typename LogEncryptionKmsKeyIdT = Aws::String>
90 void SetLogEncryptionKmsKeyId(LogEncryptionKmsKeyIdT&& value) { m_logEncryptionKmsKeyIdHasBeenSet =
true; m_logEncryptionKmsKeyId = std::forward<LogEncryptionKmsKeyIdT>(value); }
91 template<
typename LogEncryptionKmsKeyIdT = Aws::String>
103 template<
typename AmiVersionT = Aws::String>
104 void SetAmiVersion(AmiVersionT&& value) { m_amiVersionHasBeenSet =
true; m_amiVersion = std::forward<AmiVersionT>(value); }
105 template<
typename AmiVersionT = Aws::String>
115 template<
typename ExecutionStatusDetailT = JobFlowExecutionStatusDetail>
116 void SetExecutionStatusDetail(ExecutionStatusDetailT&& value) { m_executionStatusDetailHasBeenSet =
true; m_executionStatusDetail = std::forward<ExecutionStatusDetailT>(value); }
117 template<
typename ExecutionStatusDetailT = JobFlowExecutionStatusDetail>
127 template<
typename InstancesT = JobFlowInstancesDetail>
128 void SetInstances(InstancesT&& value) { m_instancesHasBeenSet =
true; m_instances = std::forward<InstancesT>(value); }
129 template<
typename InstancesT = JobFlowInstancesDetail>
139 template<
typename StepsT = Aws::Vector<StepDetail>>
140 void SetSteps(StepsT&& value) { m_stepsHasBeenSet =
true; m_steps = std::forward<StepsT>(value); }
141 template<
typename StepsT = Aws::Vector<StepDetail>>
143 template<
typename StepsT = StepDetail>
144 JobFlowDetail&
AddSteps(StepsT&& value) { m_stepsHasBeenSet =
true; m_steps.emplace_back(std::forward<StepsT>(value));
return *
this; }
153 template<
typename BootstrapActionsT = Aws::Vector<BootstrapActionDetail>>
154 void SetBootstrapActions(BootstrapActionsT&& value) { m_bootstrapActionsHasBeenSet =
true; m_bootstrapActions = std::forward<BootstrapActionsT>(value); }
155 template<
typename BootstrapActionsT = Aws::Vector<BootstrapActionDetail>>
157 template<
typename BootstrapActionsT = BootstrapActionDetail>
158 JobFlowDetail&
AddBootstrapActions(BootstrapActionsT&& value) { m_bootstrapActionsHasBeenSet =
true; m_bootstrapActions.emplace_back(std::forward<BootstrapActionsT>(value));
return *
this; }
169 template<
typename SupportedProductsT = Aws::Vector<Aws::String>>
170 void SetSupportedProducts(SupportedProductsT&& value) { m_supportedProductsHasBeenSet =
true; m_supportedProducts = std::forward<SupportedProductsT>(value); }
171 template<
typename SupportedProductsT = Aws::Vector<Aws::String>>
173 template<
typename SupportedProductsT = Aws::String>
174 JobFlowDetail&
AddSupportedProducts(SupportedProductsT&& value) { m_supportedProductsHasBeenSet =
true; m_supportedProducts.emplace_back(std::forward<SupportedProductsT>(value));
return *
this; }
193 inline void SetVisibleToAllUsers(
bool value) { m_visibleToAllUsersHasBeenSet =
true; m_visibleToAllUsers = value; }
204 template<
typename JobFlowRoleT = Aws::String>
205 void SetJobFlowRole(JobFlowRoleT&& value) { m_jobFlowRoleHasBeenSet =
true; m_jobFlowRole = std::forward<JobFlowRoleT>(value); }
206 template<
typename JobFlowRoleT = Aws::String>
217 template<
typename ServiceRoleT = Aws::String>
218 void SetServiceRole(ServiceRoleT&& value) { m_serviceRoleHasBeenSet =
true; m_serviceRole = std::forward<ServiceRoleT>(value); }
219 template<
typename ServiceRoleT = Aws::String>
232 template<
typename AutoScalingRoleT = Aws::String>
233 void SetAutoScalingRole(AutoScalingRoleT&& value) { m_autoScalingRoleHasBeenSet =
true; m_autoScalingRole = std::forward<AutoScalingRoleT>(value); }
234 template<
typename AutoScalingRoleT = Aws::String>
262 bool m_jobFlowIdHasBeenSet =
false;
265 bool m_nameHasBeenSet =
false;
268 bool m_logUriHasBeenSet =
false;
271 bool m_logEncryptionKmsKeyIdHasBeenSet =
false;
274 bool m_amiVersionHasBeenSet =
false;
277 bool m_executionStatusDetailHasBeenSet =
false;
280 bool m_instancesHasBeenSet =
false;
283 bool m_stepsHasBeenSet =
false;
286 bool m_bootstrapActionsHasBeenSet =
false;
289 bool m_supportedProductsHasBeenSet =
false;
291 bool m_visibleToAllUsers{
false};
292 bool m_visibleToAllUsersHasBeenSet =
false;
295 bool m_jobFlowRoleHasBeenSet =
false;
298 bool m_serviceRoleHasBeenSet =
false;
301 bool m_autoScalingRoleHasBeenSet =
false;
304 bool m_scaleDownBehaviorHasBeenSet =
false;
bool VisibleToAllUsersHasBeenSet() const
void SetInstances(InstancesT &&value)
JobFlowDetail & WithServiceRole(ServiceRoleT &&value)
bool SupportedProductsHasBeenSet() const
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)
bool NameHasBeenSet() const
void SetLogEncryptionKmsKeyId(LogEncryptionKmsKeyIdT &&value)
const Aws::String & GetName() const
const Aws::Vector< BootstrapActionDetail > & GetBootstrapActions() const
bool JobFlowRoleHasBeenSet() const
JobFlowDetail & WithScaleDownBehavior(ScaleDownBehavior value)
JobFlowDetail & WithSteps(StepsT &&value)
const Aws::String & GetLogUri() const
JobFlowDetail & AddSteps(StepsT &&value)
bool BootstrapActionsHasBeenSet() const
bool ScaleDownBehaviorHasBeenSet() const
JobFlowDetail & WithSupportedProducts(SupportedProductsT &&value)
bool GetVisibleToAllUsers() const
bool JobFlowIdHasBeenSet() const
bool InstancesHasBeenSet() const
AWS_EMR_API JobFlowDetail()=default
const Aws::String & GetJobFlowId() const
void SetVisibleToAllUsers(bool value)
JobFlowDetail & WithLogUri(LogUriT &&value)
JobFlowDetail & WithJobFlowRole(JobFlowRoleT &&value)
bool AmiVersionHasBeenSet() const
void SetAutoScalingRole(AutoScalingRoleT &&value)
const JobFlowExecutionStatusDetail & GetExecutionStatusDetail() const
const Aws::Vector< StepDetail > & GetSteps() const
bool ServiceRoleHasBeenSet() const
JobFlowDetail & WithJobFlowId(JobFlowIdT &&value)
AWS_EMR_API JobFlowDetail(Aws::Utils::Json::JsonView jsonValue)
bool AutoScalingRoleHasBeenSet() const
void SetJobFlowRole(JobFlowRoleT &&value)
const Aws::String & GetJobFlowRole() const
JobFlowDetail & WithInstances(InstancesT &&value)
AWS_EMR_API JobFlowDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
bool StepsHasBeenSet() const
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)
bool LogUriHasBeenSet() const
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