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>
50 template<
typename Ec2KeyNameT = Aws::String>
51 void SetEc2KeyName(Ec2KeyNameT&& value) { m_ec2KeyNameHasBeenSet =
true; m_ec2KeyName = std::forward<Ec2KeyNameT>(value); }
52 template<
typename Ec2KeyNameT = Aws::String>
64 template<
typename Ec2SubnetIdT = Aws::String>
65 void SetEc2SubnetId(Ec2SubnetIdT&& value) { m_ec2SubnetIdHasBeenSet =
true; m_ec2SubnetId = std::forward<Ec2SubnetIdT>(value); }
66 template<
typename Ec2SubnetIdT = Aws::String>
86 template<
typename RequestedEc2SubnetIdsT = Aws::Vector<Aws::String>>
87 void SetRequestedEc2SubnetIds(RequestedEc2SubnetIdsT&& value) { m_requestedEc2SubnetIdsHasBeenSet =
true; m_requestedEc2SubnetIds = std::forward<RequestedEc2SubnetIdsT>(value); }
88 template<
typename RequestedEc2SubnetIdsT = Aws::Vector<Aws::String>>
90 template<
typename RequestedEc2SubnetIdsT = Aws::String>
100 template<
typename Ec2AvailabilityZoneT = Aws::String>
101 void SetEc2AvailabilityZone(Ec2AvailabilityZoneT&& value) { m_ec2AvailabilityZoneHasBeenSet =
true; m_ec2AvailabilityZone = std::forward<Ec2AvailabilityZoneT>(value); }
102 template<
typename Ec2AvailabilityZoneT = Aws::String>
120 template<
typename RequestedEc2AvailabilityZonesT = Aws::Vector<Aws::String>>
121 void SetRequestedEc2AvailabilityZones(RequestedEc2AvailabilityZonesT&& value) { m_requestedEc2AvailabilityZonesHasBeenSet =
true; m_requestedEc2AvailabilityZones = std::forward<RequestedEc2AvailabilityZonesT>(value); }
122 template<
typename RequestedEc2AvailabilityZonesT = Aws::Vector<Aws::String>>
124 template<
typename RequestedEc2AvailabilityZonesT = Aws::String>
135 template<
typename IamInstanceProfileT = Aws::String>
136 void SetIamInstanceProfile(IamInstanceProfileT&& value) { m_iamInstanceProfileHasBeenSet =
true; m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value); }
137 template<
typename IamInstanceProfileT = Aws::String>
147 template<
typename EmrManagedMasterSecurityGroupT = Aws::String>
148 void SetEmrManagedMasterSecurityGroup(EmrManagedMasterSecurityGroupT&& value) { m_emrManagedMasterSecurityGroupHasBeenSet =
true; m_emrManagedMasterSecurityGroup = std::forward<EmrManagedMasterSecurityGroupT>(value); }
149 template<
typename EmrManagedMasterSecurityGroupT = Aws::String>
160 template<
typename EmrManagedSlaveSecurityGroupT = Aws::String>
161 void SetEmrManagedSlaveSecurityGroup(EmrManagedSlaveSecurityGroupT&& value) { m_emrManagedSlaveSecurityGroupHasBeenSet =
true; m_emrManagedSlaveSecurityGroup = std::forward<EmrManagedSlaveSecurityGroupT>(value); }
162 template<
typename EmrManagedSlaveSecurityGroupT = Aws::String>
173 template<
typename ServiceAccessSecurityGroupT = Aws::String>
174 void SetServiceAccessSecurityGroup(ServiceAccessSecurityGroupT&& value) { m_serviceAccessSecurityGroupHasBeenSet =
true; m_serviceAccessSecurityGroup = std::forward<ServiceAccessSecurityGroupT>(value); }
175 template<
typename ServiceAccessSecurityGroupT = Aws::String>
185 template<
typename AdditionalMasterSecurityGroupsT = Aws::Vector<Aws::String>>
186 void SetAdditionalMasterSecurityGroups(AdditionalMasterSecurityGroupsT&& value) { m_additionalMasterSecurityGroupsHasBeenSet =
true; m_additionalMasterSecurityGroups = std::forward<AdditionalMasterSecurityGroupsT>(value); }
187 template<
typename AdditionalMasterSecurityGroupsT = Aws::Vector<Aws::String>>
189 template<
typename AdditionalMasterSecurityGroupsT = Aws::String>
200 template<
typename AdditionalSlaveSecurityGroupsT = Aws::Vector<Aws::String>>
201 void SetAdditionalSlaveSecurityGroups(AdditionalSlaveSecurityGroupsT&& value) { m_additionalSlaveSecurityGroupsHasBeenSet =
true; m_additionalSlaveSecurityGroups = std::forward<AdditionalSlaveSecurityGroupsT>(value); }
202 template<
typename AdditionalSlaveSecurityGroupsT = Aws::Vector<Aws::String>>
204 template<
typename AdditionalSlaveSecurityGroupsT = Aws::String>
210 bool m_ec2KeyNameHasBeenSet =
false;
213 bool m_ec2SubnetIdHasBeenSet =
false;
216 bool m_requestedEc2SubnetIdsHasBeenSet =
false;
219 bool m_ec2AvailabilityZoneHasBeenSet =
false;
222 bool m_requestedEc2AvailabilityZonesHasBeenSet =
false;
225 bool m_iamInstanceProfileHasBeenSet =
false;
228 bool m_emrManagedMasterSecurityGroupHasBeenSet =
false;
231 bool m_emrManagedSlaveSecurityGroupHasBeenSet =
false;
234 bool m_serviceAccessSecurityGroupHasBeenSet =
false;
237 bool m_additionalMasterSecurityGroupsHasBeenSet =
false;
240 bool m_additionalSlaveSecurityGroupsHasBeenSet =
false;
const Aws::String & GetIamInstanceProfile() const
AWS_EMR_API Ec2InstanceAttributes()=default
Ec2InstanceAttributes & WithAdditionalSlaveSecurityGroups(AdditionalSlaveSecurityGroupsT &&value)
bool RequestedEc2SubnetIdsHasBeenSet() const
bool AdditionalSlaveSecurityGroupsHasBeenSet() const
void SetServiceAccessSecurityGroup(ServiceAccessSecurityGroupT &&value)
const Aws::String & GetEc2KeyName() const
bool ServiceAccessSecurityGroupHasBeenSet() const
const Aws::Vector< Aws::String > & GetRequestedEc2SubnetIds() const
const Aws::Vector< Aws::String > & GetAdditionalMasterSecurityGroups() const
const Aws::Vector< Aws::String > & GetAdditionalSlaveSecurityGroups() const
const Aws::Vector< Aws::String > & GetRequestedEc2AvailabilityZones() const
void SetIamInstanceProfile(IamInstanceProfileT &&value)
bool EmrManagedSlaveSecurityGroupHasBeenSet() const
const Aws::String & GetEc2SubnetId() const
bool Ec2SubnetIdHasBeenSet() const
AWS_EMR_API Ec2InstanceAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetServiceAccessSecurityGroup() const
bool IamInstanceProfileHasBeenSet() const
void SetEc2AvailabilityZone(Ec2AvailabilityZoneT &&value)
void SetEc2KeyName(Ec2KeyNameT &&value)
Ec2InstanceAttributes & WithRequestedEc2SubnetIds(RequestedEc2SubnetIdsT &&value)
Ec2InstanceAttributes & AddAdditionalSlaveSecurityGroups(AdditionalSlaveSecurityGroupsT &&value)
Ec2InstanceAttributes & WithEmrManagedSlaveSecurityGroup(EmrManagedSlaveSecurityGroupT &&value)
Ec2InstanceAttributes & WithAdditionalMasterSecurityGroups(AdditionalMasterSecurityGroupsT &&value)
bool AdditionalMasterSecurityGroupsHasBeenSet() const
Ec2InstanceAttributes & WithRequestedEc2AvailabilityZones(RequestedEc2AvailabilityZonesT &&value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
bool EmrManagedMasterSecurityGroupHasBeenSet() const
void SetRequestedEc2AvailabilityZones(RequestedEc2AvailabilityZonesT &&value)
void SetAdditionalMasterSecurityGroups(AdditionalMasterSecurityGroupsT &&value)
Ec2InstanceAttributes & WithEc2SubnetId(Ec2SubnetIdT &&value)
Ec2InstanceAttributes & WithEc2AvailabilityZone(Ec2AvailabilityZoneT &&value)
void SetEmrManagedMasterSecurityGroup(EmrManagedMasterSecurityGroupT &&value)
const Aws::String & GetEc2AvailabilityZone() const
AWS_EMR_API Ec2InstanceAttributes(Aws::Utils::Json::JsonView jsonValue)
void SetEc2SubnetId(Ec2SubnetIdT &&value)
Ec2InstanceAttributes & AddRequestedEc2SubnetIds(RequestedEc2SubnetIdsT &&value)
Ec2InstanceAttributes & WithEmrManagedMasterSecurityGroup(EmrManagedMasterSecurityGroupT &&value)
bool Ec2KeyNameHasBeenSet() const
const Aws::String & GetEmrManagedSlaveSecurityGroup() const
void SetEmrManagedSlaveSecurityGroup(EmrManagedSlaveSecurityGroupT &&value)
const Aws::String & GetEmrManagedMasterSecurityGroup() const
void SetRequestedEc2SubnetIds(RequestedEc2SubnetIdsT &&value)
Ec2InstanceAttributes & AddRequestedEc2AvailabilityZones(RequestedEc2AvailabilityZonesT &&value)
Ec2InstanceAttributes & WithEc2KeyName(Ec2KeyNameT &&value)
void SetAdditionalSlaveSecurityGroups(AdditionalSlaveSecurityGroupsT &&value)
bool RequestedEc2AvailabilityZonesHasBeenSet() const
Ec2InstanceAttributes & AddAdditionalMasterSecurityGroups(AdditionalMasterSecurityGroupsT &&value)
Ec2InstanceAttributes & WithIamInstanceProfile(IamInstanceProfileT &&value)
bool Ec2AvailabilityZoneHasBeenSet() const
Ec2InstanceAttributes & WithServiceAccessSecurityGroup(ServiceAccessSecurityGroupT &&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