AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateFleetRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/SpotOptionsRequest.h>
11#include <aws/ec2/model/OnDemandOptionsRequest.h>
12#include <aws/ec2/model/FleetExcessCapacityTerminationPolicy.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/ec2/model/TargetCapacitySpecificationRequest.h>
15#include <aws/ec2/model/FleetType.h>
16#include <aws/core/utils/DateTime.h>
17#include <aws/ec2/model/FleetLaunchTemplateConfigRequest.h>
18#include <aws/ec2/model/TagSpecification.h>
19#include <utility>
20#include <aws/core/utils/UUID.h>
21
22namespace Aws
23{
24namespace EC2
25{
26namespace Model
27{
28
32 {
33 public:
34 AWS_EC2_API CreateFleetRequest() = default;
35
36 // Service request name is the Operation name which will send this request out,
37 // each operation should has unique request name, so that we can get operation's name from this request.
38 // Note: this is not true for response, multiple operations may have the same response name,
39 // so we can not get operation's name from response.
40 inline virtual const char* GetServiceRequestName() const override { return "CreateFleet"; }
41
42 AWS_EC2_API Aws::String SerializePayload() const override;
43
44 protected:
45 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
46
47 public:
48
50
56 inline bool GetDryRun() const { return m_dryRun; }
57 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
58 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
59 inline CreateFleetRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
61
63
71 inline const Aws::String& GetClientToken() const { return m_clientToken; }
72 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
73 template<typename ClientTokenT = Aws::String>
74 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
75 template<typename ClientTokenT = Aws::String>
76 CreateFleetRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
78
80
83 inline const SpotOptionsRequest& GetSpotOptions() const { return m_spotOptions; }
84 inline bool SpotOptionsHasBeenSet() const { return m_spotOptionsHasBeenSet; }
85 template<typename SpotOptionsT = SpotOptionsRequest>
86 void SetSpotOptions(SpotOptionsT&& value) { m_spotOptionsHasBeenSet = true; m_spotOptions = std::forward<SpotOptionsT>(value); }
87 template<typename SpotOptionsT = SpotOptionsRequest>
88 CreateFleetRequest& WithSpotOptions(SpotOptionsT&& value) { SetSpotOptions(std::forward<SpotOptionsT>(value)); return *this;}
90
92
95 inline const OnDemandOptionsRequest& GetOnDemandOptions() const { return m_onDemandOptions; }
96 inline bool OnDemandOptionsHasBeenSet() const { return m_onDemandOptionsHasBeenSet; }
97 template<typename OnDemandOptionsT = OnDemandOptionsRequest>
98 void SetOnDemandOptions(OnDemandOptionsT&& value) { m_onDemandOptionsHasBeenSet = true; m_onDemandOptions = std::forward<OnDemandOptionsT>(value); }
99 template<typename OnDemandOptionsT = OnDemandOptionsRequest>
100 CreateFleetRequest& WithOnDemandOptions(OnDemandOptionsT&& value) { SetOnDemandOptions(std::forward<OnDemandOptionsT>(value)); return *this;}
102
104
109 inline FleetExcessCapacityTerminationPolicy GetExcessCapacityTerminationPolicy() const { return m_excessCapacityTerminationPolicy; }
110 inline bool ExcessCapacityTerminationPolicyHasBeenSet() const { return m_excessCapacityTerminationPolicyHasBeenSet; }
111 inline void SetExcessCapacityTerminationPolicy(FleetExcessCapacityTerminationPolicy value) { m_excessCapacityTerminationPolicyHasBeenSet = true; m_excessCapacityTerminationPolicy = value; }
114
116
119 inline const Aws::Vector<FleetLaunchTemplateConfigRequest>& GetLaunchTemplateConfigs() const { return m_launchTemplateConfigs; }
120 inline bool LaunchTemplateConfigsHasBeenSet() const { return m_launchTemplateConfigsHasBeenSet; }
121 template<typename LaunchTemplateConfigsT = Aws::Vector<FleetLaunchTemplateConfigRequest>>
122 void SetLaunchTemplateConfigs(LaunchTemplateConfigsT&& value) { m_launchTemplateConfigsHasBeenSet = true; m_launchTemplateConfigs = std::forward<LaunchTemplateConfigsT>(value); }
123 template<typename LaunchTemplateConfigsT = Aws::Vector<FleetLaunchTemplateConfigRequest>>
124 CreateFleetRequest& WithLaunchTemplateConfigs(LaunchTemplateConfigsT&& value) { SetLaunchTemplateConfigs(std::forward<LaunchTemplateConfigsT>(value)); return *this;}
125 template<typename LaunchTemplateConfigsT = FleetLaunchTemplateConfigRequest>
126 CreateFleetRequest& AddLaunchTemplateConfigs(LaunchTemplateConfigsT&& value) { m_launchTemplateConfigsHasBeenSet = true; m_launchTemplateConfigs.emplace_back(std::forward<LaunchTemplateConfigsT>(value)); return *this; }
128
130
133 inline const TargetCapacitySpecificationRequest& GetTargetCapacitySpecification() const { return m_targetCapacitySpecification; }
134 inline bool TargetCapacitySpecificationHasBeenSet() const { return m_targetCapacitySpecificationHasBeenSet; }
135 template<typename TargetCapacitySpecificationT = TargetCapacitySpecificationRequest>
136 void SetTargetCapacitySpecification(TargetCapacitySpecificationT&& value) { m_targetCapacitySpecificationHasBeenSet = true; m_targetCapacitySpecification = std::forward<TargetCapacitySpecificationT>(value); }
137 template<typename TargetCapacitySpecificationT = TargetCapacitySpecificationRequest>
138 CreateFleetRequest& WithTargetCapacitySpecification(TargetCapacitySpecificationT&& value) { SetTargetCapacitySpecification(std::forward<TargetCapacitySpecificationT>(value)); return *this;}
140
142
146 inline bool GetTerminateInstancesWithExpiration() const { return m_terminateInstancesWithExpiration; }
147 inline bool TerminateInstancesWithExpirationHasBeenSet() const { return m_terminateInstancesWithExpirationHasBeenSet; }
148 inline void SetTerminateInstancesWithExpiration(bool value) { m_terminateInstancesWithExpirationHasBeenSet = true; m_terminateInstancesWithExpiration = value; }
151
153
168 inline FleetType GetType() const { return m_type; }
169 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
170 inline void SetType(FleetType value) { m_typeHasBeenSet = true; m_type = value; }
171 inline CreateFleetRequest& WithType(FleetType value) { SetType(value); return *this;}
173
175
180 inline const Aws::Utils::DateTime& GetValidFrom() const { return m_validFrom; }
181 inline bool ValidFromHasBeenSet() const { return m_validFromHasBeenSet; }
182 template<typename ValidFromT = Aws::Utils::DateTime>
183 void SetValidFrom(ValidFromT&& value) { m_validFromHasBeenSet = true; m_validFrom = std::forward<ValidFromT>(value); }
184 template<typename ValidFromT = Aws::Utils::DateTime>
185 CreateFleetRequest& WithValidFrom(ValidFromT&& value) { SetValidFrom(std::forward<ValidFromT>(value)); return *this;}
187
189
195 inline const Aws::Utils::DateTime& GetValidUntil() const { return m_validUntil; }
196 inline bool ValidUntilHasBeenSet() const { return m_validUntilHasBeenSet; }
197 template<typename ValidUntilT = Aws::Utils::DateTime>
198 void SetValidUntil(ValidUntilT&& value) { m_validUntilHasBeenSet = true; m_validUntil = std::forward<ValidUntilT>(value); }
199 template<typename ValidUntilT = Aws::Utils::DateTime>
200 CreateFleetRequest& WithValidUntil(ValidUntilT&& value) { SetValidUntil(std::forward<ValidUntilT>(value)); return *this;}
202
204
211 inline bool GetReplaceUnhealthyInstances() const { return m_replaceUnhealthyInstances; }
212 inline bool ReplaceUnhealthyInstancesHasBeenSet() const { return m_replaceUnhealthyInstancesHasBeenSet; }
213 inline void SetReplaceUnhealthyInstances(bool value) { m_replaceUnhealthyInstancesHasBeenSet = true; m_replaceUnhealthyInstances = value; }
216
218
231 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
232 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
233 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
234 void SetTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::forward<TagSpecificationsT>(value); }
235 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
236 CreateFleetRequest& WithTagSpecifications(TagSpecificationsT&& value) { SetTagSpecifications(std::forward<TagSpecificationsT>(value)); return *this;}
237 template<typename TagSpecificationsT = TagSpecification>
238 CreateFleetRequest& AddTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value)); return *this; }
240
242
245 inline const Aws::String& GetContext() const { return m_context; }
246 inline bool ContextHasBeenSet() const { return m_contextHasBeenSet; }
247 template<typename ContextT = Aws::String>
248 void SetContext(ContextT&& value) { m_contextHasBeenSet = true; m_context = std::forward<ContextT>(value); }
249 template<typename ContextT = Aws::String>
250 CreateFleetRequest& WithContext(ContextT&& value) { SetContext(std::forward<ContextT>(value)); return *this;}
252 private:
253
254 bool m_dryRun{false};
255 bool m_dryRunHasBeenSet = false;
256
258 bool m_clientTokenHasBeenSet = true;
259
260 SpotOptionsRequest m_spotOptions;
261 bool m_spotOptionsHasBeenSet = false;
262
263 OnDemandOptionsRequest m_onDemandOptions;
264 bool m_onDemandOptionsHasBeenSet = false;
265
267 bool m_excessCapacityTerminationPolicyHasBeenSet = false;
268
269 Aws::Vector<FleetLaunchTemplateConfigRequest> m_launchTemplateConfigs;
270 bool m_launchTemplateConfigsHasBeenSet = false;
271
272 TargetCapacitySpecificationRequest m_targetCapacitySpecification;
273 bool m_targetCapacitySpecificationHasBeenSet = false;
274
275 bool m_terminateInstancesWithExpiration{false};
276 bool m_terminateInstancesWithExpirationHasBeenSet = false;
277
279 bool m_typeHasBeenSet = false;
280
281 Aws::Utils::DateTime m_validFrom{};
282 bool m_validFromHasBeenSet = false;
283
284 Aws::Utils::DateTime m_validUntil{};
285 bool m_validUntilHasBeenSet = false;
286
287 bool m_replaceUnhealthyInstances{false};
288 bool m_replaceUnhealthyInstancesHasBeenSet = false;
289
290 Aws::Vector<TagSpecification> m_tagSpecifications;
291 bool m_tagSpecificationsHasBeenSet = false;
292
293 Aws::String m_context;
294 bool m_contextHasBeenSet = false;
295 };
296
297} // namespace Model
298} // namespace EC2
299} // namespace Aws
const Aws::Utils::DateTime & GetValidFrom() const
const Aws::String & GetContext() const
void SetOnDemandOptions(OnDemandOptionsT &&value)
CreateFleetRequest & AddLaunchTemplateConfigs(LaunchTemplateConfigsT &&value)
CreateFleetRequest & WithTagSpecifications(TagSpecificationsT &&value)
void SetValidUntil(ValidUntilT &&value)
const Aws::String & GetClientToken() const
void SetTargetCapacitySpecification(TargetCapacitySpecificationT &&value)
virtual const char * GetServiceRequestName() const override
CreateFleetRequest & WithClientToken(ClientTokenT &&value)
void SetLaunchTemplateConfigs(LaunchTemplateConfigsT &&value)
void SetTagSpecifications(TagSpecificationsT &&value)
CreateFleetRequest & WithExcessCapacityTerminationPolicy(FleetExcessCapacityTerminationPolicy value)
CreateFleetRequest & WithLaunchTemplateConfigs(LaunchTemplateConfigsT &&value)
CreateFleetRequest & WithSpotOptions(SpotOptionsT &&value)
const Aws::Vector< FleetLaunchTemplateConfigRequest > & GetLaunchTemplateConfigs() const
void SetExcessCapacityTerminationPolicy(FleetExcessCapacityTerminationPolicy value)
const TargetCapacitySpecificationRequest & GetTargetCapacitySpecification() const
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateFleetRequest & AddTagSpecifications(TagSpecificationsT &&value)
CreateFleetRequest & WithOnDemandOptions(OnDemandOptionsT &&value)
CreateFleetRequest & WithValidFrom(ValidFromT &&value)
void SetClientToken(ClientTokenT &&value)
CreateFleetRequest & WithDryRun(bool value)
void SetSpotOptions(SpotOptionsT &&value)
const SpotOptionsRequest & GetSpotOptions() const
FleetExcessCapacityTerminationPolicy GetExcessCapacityTerminationPolicy() const
CreateFleetRequest & WithReplaceUnhealthyInstances(bool value)
CreateFleetRequest & WithType(FleetType value)
AWS_EC2_API Aws::String SerializePayload() const override
CreateFleetRequest & WithTargetCapacitySpecification(TargetCapacitySpecificationT &&value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
AWS_EC2_API CreateFleetRequest()=default
const Aws::Utils::DateTime & GetValidUntil() const
CreateFleetRequest & WithTerminateInstancesWithExpiration(bool value)
CreateFleetRequest & WithValidUntil(ValidUntilT &&value)
const OnDemandOptionsRequest & GetOnDemandOptions() const
CreateFleetRequest & WithContext(ContextT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector