AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
LaunchTemplateOverrides.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/InstanceType.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/ec2/model/InstanceRequirements.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Xml
19{
20 class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace EC2
24{
25namespace Model
26{
27
34 {
35 public:
36 AWS_EC2_API LaunchTemplateOverrides() = 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
43
45
48 inline InstanceType GetInstanceType() const { return m_instanceType; }
49 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
50 inline void SetInstanceType(InstanceType value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
53
55
63 inline const Aws::String& GetSpotPrice() const { return m_spotPrice; }
64 inline bool SpotPriceHasBeenSet() const { return m_spotPriceHasBeenSet; }
65 template<typename SpotPriceT = Aws::String>
66 void SetSpotPrice(SpotPriceT&& value) { m_spotPriceHasBeenSet = true; m_spotPrice = std::forward<SpotPriceT>(value); }
67 template<typename SpotPriceT = Aws::String>
68 LaunchTemplateOverrides& WithSpotPrice(SpotPriceT&& value) { SetSpotPrice(std::forward<SpotPriceT>(value)); return *this;}
70
72
75 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
76 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
77 template<typename SubnetIdT = Aws::String>
78 void SetSubnetId(SubnetIdT&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::forward<SubnetIdT>(value); }
79 template<typename SubnetIdT = Aws::String>
80 LaunchTemplateOverrides& WithSubnetId(SubnetIdT&& value) { SetSubnetId(std::forward<SubnetIdT>(value)); return *this;}
82
84
87 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
88 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
89 template<typename AvailabilityZoneT = Aws::String>
90 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
91 template<typename AvailabilityZoneT = Aws::String>
92 LaunchTemplateOverrides& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
94
96
109 inline double GetWeightedCapacity() const { return m_weightedCapacity; }
110 inline bool WeightedCapacityHasBeenSet() const { return m_weightedCapacityHasBeenSet; }
111 inline void SetWeightedCapacity(double value) { m_weightedCapacityHasBeenSet = true; m_weightedCapacity = value; }
112 inline LaunchTemplateOverrides& WithWeightedCapacity(double value) { SetWeightedCapacity(value); return *this;}
114
116
130 inline double GetPriority() const { return m_priority; }
131 inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; }
132 inline void SetPriority(double value) { m_priorityHasBeenSet = true; m_priority = value; }
133 inline LaunchTemplateOverrides& WithPriority(double value) { SetPriority(value); return *this;}
135
137
145 inline const InstanceRequirements& GetInstanceRequirements() const { return m_instanceRequirements; }
146 inline bool InstanceRequirementsHasBeenSet() const { return m_instanceRequirementsHasBeenSet; }
147 template<typename InstanceRequirementsT = InstanceRequirements>
148 void SetInstanceRequirements(InstanceRequirementsT&& value) { m_instanceRequirementsHasBeenSet = true; m_instanceRequirements = std::forward<InstanceRequirementsT>(value); }
149 template<typename InstanceRequirementsT = InstanceRequirements>
150 LaunchTemplateOverrides& WithInstanceRequirements(InstanceRequirementsT&& value) { SetInstanceRequirements(std::forward<InstanceRequirementsT>(value)); return *this;}
152 private:
153
154 InstanceType m_instanceType{InstanceType::NOT_SET};
155 bool m_instanceTypeHasBeenSet = false;
156
157 Aws::String m_spotPrice;
158 bool m_spotPriceHasBeenSet = false;
159
160 Aws::String m_subnetId;
161 bool m_subnetIdHasBeenSet = false;
162
163 Aws::String m_availabilityZone;
164 bool m_availabilityZoneHasBeenSet = false;
165
166 double m_weightedCapacity{0.0};
167 bool m_weightedCapacityHasBeenSet = false;
168
169 double m_priority{0.0};
170 bool m_priorityHasBeenSet = false;
171
172 InstanceRequirements m_instanceRequirements;
173 bool m_instanceRequirementsHasBeenSet = false;
174 };
175
176} // namespace Model
177} // namespace EC2
178} // namespace Aws
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
LaunchTemplateOverrides & WithSpotPrice(SpotPriceT &&value)
const InstanceRequirements & GetInstanceRequirements() const
LaunchTemplateOverrides & WithPriority(double value)
AWS_EC2_API LaunchTemplateOverrides(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API LaunchTemplateOverrides & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetAvailabilityZone(AvailabilityZoneT &&value)
LaunchTemplateOverrides & WithAvailabilityZone(AvailabilityZoneT &&value)
LaunchTemplateOverrides & WithInstanceType(InstanceType value)
LaunchTemplateOverrides & WithSubnetId(SubnetIdT &&value)
LaunchTemplateOverrides & WithWeightedCapacity(double value)
LaunchTemplateOverrides & WithInstanceRequirements(InstanceRequirementsT &&value)
AWS_EC2_API LaunchTemplateOverrides()=default
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetInstanceRequirements(InstanceRequirementsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream