AWS SDK for C++

AWS SDK for C++ Version 1.11.850

Loading...
Searching...
No Matches
CreateFleetInstance.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/InstanceLifecycle.h>
12#include <aws/ec2/model/InstanceType.h>
13#include <aws/ec2/model/LaunchTemplateAndOverridesResponse.h>
14#include <aws/ec2/model/PlatformValues.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Xml {
21class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace EC2 {
25namespace Model {
26
34 public:
35 AWS_EC2_API CreateFleetInstance() = default;
36 AWS_EC2_API CreateFleetInstance(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
40 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
41
43
48 inline const LaunchTemplateAndOverridesResponse& GetLaunchTemplateAndOverrides() const { return m_launchTemplateAndOverrides; }
49 inline bool LaunchTemplateAndOverridesHasBeenSet() const { return m_launchTemplateAndOverridesHasBeenSet; }
50 template <typename LaunchTemplateAndOverridesT = LaunchTemplateAndOverridesResponse>
51 void SetLaunchTemplateAndOverrides(LaunchTemplateAndOverridesT&& value) {
52 m_launchTemplateAndOverridesHasBeenSet = true;
53 m_launchTemplateAndOverrides = std::forward<LaunchTemplateAndOverridesT>(value);
54 }
55 template <typename LaunchTemplateAndOverridesT = LaunchTemplateAndOverridesResponse>
56 CreateFleetInstance& WithLaunchTemplateAndOverrides(LaunchTemplateAndOverridesT&& value) {
57 SetLaunchTemplateAndOverrides(std::forward<LaunchTemplateAndOverridesT>(value));
58 return *this;
59 }
61
63
67 inline InstanceLifecycle GetLifecycle() const { return m_lifecycle; }
68 inline bool LifecycleHasBeenSet() const { return m_lifecycleHasBeenSet; }
69 inline void SetLifecycle(InstanceLifecycle value) {
70 m_lifecycleHasBeenSet = true;
71 m_lifecycle = value;
72 }
74 SetLifecycle(value);
75 return *this;
76 }
78
80
83 inline const Aws::Vector<Aws::String>& GetInstanceIds() const { return m_instanceIds; }
84 inline bool InstanceIdsHasBeenSet() const { return m_instanceIdsHasBeenSet; }
85 template <typename InstanceIdsT = Aws::Vector<Aws::String>>
86 void SetInstanceIds(InstanceIdsT&& value) {
87 m_instanceIdsHasBeenSet = true;
88 m_instanceIds = std::forward<InstanceIdsT>(value);
89 }
90 template <typename InstanceIdsT = Aws::Vector<Aws::String>>
91 CreateFleetInstance& WithInstanceIds(InstanceIdsT&& value) {
92 SetInstanceIds(std::forward<InstanceIdsT>(value));
93 return *this;
94 }
95 template <typename InstanceIdsT = Aws::String>
96 CreateFleetInstance& AddInstanceIds(InstanceIdsT&& value) {
97 m_instanceIdsHasBeenSet = true;
98 m_instanceIds.emplace_back(std::forward<InstanceIdsT>(value));
99 return *this;
100 }
102
104
107 inline InstanceType GetInstanceType() const { return m_instanceType; }
108 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
109 inline void SetInstanceType(InstanceType value) {
110 m_instanceTypeHasBeenSet = true;
111 m_instanceType = value;
112 }
114 SetInstanceType(value);
115 return *this;
116 }
118
120
124 inline PlatformValues GetPlatform() const { return m_platform; }
125 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
126 inline void SetPlatform(PlatformValues value) {
127 m_platformHasBeenSet = true;
128 m_platform = value;
129 }
131 SetPlatform(value);
132 return *this;
133 }
135
137
142 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
143 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
144 template <typename AvailabilityZoneIdT = Aws::String>
145 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
146 m_availabilityZoneIdHasBeenSet = true;
147 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
148 }
149 template <typename AvailabilityZoneIdT = Aws::String>
150 CreateFleetInstance& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) {
151 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
152 return *this;
153 }
155
157
162 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
163 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
164 template <typename AvailabilityZoneT = Aws::String>
165 void SetAvailabilityZone(AvailabilityZoneT&& value) {
166 m_availabilityZoneHasBeenSet = true;
167 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
168 }
169 template <typename AvailabilityZoneT = Aws::String>
170 CreateFleetInstance& WithAvailabilityZone(AvailabilityZoneT&& value) {
171 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
172 return *this;
173 }
175
177
181 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
182 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
183 template <typename SubnetIdT = Aws::String>
184 void SetSubnetId(SubnetIdT&& value) {
185 m_subnetIdHasBeenSet = true;
186 m_subnetId = std::forward<SubnetIdT>(value);
187 }
188 template <typename SubnetIdT = Aws::String>
189 CreateFleetInstance& WithSubnetId(SubnetIdT&& value) {
190 SetSubnetId(std::forward<SubnetIdT>(value));
191 return *this;
192 }
194 private:
195 LaunchTemplateAndOverridesResponse m_launchTemplateAndOverrides;
196
198
199 Aws::Vector<Aws::String> m_instanceIds;
200
201 InstanceType m_instanceType{InstanceType::NOT_SET};
202
204
205 Aws::String m_availabilityZoneId;
206
207 Aws::String m_availabilityZone;
208
209 Aws::String m_subnetId;
210 bool m_launchTemplateAndOverridesHasBeenSet = false;
211 bool m_lifecycleHasBeenSet = false;
212 bool m_instanceIdsHasBeenSet = false;
213 bool m_instanceTypeHasBeenSet = false;
214 bool m_platformHasBeenSet = false;
215 bool m_availabilityZoneIdHasBeenSet = false;
216 bool m_availabilityZoneHasBeenSet = false;
217 bool m_subnetIdHasBeenSet = false;
218};
219
220} // namespace Model
221} // namespace EC2
222} // namespace Aws
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API CreateFleetInstance(const Aws::Utils::Xml::XmlNode &xmlNode)
CreateFleetInstance & AddInstanceIds(InstanceIdsT &&value)
void SetInstanceIds(InstanceIdsT &&value)
CreateFleetInstance & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
const Aws::String & GetAvailabilityZoneId() const
void SetLifecycle(InstanceLifecycle value)
CreateFleetInstance & WithAvailabilityZone(AvailabilityZoneT &&value)
CreateFleetInstance & WithInstanceIds(InstanceIdsT &&value)
const LaunchTemplateAndOverridesResponse & GetLaunchTemplateAndOverrides() const
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
void SetLaunchTemplateAndOverrides(LaunchTemplateAndOverridesT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
CreateFleetInstance & WithSubnetId(SubnetIdT &&value)
const Aws::String & GetSubnetId() const
CreateFleetInstance & WithInstanceType(InstanceType value)
const Aws::String & GetAvailabilityZone() const
AWS_EC2_API CreateFleetInstance()=default
CreateFleetInstance & WithLifecycle(InstanceLifecycle value)
CreateFleetInstance & WithLaunchTemplateAndOverrides(LaunchTemplateAndOverridesT &&value)
AWS_EC2_API CreateFleetInstance & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Aws::String > & GetInstanceIds() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
CreateFleetInstance & WithPlatform(PlatformValues value)
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