7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/elasticmapreduce/model/PlacementType.h>
11#include <aws/elasticmapreduce/model/InstanceGroupConfig.h>
12#include <aws/elasticmapreduce/model/InstanceFleetConfig.h>
57 inline void SetMasterInstanceType(
const char* value) { m_masterInstanceTypeHasBeenSet =
true; m_masterInstanceType.assign(value); }
71 inline void SetSlaveInstanceType(
const char* value) { m_slaveInstanceTypeHasBeenSet =
true; m_slaveInstanceType.assign(value); }
83 inline void SetInstanceCount(
int value) { m_instanceCountHasBeenSet =
true; m_instanceCount = value; }
127 inline void SetEc2KeyName(
const char* value) { m_ec2KeyNameHasBeenSet =
true; m_ec2KeyName.assign(value); }
195 inline void SetHadoopVersion(
const char* value) { m_hadoopVersionHasBeenSet =
true; m_hadoopVersion.assign(value); }
213 inline void SetEc2SubnetId(
const char* value) { m_ec2SubnetIdHasBeenSet =
true; m_ec2SubnetId.assign(value); }
318 bool m_masterInstanceTypeHasBeenSet =
false;
321 bool m_slaveInstanceTypeHasBeenSet =
false;
324 bool m_instanceCountHasBeenSet =
false;
327 bool m_instanceGroupsHasBeenSet =
false;
330 bool m_instanceFleetsHasBeenSet =
false;
333 bool m_ec2KeyNameHasBeenSet =
false;
336 bool m_placementHasBeenSet =
false;
338 bool m_keepJobFlowAliveWhenNoSteps;
339 bool m_keepJobFlowAliveWhenNoStepsHasBeenSet =
false;
341 bool m_terminationProtected;
342 bool m_terminationProtectedHasBeenSet =
false;
344 bool m_unhealthyNodeReplacement;
345 bool m_unhealthyNodeReplacementHasBeenSet =
false;
348 bool m_hadoopVersionHasBeenSet =
false;
351 bool m_ec2SubnetIdHasBeenSet =
false;
354 bool m_ec2SubnetIdsHasBeenSet =
false;
357 bool m_emrManagedMasterSecurityGroupHasBeenSet =
false;
360 bool m_emrManagedSlaveSecurityGroupHasBeenSet =
false;
363 bool m_serviceAccessSecurityGroupHasBeenSet =
false;
366 bool m_additionalMasterSecurityGroupsHasBeenSet =
false;
369 bool m_additionalSlaveSecurityGroupsHasBeenSet =
false;
bool GetUnhealthyNodeReplacement() const
void SetAdditionalSlaveSecurityGroups(const Aws::Vector< Aws::String > &value)
JobFlowInstancesConfig & WithKeepJobFlowAliveWhenNoSteps(bool value)
const Aws::Vector< Aws::String > & GetEc2SubnetIds() const
const Aws::String & GetEc2SubnetId() const
void SetHadoopVersion(const char *value)
const Aws::String & GetHadoopVersion() const
JobFlowInstancesConfig & WithTerminationProtected(bool value)
void SetAdditionalMasterSecurityGroups(Aws::Vector< Aws::String > &&value)
int GetInstanceCount() const
JobFlowInstancesConfig & AddAdditionalSlaveSecurityGroups(const Aws::String &value)
JobFlowInstancesConfig & WithEmrManagedMasterSecurityGroup(const Aws::String &value)
void SetInstanceFleets(const Aws::Vector< InstanceFleetConfig > &value)
JobFlowInstancesConfig & WithAdditionalSlaveSecurityGroups(Aws::Vector< Aws::String > &&value)
void SetEc2SubnetIds(const Aws::Vector< Aws::String > &value)
JobFlowInstancesConfig & WithEc2KeyName(Aws::String &&value)
JobFlowInstancesConfig & WithUnhealthyNodeReplacement(bool value)
JobFlowInstancesConfig & WithEmrManagedSlaveSecurityGroup(const Aws::String &value)
void SetAdditionalSlaveSecurityGroups(Aws::Vector< Aws::String > &&value)
bool InstanceGroupsHasBeenSet() const
JobFlowInstancesConfig & WithPlacement(const PlacementType &value)
void SetInstanceGroups(Aws::Vector< InstanceGroupConfig > &&value)
const Aws::Vector< InstanceGroupConfig > & GetInstanceGroups() const
JobFlowInstancesConfig & WithEmrManagedMasterSecurityGroup(const char *value)
JobFlowInstancesConfig & WithServiceAccessSecurityGroup(const Aws::String &value)
JobFlowInstancesConfig & WithEmrManagedMasterSecurityGroup(Aws::String &&value)
JobFlowInstancesConfig & WithSlaveInstanceType(const char *value)
const Aws::Vector< InstanceFleetConfig > & GetInstanceFleets() const
void SetSlaveInstanceType(Aws::String &&value)
JobFlowInstancesConfig & WithMasterInstanceType(const Aws::String &value)
bool InstanceCountHasBeenSet() const
bool EmrManagedMasterSecurityGroupHasBeenSet() const
JobFlowInstancesConfig & WithEc2SubnetId(const char *value)
JobFlowInstancesConfig & AddInstanceGroups(const InstanceGroupConfig &value)
void SetEmrManagedMasterSecurityGroup(Aws::String &&value)
const Aws::String & GetSlaveInstanceType() const
JobFlowInstancesConfig & WithSlaveInstanceType(Aws::String &&value)
const Aws::String & GetServiceAccessSecurityGroup() const
JobFlowInstancesConfig & AddEc2SubnetIds(Aws::String &&value)
JobFlowInstancesConfig & AddAdditionalSlaveSecurityGroups(Aws::String &&value)
JobFlowInstancesConfig & WithInstanceFleets(const Aws::Vector< InstanceFleetConfig > &value)
JobFlowInstancesConfig & WithEc2SubnetIds(Aws::Vector< Aws::String > &&value)
void SetPlacement(const PlacementType &value)
void SetAdditionalMasterSecurityGroups(const Aws::Vector< Aws::String > &value)
JobFlowInstancesConfig & WithEc2KeyName(const char *value)
bool AdditionalMasterSecurityGroupsHasBeenSet() const
JobFlowInstancesConfig & WithServiceAccessSecurityGroup(Aws::String &&value)
JobFlowInstancesConfig & WithMasterInstanceType(const char *value)
void SetEmrManagedMasterSecurityGroup(const Aws::String &value)
bool UnhealthyNodeReplacementHasBeenSet() const
JobFlowInstancesConfig & WithEmrManagedSlaveSecurityGroup(const char *value)
void SetServiceAccessSecurityGroup(const Aws::String &value)
void SetInstanceFleets(Aws::Vector< InstanceFleetConfig > &&value)
bool KeepJobFlowAliveWhenNoStepsHasBeenSet() const
JobFlowInstancesConfig & WithMasterInstanceType(Aws::String &&value)
JobFlowInstancesConfig & WithSlaveInstanceType(const Aws::String &value)
JobFlowInstancesConfig & WithInstanceFleets(Aws::Vector< InstanceFleetConfig > &&value)
void SetTerminationProtected(bool value)
bool InstanceFleetsHasBeenSet() const
bool Ec2SubnetIdHasBeenSet() const
void SetEmrManagedSlaveSecurityGroup(Aws::String &&value)
void SetMasterInstanceType(Aws::String &&value)
void SetEc2SubnetId(const char *value)
bool TerminationProtectedHasBeenSet() const
JobFlowInstancesConfig & WithHadoopVersion(const Aws::String &value)
bool EmrManagedSlaveSecurityGroupHasBeenSet() const
void SetSlaveInstanceType(const char *value)
JobFlowInstancesConfig & WithInstanceGroups(const Aws::Vector< InstanceGroupConfig > &value)
JobFlowInstancesConfig & AddEc2SubnetIds(const char *value)
JobFlowInstancesConfig & WithHadoopVersion(const char *value)
void SetInstanceCount(int value)
const Aws::Vector< Aws::String > & GetAdditionalMasterSecurityGroups() const
const Aws::String & GetEc2KeyName() const
bool HadoopVersionHasBeenSet() const
void SetEc2SubnetIds(Aws::Vector< Aws::String > &&value)
JobFlowInstancesConfig & AddAdditionalMasterSecurityGroups(const Aws::String &value)
void SetServiceAccessSecurityGroup(Aws::String &&value)
JobFlowInstancesConfig & WithPlacement(PlacementType &&value)
void SetServiceAccessSecurityGroup(const char *value)
bool Ec2KeyNameHasBeenSet() const
JobFlowInstancesConfig & AddAdditionalMasterSecurityGroups(const char *value)
JobFlowInstancesConfig & WithInstanceGroups(Aws::Vector< InstanceGroupConfig > &&value)
JobFlowInstancesConfig & AddEc2SubnetIds(const Aws::String &value)
JobFlowInstancesConfig & WithEc2SubnetId(Aws::String &&value)
JobFlowInstancesConfig & WithInstanceCount(int value)
bool AdditionalSlaveSecurityGroupsHasBeenSet() const
void SetInstanceGroups(const Aws::Vector< InstanceGroupConfig > &value)
void SetHadoopVersion(Aws::String &&value)
JobFlowInstancesConfig & AddAdditionalMasterSecurityGroups(Aws::String &&value)
const Aws::String & GetEmrManagedSlaveSecurityGroup() const
bool SlaveInstanceTypeHasBeenSet() const
JobFlowInstancesConfig & WithHadoopVersion(Aws::String &&value)
void SetKeepJobFlowAliveWhenNoSteps(bool value)
JobFlowInstancesConfig & WithServiceAccessSecurityGroup(const char *value)
void SetMasterInstanceType(const char *value)
JobFlowInstancesConfig & WithAdditionalSlaveSecurityGroups(const Aws::Vector< Aws::String > &value)
void SetEc2KeyName(const Aws::String &value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
void SetEc2KeyName(Aws::String &&value)
void SetEmrManagedSlaveSecurityGroup(const char *value)
JobFlowInstancesConfig & WithAdditionalMasterSecurityGroups(Aws::Vector< Aws::String > &&value)
void SetHadoopVersion(const Aws::String &value)
bool PlacementHasBeenSet() const
bool GetKeepJobFlowAliveWhenNoSteps() const
void SetEc2KeyName(const char *value)
void SetEmrManagedMasterSecurityGroup(const char *value)
JobFlowInstancesConfig & WithEc2SubnetId(const Aws::String &value)
JobFlowInstancesConfig & WithAdditionalMasterSecurityGroups(const Aws::Vector< Aws::String > &value)
void SetUnhealthyNodeReplacement(bool value)
AWS_EMR_API JobFlowInstancesConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetMasterInstanceType() const
void SetEmrManagedSlaveSecurityGroup(const Aws::String &value)
void SetSlaveInstanceType(const Aws::String &value)
AWS_EMR_API JobFlowInstancesConfig(Aws::Utils::Json::JsonView jsonValue)
const PlacementType & GetPlacement() const
const Aws::String & GetEmrManagedMasterSecurityGroup() const
void SetPlacement(PlacementType &&value)
void SetEc2SubnetId(const Aws::String &value)
bool MasterInstanceTypeHasBeenSet() const
const Aws::Vector< Aws::String > & GetAdditionalSlaveSecurityGroups() const
JobFlowInstancesConfig & AddAdditionalSlaveSecurityGroups(const char *value)
JobFlowInstancesConfig & AddInstanceGroups(InstanceGroupConfig &&value)
bool GetTerminationProtected() const
JobFlowInstancesConfig & AddInstanceFleets(InstanceFleetConfig &&value)
JobFlowInstancesConfig & WithEc2SubnetIds(const Aws::Vector< Aws::String > &value)
JobFlowInstancesConfig & WithEc2KeyName(const Aws::String &value)
JobFlowInstancesConfig & AddInstanceFleets(const InstanceFleetConfig &value)
bool ServiceAccessSecurityGroupHasBeenSet() const
void SetEc2SubnetId(Aws::String &&value)
JobFlowInstancesConfig & WithEmrManagedSlaveSecurityGroup(Aws::String &&value)
void SetMasterInstanceType(const Aws::String &value)
AWS_EMR_API JobFlowInstancesConfig()
bool Ec2SubnetIdsHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue