AWS SDK for C++

AWS SDK for C++ Version 1.11.850

Loading...
Searching...
No Matches
FleetLaunchTemplateOverridesRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/FleetBlockDeviceMappingRequest.h>
12#include <aws/ec2/model/FleetIamInstanceProfileSpecificationRequest.h>
13#include <aws/ec2/model/FleetInstanceMetadataOptionsRequest.h>
14#include <aws/ec2/model/InstanceRequirementsRequest.h>
15#include <aws/ec2/model/InstanceType.h>
16#include <aws/ec2/model/Placement.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Xml {
23class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace EC2 {
27namespace Model {
28
35 public:
36 AWS_EC2_API FleetLaunchTemplateOverridesRequest() = default;
39
40 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
42
44
50 inline InstanceType GetInstanceType() const { return m_instanceType; }
51 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
52 inline void SetInstanceType(InstanceType value) {
53 m_instanceTypeHasBeenSet = true;
54 m_instanceType = value;
55 }
57 SetInstanceType(value);
58 return *this;
59 }
61
63
73 inline const Aws::String& GetMaxPrice() const { return m_maxPrice; }
74 inline bool MaxPriceHasBeenSet() const { return m_maxPriceHasBeenSet; }
75 template <typename MaxPriceT = Aws::String>
76 void SetMaxPrice(MaxPriceT&& value) {
77 m_maxPriceHasBeenSet = true;
78 m_maxPrice = std::forward<MaxPriceT>(value);
79 }
80 template <typename MaxPriceT = Aws::String>
82 SetMaxPrice(std::forward<MaxPriceT>(value));
83 return *this;
84 }
86
88
94 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
95 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
96 template <typename SubnetIdT = Aws::String>
97 void SetSubnetId(SubnetIdT&& value) {
98 m_subnetIdHasBeenSet = true;
99 m_subnetId = std::forward<SubnetIdT>(value);
100 }
101 template <typename SubnetIdT = Aws::String>
103 SetSubnetId(std::forward<SubnetIdT>(value));
104 return *this;
105 }
107
109
115 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
116 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
117 template <typename AvailabilityZoneT = Aws::String>
118 void SetAvailabilityZone(AvailabilityZoneT&& value) {
119 m_availabilityZoneHasBeenSet = true;
120 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
121 }
122 template <typename AvailabilityZoneT = Aws::String>
124 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
125 return *this;
126 }
128
130
143 inline double GetWeightedCapacity() const { return m_weightedCapacity; }
144 inline bool WeightedCapacityHasBeenSet() const { return m_weightedCapacityHasBeenSet; }
145 inline void SetWeightedCapacity(double value) {
146 m_weightedCapacityHasBeenSet = true;
147 m_weightedCapacity = value;
148 }
150 SetWeightedCapacity(value);
151 return *this;
152 }
154
156
170 inline double GetPriority() const { return m_priority; }
171 inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; }
172 inline void SetPriority(double value) {
173 m_priorityHasBeenSet = true;
174 m_priority = value;
175 }
177 SetPriority(value);
178 return *this;
179 }
181
183
186 inline const Placement& GetPlacement() const { return m_placement; }
187 inline bool PlacementHasBeenSet() const { return m_placementHasBeenSet; }
188 template <typename PlacementT = Placement>
189 void SetPlacement(PlacementT&& value) {
190 m_placementHasBeenSet = true;
191 m_placement = std::forward<PlacementT>(value);
192 }
193 template <typename PlacementT = Placement>
195 SetPlacement(std::forward<PlacementT>(value));
196 return *this;
197 }
199
201
207 inline const Aws::String& GetKeyName() const { return m_keyName; }
208 inline bool KeyNameHasBeenSet() const { return m_keyNameHasBeenSet; }
209 template <typename KeyNameT = Aws::String>
210 void SetKeyName(KeyNameT&& value) {
211 m_keyNameHasBeenSet = true;
212 m_keyName = std::forward<KeyNameT>(value);
213 }
214 template <typename KeyNameT = Aws::String>
216 SetKeyName(std::forward<KeyNameT>(value));
217 return *this;
218 }
220
222
230 inline const Aws::Vector<FleetBlockDeviceMappingRequest>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
231 inline bool BlockDeviceMappingsHasBeenSet() const { return m_blockDeviceMappingsHasBeenSet; }
232 template <typename BlockDeviceMappingsT = Aws::Vector<FleetBlockDeviceMappingRequest>>
233 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) {
234 m_blockDeviceMappingsHasBeenSet = true;
235 m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value);
236 }
237 template <typename BlockDeviceMappingsT = Aws::Vector<FleetBlockDeviceMappingRequest>>
239 SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value));
240 return *this;
241 }
242 template <typename BlockDeviceMappingsT = FleetBlockDeviceMappingRequest>
244 m_blockDeviceMappingsHasBeenSet = true;
245 m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
246 return *this;
247 }
249
251
258 inline const FleetIamInstanceProfileSpecificationRequest& GetIamInstanceProfile() const { return m_iamInstanceProfile; }
259 inline bool IamInstanceProfileHasBeenSet() const { return m_iamInstanceProfileHasBeenSet; }
260 template <typename IamInstanceProfileT = FleetIamInstanceProfileSpecificationRequest>
261 void SetIamInstanceProfile(IamInstanceProfileT&& value) {
262 m_iamInstanceProfileHasBeenSet = true;
263 m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value);
264 }
265 template <typename IamInstanceProfileT = FleetIamInstanceProfileSpecificationRequest>
267 SetIamInstanceProfile(std::forward<IamInstanceProfileT>(value));
268 return *this;
269 }
271
273
279 inline const FleetInstanceMetadataOptionsRequest& GetMetadataOptions() const { return m_metadataOptions; }
280 inline bool MetadataOptionsHasBeenSet() const { return m_metadataOptionsHasBeenSet; }
281 template <typename MetadataOptionsT = FleetInstanceMetadataOptionsRequest>
282 void SetMetadataOptions(MetadataOptionsT&& value) {
283 m_metadataOptionsHasBeenSet = true;
284 m_metadataOptions = std::forward<MetadataOptionsT>(value);
285 }
286 template <typename MetadataOptionsT = FleetInstanceMetadataOptionsRequest>
288 SetMetadataOptions(std::forward<MetadataOptionsT>(value));
289 return *this;
290 }
292
294
300 inline const InstanceRequirementsRequest& GetInstanceRequirements() const { return m_instanceRequirements; }
301 inline bool InstanceRequirementsHasBeenSet() const { return m_instanceRequirementsHasBeenSet; }
302 template <typename InstanceRequirementsT = InstanceRequirementsRequest>
303 void SetInstanceRequirements(InstanceRequirementsT&& value) {
304 m_instanceRequirementsHasBeenSet = true;
305 m_instanceRequirements = std::forward<InstanceRequirementsT>(value);
306 }
307 template <typename InstanceRequirementsT = InstanceRequirementsRequest>
309 SetInstanceRequirements(std::forward<InstanceRequirementsT>(value));
310 return *this;
311 }
313
315
337 inline const Aws::String& GetImageId() const { return m_imageId; }
338 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
339 template <typename ImageIdT = Aws::String>
340 void SetImageId(ImageIdT&& value) {
341 m_imageIdHasBeenSet = true;
342 m_imageId = std::forward<ImageIdT>(value);
343 }
344 template <typename ImageIdT = Aws::String>
346 SetImageId(std::forward<ImageIdT>(value));
347 return *this;
348 }
350
352
358 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
359 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
360 template <typename AvailabilityZoneIdT = Aws::String>
361 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
362 m_availabilityZoneIdHasBeenSet = true;
363 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
364 }
365 template <typename AvailabilityZoneIdT = Aws::String>
367 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
368 return *this;
369 }
371 private:
372 InstanceType m_instanceType{InstanceType::NOT_SET};
373
374 Aws::String m_maxPrice;
375
376 Aws::String m_subnetId;
377
378 Aws::String m_availabilityZone;
379
380 double m_weightedCapacity{0.0};
381
382 double m_priority{0.0};
383
384 Placement m_placement;
385
386 Aws::String m_keyName;
387
389
390 FleetIamInstanceProfileSpecificationRequest m_iamInstanceProfile;
391
392 FleetInstanceMetadataOptionsRequest m_metadataOptions;
393
394 InstanceRequirementsRequest m_instanceRequirements;
395
396 Aws::String m_imageId;
397
398 Aws::String m_availabilityZoneId;
399 bool m_instanceTypeHasBeenSet = false;
400 bool m_maxPriceHasBeenSet = false;
401 bool m_subnetIdHasBeenSet = false;
402 bool m_availabilityZoneHasBeenSet = false;
403 bool m_weightedCapacityHasBeenSet = false;
404 bool m_priorityHasBeenSet = false;
405 bool m_placementHasBeenSet = false;
406 bool m_keyNameHasBeenSet = false;
407 bool m_blockDeviceMappingsHasBeenSet = false;
408 bool m_iamInstanceProfileHasBeenSet = false;
409 bool m_metadataOptionsHasBeenSet = false;
410 bool m_instanceRequirementsHasBeenSet = false;
411 bool m_imageIdHasBeenSet = false;
412 bool m_availabilityZoneIdHasBeenSet = false;
413};
414
415} // namespace Model
416} // namespace EC2
417} // namespace Aws
FleetLaunchTemplateOverridesRequest & WithInstanceType(InstanceType value)
FleetLaunchTemplateOverridesRequest & WithInstanceRequirements(InstanceRequirementsT &&value)
FleetLaunchTemplateOverridesRequest & WithMetadataOptions(MetadataOptionsT &&value)
FleetLaunchTemplateOverridesRequest & WithPlacement(PlacementT &&value)
FleetLaunchTemplateOverridesRequest & WithIamInstanceProfile(IamInstanceProfileT &&value)
const FleetIamInstanceProfileSpecificationRequest & GetIamInstanceProfile() const
const Aws::Vector< FleetBlockDeviceMappingRequest > & GetBlockDeviceMappings() const
FleetLaunchTemplateOverridesRequest & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
const FleetInstanceMetadataOptionsRequest & GetMetadataOptions() const
FleetLaunchTemplateOverridesRequest & WithWeightedCapacity(double value)
FleetLaunchTemplateOverridesRequest & WithImageId(ImageIdT &&value)
FleetLaunchTemplateOverridesRequest & WithSubnetId(SubnetIdT &&value)
FleetLaunchTemplateOverridesRequest & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
FleetLaunchTemplateOverridesRequest & WithPriority(double value)
FleetLaunchTemplateOverridesRequest & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
AWS_EC2_API FleetLaunchTemplateOverridesRequest(const Aws::Utils::Xml::XmlNode &xmlNode)
FleetLaunchTemplateOverridesRequest & WithKeyName(KeyNameT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
FleetLaunchTemplateOverridesRequest & WithMaxPrice(MaxPriceT &&value)
FleetLaunchTemplateOverridesRequest & WithAvailabilityZone(AvailabilityZoneT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API FleetLaunchTemplateOverridesRequest & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream