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>
44 template <
typename Ec2KeyNameT = Aws::String>
46 m_ec2KeyNameHasBeenSet =
true;
47 m_ec2KeyName = std::forward<Ec2KeyNameT>(value);
49 template <
typename Ec2KeyNameT = Aws::String>
64 template <
typename Ec2SubnetIdT = Aws::String>
66 m_ec2SubnetIdHasBeenSet =
true;
67 m_ec2SubnetId = std::forward<Ec2SubnetIdT>(value);
69 template <
typename Ec2SubnetIdT = Aws::String>
92 template <
typename RequestedEc2SubnetIdsT = Aws::Vector<Aws::String>>
94 m_requestedEc2SubnetIdsHasBeenSet =
true;
95 m_requestedEc2SubnetIds = std::forward<RequestedEc2SubnetIdsT>(value);
97 template <
typename RequestedEc2SubnetIdsT = Aws::Vector<Aws::String>>
102 template <
typename RequestedEc2SubnetIdsT = Aws::String>
104 m_requestedEc2SubnetIdsHasBeenSet =
true;
105 m_requestedEc2SubnetIds.emplace_back(std::forward<RequestedEc2SubnetIdsT>(value));
116 template <
typename Ec2AvailabilityZoneT = Aws::String>
118 m_ec2AvailabilityZoneHasBeenSet =
true;
119 m_ec2AvailabilityZone = std::forward<Ec2AvailabilityZoneT>(value);
121 template <
typename Ec2AvailabilityZoneT = Aws::String>
142 template <
typename RequestedEc2AvailabilityZonesT = Aws::Vector<Aws::String>>
144 m_requestedEc2AvailabilityZonesHasBeenSet =
true;
145 m_requestedEc2AvailabilityZones = std::forward<RequestedEc2AvailabilityZonesT>(value);
147 template <
typename RequestedEc2AvailabilityZonesT = Aws::Vector<Aws::String>>
152 template <
typename RequestedEc2AvailabilityZonesT = Aws::String>
154 m_requestedEc2AvailabilityZonesHasBeenSet =
true;
155 m_requestedEc2AvailabilityZones.emplace_back(std::forward<RequestedEc2AvailabilityZonesT>(value));
167 template <
typename IamInstanceProfileT = Aws::String>
169 m_iamInstanceProfileHasBeenSet =
true;
170 m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value);
172 template <
typename IamInstanceProfileT = Aws::String>
185 template <
typename EmrManagedMasterSecurityGroupT = Aws::String>
187 m_emrManagedMasterSecurityGroupHasBeenSet =
true;
188 m_emrManagedMasterSecurityGroup = std::forward<EmrManagedMasterSecurityGroupT>(value);
190 template <
typename EmrManagedMasterSecurityGroupT = Aws::String>
204 template <
typename EmrManagedSlaveSecurityGroupT = Aws::String>
206 m_emrManagedSlaveSecurityGroupHasBeenSet =
true;
207 m_emrManagedSlaveSecurityGroup = std::forward<EmrManagedSlaveSecurityGroupT>(value);
209 template <
typename EmrManagedSlaveSecurityGroupT = Aws::String>
223 template <
typename ServiceAccessSecurityGroupT = Aws::String>
225 m_serviceAccessSecurityGroupHasBeenSet =
true;
226 m_serviceAccessSecurityGroup = std::forward<ServiceAccessSecurityGroupT>(value);
228 template <
typename ServiceAccessSecurityGroupT = Aws::String>
241 template <
typename AdditionalMasterSecurityGroupsT = Aws::Vector<Aws::String>>
243 m_additionalMasterSecurityGroupsHasBeenSet =
true;
244 m_additionalMasterSecurityGroups = std::forward<AdditionalMasterSecurityGroupsT>(value);
246 template <
typename AdditionalMasterSecurityGroupsT = Aws::Vector<Aws::String>>
251 template <
typename AdditionalMasterSecurityGroupsT = Aws::String>
253 m_additionalMasterSecurityGroupsHasBeenSet =
true;
254 m_additionalMasterSecurityGroups.emplace_back(std::forward<AdditionalMasterSecurityGroupsT>(value));
266 template <
typename AdditionalSlaveSecurityGroupsT = Aws::Vector<Aws::String>>
268 m_additionalSlaveSecurityGroupsHasBeenSet =
true;
269 m_additionalSlaveSecurityGroups = std::forward<AdditionalSlaveSecurityGroupsT>(value);
271 template <
typename AdditionalSlaveSecurityGroupsT = Aws::Vector<Aws::String>>
276 template <
typename AdditionalSlaveSecurityGroupsT = Aws::String>
278 m_additionalSlaveSecurityGroupsHasBeenSet =
true;
279 m_additionalSlaveSecurityGroups.emplace_back(std::forward<AdditionalSlaveSecurityGroupsT>(value));
305 bool m_ec2KeyNameHasBeenSet =
false;
306 bool m_ec2SubnetIdHasBeenSet =
false;
307 bool m_requestedEc2SubnetIdsHasBeenSet =
false;
308 bool m_ec2AvailabilityZoneHasBeenSet =
false;
309 bool m_requestedEc2AvailabilityZonesHasBeenSet =
false;
310 bool m_iamInstanceProfileHasBeenSet =
false;
311 bool m_emrManagedMasterSecurityGroupHasBeenSet =
false;
312 bool m_emrManagedSlaveSecurityGroupHasBeenSet =
false;
313 bool m_serviceAccessSecurityGroupHasBeenSet =
false;
314 bool m_additionalMasterSecurityGroupsHasBeenSet =
false;
315 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