AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
Ec2InstanceAttributes.h
1
6#pragma once
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 <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace EMR
23{
24namespace Model
25{
26
35 {
36 public:
37 AWS_EMR_API Ec2InstanceAttributes() = default;
41
42
44
48 inline const Aws::String& GetEc2KeyName() const { return m_ec2KeyName; }
49 inline bool Ec2KeyNameHasBeenSet() const { return m_ec2KeyNameHasBeenSet; }
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>
53 Ec2InstanceAttributes& WithEc2KeyName(Ec2KeyNameT&& value) { SetEc2KeyName(std::forward<Ec2KeyNameT>(value)); return *this;}
55
57
62 inline const Aws::String& GetEc2SubnetId() const { return m_ec2SubnetId; }
63 inline bool Ec2SubnetIdHasBeenSet() const { return m_ec2SubnetIdHasBeenSet; }
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>
67 Ec2InstanceAttributes& WithEc2SubnetId(Ec2SubnetIdT&& value) { SetEc2SubnetId(std::forward<Ec2SubnetIdT>(value)); return *this;}
69
71
84 inline const Aws::Vector<Aws::String>& GetRequestedEc2SubnetIds() const { return m_requestedEc2SubnetIds; }
85 inline bool RequestedEc2SubnetIdsHasBeenSet() const { return m_requestedEc2SubnetIdsHasBeenSet; }
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>>
89 Ec2InstanceAttributes& WithRequestedEc2SubnetIds(RequestedEc2SubnetIdsT&& value) { SetRequestedEc2SubnetIds(std::forward<RequestedEc2SubnetIdsT>(value)); return *this;}
90 template<typename RequestedEc2SubnetIdsT = Aws::String>
91 Ec2InstanceAttributes& AddRequestedEc2SubnetIds(RequestedEc2SubnetIdsT&& value) { m_requestedEc2SubnetIdsHasBeenSet = true; m_requestedEc2SubnetIds.emplace_back(std::forward<RequestedEc2SubnetIdsT>(value)); return *this; }
93
95
98 inline const Aws::String& GetEc2AvailabilityZone() const { return m_ec2AvailabilityZone; }
99 inline bool Ec2AvailabilityZoneHasBeenSet() const { return m_ec2AvailabilityZoneHasBeenSet; }
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>
103 Ec2InstanceAttributes& WithEc2AvailabilityZone(Ec2AvailabilityZoneT&& value) { SetEc2AvailabilityZone(std::forward<Ec2AvailabilityZoneT>(value)); return *this;}
105
107
118 inline const Aws::Vector<Aws::String>& GetRequestedEc2AvailabilityZones() const { return m_requestedEc2AvailabilityZones; }
119 inline bool RequestedEc2AvailabilityZonesHasBeenSet() const { return m_requestedEc2AvailabilityZonesHasBeenSet; }
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>>
123 Ec2InstanceAttributes& WithRequestedEc2AvailabilityZones(RequestedEc2AvailabilityZonesT&& value) { SetRequestedEc2AvailabilityZones(std::forward<RequestedEc2AvailabilityZonesT>(value)); return *this;}
124 template<typename RequestedEc2AvailabilityZonesT = Aws::String>
125 Ec2InstanceAttributes& AddRequestedEc2AvailabilityZones(RequestedEc2AvailabilityZonesT&& value) { m_requestedEc2AvailabilityZonesHasBeenSet = true; m_requestedEc2AvailabilityZones.emplace_back(std::forward<RequestedEc2AvailabilityZonesT>(value)); return *this; }
127
129
133 inline const Aws::String& GetIamInstanceProfile() const { return m_iamInstanceProfile; }
134 inline bool IamInstanceProfileHasBeenSet() const { return m_iamInstanceProfileHasBeenSet; }
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>
138 Ec2InstanceAttributes& WithIamInstanceProfile(IamInstanceProfileT&& value) { SetIamInstanceProfile(std::forward<IamInstanceProfileT>(value)); return *this;}
140
142
145 inline const Aws::String& GetEmrManagedMasterSecurityGroup() const { return m_emrManagedMasterSecurityGroup; }
146 inline bool EmrManagedMasterSecurityGroupHasBeenSet() const { return m_emrManagedMasterSecurityGroupHasBeenSet; }
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>
150 Ec2InstanceAttributes& WithEmrManagedMasterSecurityGroup(EmrManagedMasterSecurityGroupT&& value) { SetEmrManagedMasterSecurityGroup(std::forward<EmrManagedMasterSecurityGroupT>(value)); return *this;}
152
154
158 inline const Aws::String& GetEmrManagedSlaveSecurityGroup() const { return m_emrManagedSlaveSecurityGroup; }
159 inline bool EmrManagedSlaveSecurityGroupHasBeenSet() const { return m_emrManagedSlaveSecurityGroupHasBeenSet; }
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>
163 Ec2InstanceAttributes& WithEmrManagedSlaveSecurityGroup(EmrManagedSlaveSecurityGroupT&& value) { SetEmrManagedSlaveSecurityGroup(std::forward<EmrManagedSlaveSecurityGroupT>(value)); return *this;}
165
167
171 inline const Aws::String& GetServiceAccessSecurityGroup() const { return m_serviceAccessSecurityGroup; }
172 inline bool ServiceAccessSecurityGroupHasBeenSet() const { return m_serviceAccessSecurityGroupHasBeenSet; }
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>
176 Ec2InstanceAttributes& WithServiceAccessSecurityGroup(ServiceAccessSecurityGroupT&& value) { SetServiceAccessSecurityGroup(std::forward<ServiceAccessSecurityGroupT>(value)); return *this;}
178
180
183 inline const Aws::Vector<Aws::String>& GetAdditionalMasterSecurityGroups() const { return m_additionalMasterSecurityGroups; }
184 inline bool AdditionalMasterSecurityGroupsHasBeenSet() const { return m_additionalMasterSecurityGroupsHasBeenSet; }
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>>
188 Ec2InstanceAttributes& WithAdditionalMasterSecurityGroups(AdditionalMasterSecurityGroupsT&& value) { SetAdditionalMasterSecurityGroups(std::forward<AdditionalMasterSecurityGroupsT>(value)); return *this;}
189 template<typename AdditionalMasterSecurityGroupsT = Aws::String>
190 Ec2InstanceAttributes& AddAdditionalMasterSecurityGroups(AdditionalMasterSecurityGroupsT&& value) { m_additionalMasterSecurityGroupsHasBeenSet = true; m_additionalMasterSecurityGroups.emplace_back(std::forward<AdditionalMasterSecurityGroupsT>(value)); return *this; }
192
194
198 inline const Aws::Vector<Aws::String>& GetAdditionalSlaveSecurityGroups() const { return m_additionalSlaveSecurityGroups; }
199 inline bool AdditionalSlaveSecurityGroupsHasBeenSet() const { return m_additionalSlaveSecurityGroupsHasBeenSet; }
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>>
203 Ec2InstanceAttributes& WithAdditionalSlaveSecurityGroups(AdditionalSlaveSecurityGroupsT&& value) { SetAdditionalSlaveSecurityGroups(std::forward<AdditionalSlaveSecurityGroupsT>(value)); return *this;}
204 template<typename AdditionalSlaveSecurityGroupsT = Aws::String>
205 Ec2InstanceAttributes& AddAdditionalSlaveSecurityGroups(AdditionalSlaveSecurityGroupsT&& value) { m_additionalSlaveSecurityGroupsHasBeenSet = true; m_additionalSlaveSecurityGroups.emplace_back(std::forward<AdditionalSlaveSecurityGroupsT>(value)); return *this; }
207 private:
208
209 Aws::String m_ec2KeyName;
210 bool m_ec2KeyNameHasBeenSet = false;
211
212 Aws::String m_ec2SubnetId;
213 bool m_ec2SubnetIdHasBeenSet = false;
214
215 Aws::Vector<Aws::String> m_requestedEc2SubnetIds;
216 bool m_requestedEc2SubnetIdsHasBeenSet = false;
217
218 Aws::String m_ec2AvailabilityZone;
219 bool m_ec2AvailabilityZoneHasBeenSet = false;
220
221 Aws::Vector<Aws::String> m_requestedEc2AvailabilityZones;
222 bool m_requestedEc2AvailabilityZonesHasBeenSet = false;
223
224 Aws::String m_iamInstanceProfile;
225 bool m_iamInstanceProfileHasBeenSet = false;
226
227 Aws::String m_emrManagedMasterSecurityGroup;
228 bool m_emrManagedMasterSecurityGroupHasBeenSet = false;
229
230 Aws::String m_emrManagedSlaveSecurityGroup;
231 bool m_emrManagedSlaveSecurityGroupHasBeenSet = false;
232
233 Aws::String m_serviceAccessSecurityGroup;
234 bool m_serviceAccessSecurityGroupHasBeenSet = false;
235
236 Aws::Vector<Aws::String> m_additionalMasterSecurityGroups;
237 bool m_additionalMasterSecurityGroupsHasBeenSet = false;
238
239 Aws::Vector<Aws::String> m_additionalSlaveSecurityGroups;
240 bool m_additionalSlaveSecurityGroupsHasBeenSet = false;
241 };
242
243} // namespace Model
244} // namespace EMR
245} // namespace Aws
const Aws::String & GetIamInstanceProfile() const
AWS_EMR_API Ec2InstanceAttributes()=default
Ec2InstanceAttributes & WithAdditionalSlaveSecurityGroups(AdditionalSlaveSecurityGroupsT &&value)
void SetServiceAccessSecurityGroup(ServiceAccessSecurityGroupT &&value)
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)
AWS_EMR_API Ec2InstanceAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetServiceAccessSecurityGroup() const
void SetEc2AvailabilityZone(Ec2AvailabilityZoneT &&value)
Ec2InstanceAttributes & WithRequestedEc2SubnetIds(RequestedEc2SubnetIdsT &&value)
Ec2InstanceAttributes & AddAdditionalSlaveSecurityGroups(AdditionalSlaveSecurityGroupsT &&value)
Ec2InstanceAttributes & WithEmrManagedSlaveSecurityGroup(EmrManagedSlaveSecurityGroupT &&value)
Ec2InstanceAttributes & WithAdditionalMasterSecurityGroups(AdditionalMasterSecurityGroupsT &&value)
Ec2InstanceAttributes & WithRequestedEc2AvailabilityZones(RequestedEc2AvailabilityZonesT &&value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() 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)
Ec2InstanceAttributes & AddRequestedEc2SubnetIds(RequestedEc2SubnetIdsT &&value)
Ec2InstanceAttributes & WithEmrManagedMasterSecurityGroup(EmrManagedMasterSecurityGroupT &&value)
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)
Ec2InstanceAttributes & AddAdditionalMasterSecurityGroups(AdditionalMasterSecurityGroupsT &&value)
Ec2InstanceAttributes & WithIamInstanceProfile(IamInstanceProfileT &&value)
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