AWS SDK for C++

AWS SDK for C++ Version 1.11.865

Loading...
Searching...
No Matches
UpdateComputeNodeGroupRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/pcs/PCSRequest.h>
11#include <aws/pcs/PCS_EXPORTS.h>
12#include <aws/pcs/model/CustomLaunchTemplate.h>
13#include <aws/pcs/model/PurchaseOption.h>
14#include <aws/pcs/model/ScalingConfigurationRequest.h>
15#include <aws/pcs/model/SpotOptions.h>
16#include <aws/pcs/model/UpdateComputeNodeGroupSlurmConfigurationRequest.h>
17#include <aws/pcs/model/UpdateNodeLifecycleActionsRequest.h>
18
19#include <utility>
20
21namespace Aws {
22namespace PCS {
23namespace Model {
24
28 public:
29 AWS_PCS_API UpdateComputeNodeGroupRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "UpdateComputeNodeGroup"; }
36
37 AWS_PCS_API Aws::String SerializePayload() const override;
38
40
42
45 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
46 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
47 template <typename ClusterIdentifierT = Aws::String>
48 void SetClusterIdentifier(ClusterIdentifierT&& value) {
49 m_clusterIdentifierHasBeenSet = true;
50 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
51 }
52 template <typename ClusterIdentifierT = Aws::String>
54 SetClusterIdentifier(std::forward<ClusterIdentifierT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetComputeNodeGroupIdentifier() const { return m_computeNodeGroupIdentifier; }
64 inline bool ComputeNodeGroupIdentifierHasBeenSet() const { return m_computeNodeGroupIdentifierHasBeenSet; }
65 template <typename ComputeNodeGroupIdentifierT = Aws::String>
66 void SetComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT&& value) {
67 m_computeNodeGroupIdentifierHasBeenSet = true;
68 m_computeNodeGroupIdentifier = std::forward<ComputeNodeGroupIdentifierT>(value);
69 }
70 template <typename ComputeNodeGroupIdentifierT = Aws::String>
71 UpdateComputeNodeGroupRequest& WithComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT&& value) {
72 SetComputeNodeGroupIdentifier(std::forward<ComputeNodeGroupIdentifierT>(value));
73 return *this;
74 }
76
78
83 inline const Aws::String& GetAmiId() const { return m_amiId; }
84 inline bool AmiIdHasBeenSet() const { return m_amiIdHasBeenSet; }
85 template <typename AmiIdT = Aws::String>
86 void SetAmiId(AmiIdT&& value) {
87 m_amiIdHasBeenSet = true;
88 m_amiId = std::forward<AmiIdT>(value);
89 }
90 template <typename AmiIdT = Aws::String>
92 SetAmiId(std::forward<AmiIdT>(value));
93 return *this;
94 }
96
98
102 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
103 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
104 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
105 void SetSubnetIds(SubnetIdsT&& value) {
106 m_subnetIdsHasBeenSet = true;
107 m_subnetIds = std::forward<SubnetIdsT>(value);
108 }
109 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
111 SetSubnetIds(std::forward<SubnetIdsT>(value));
112 return *this;
113 }
114 template <typename SubnetIdsT = Aws::String>
116 m_subnetIdsHasBeenSet = true;
117 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
118 return *this;
119 }
121
123
124 inline const CustomLaunchTemplate& GetCustomLaunchTemplate() const { return m_customLaunchTemplate; }
125 inline bool CustomLaunchTemplateHasBeenSet() const { return m_customLaunchTemplateHasBeenSet; }
126 template <typename CustomLaunchTemplateT = CustomLaunchTemplate>
127 void SetCustomLaunchTemplate(CustomLaunchTemplateT&& value) {
128 m_customLaunchTemplateHasBeenSet = true;
129 m_customLaunchTemplate = std::forward<CustomLaunchTemplateT>(value);
130 }
131 template <typename CustomLaunchTemplateT = CustomLaunchTemplate>
133 SetCustomLaunchTemplate(std::forward<CustomLaunchTemplateT>(value));
134 return *this;
135 }
137
139
159 inline PurchaseOption GetPurchaseOption() const { return m_purchaseOption; }
160 inline bool PurchaseOptionHasBeenSet() const { return m_purchaseOptionHasBeenSet; }
162 m_purchaseOptionHasBeenSet = true;
163 m_purchaseOption = value;
164 }
166 SetPurchaseOption(value);
167 return *this;
168 }
170
172
173 inline const SpotOptions& GetSpotOptions() const { return m_spotOptions; }
174 inline bool SpotOptionsHasBeenSet() const { return m_spotOptionsHasBeenSet; }
175 template <typename SpotOptionsT = SpotOptions>
176 void SetSpotOptions(SpotOptionsT&& value) {
177 m_spotOptionsHasBeenSet = true;
178 m_spotOptions = std::forward<SpotOptionsT>(value);
179 }
180 template <typename SpotOptionsT = SpotOptions>
182 SetSpotOptions(std::forward<SpotOptionsT>(value));
183 return *this;
184 }
186
188
191 inline const ScalingConfigurationRequest& GetScalingConfiguration() const { return m_scalingConfiguration; }
192 inline bool ScalingConfigurationHasBeenSet() const { return m_scalingConfigurationHasBeenSet; }
193 template <typename ScalingConfigurationT = ScalingConfigurationRequest>
194 void SetScalingConfiguration(ScalingConfigurationT&& value) {
195 m_scalingConfigurationHasBeenSet = true;
196 m_scalingConfiguration = std::forward<ScalingConfigurationT>(value);
197 }
198 template <typename ScalingConfigurationT = ScalingConfigurationRequest>
200 SetScalingConfiguration(std::forward<ScalingConfigurationT>(value));
201 return *this;
202 }
204
206
215 inline const Aws::String& GetIamInstanceProfileArn() const { return m_iamInstanceProfileArn; }
216 inline bool IamInstanceProfileArnHasBeenSet() const { return m_iamInstanceProfileArnHasBeenSet; }
217 template <typename IamInstanceProfileArnT = Aws::String>
218 void SetIamInstanceProfileArn(IamInstanceProfileArnT&& value) {
219 m_iamInstanceProfileArnHasBeenSet = true;
220 m_iamInstanceProfileArn = std::forward<IamInstanceProfileArnT>(value);
221 }
222 template <typename IamInstanceProfileArnT = Aws::String>
224 SetIamInstanceProfileArn(std::forward<IamInstanceProfileArnT>(value));
225 return *this;
226 }
228
230
233 inline const UpdateComputeNodeGroupSlurmConfigurationRequest& GetSlurmConfiguration() const { return m_slurmConfiguration; }
234 inline bool SlurmConfigurationHasBeenSet() const { return m_slurmConfigurationHasBeenSet; }
235 template <typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
236 void SetSlurmConfiguration(SlurmConfigurationT&& value) {
237 m_slurmConfigurationHasBeenSet = true;
238 m_slurmConfiguration = std::forward<SlurmConfigurationT>(value);
239 }
240 template <typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
242 SetSlurmConfiguration(std::forward<SlurmConfigurationT>(value));
243 return *this;
244 }
246
248
254 inline const UpdateNodeLifecycleActionsRequest& GetNodeLifecycleActions() const { return m_nodeLifecycleActions; }
255 inline bool NodeLifecycleActionsHasBeenSet() const { return m_nodeLifecycleActionsHasBeenSet; }
256 template <typename NodeLifecycleActionsT = UpdateNodeLifecycleActionsRequest>
257 void SetNodeLifecycleActions(NodeLifecycleActionsT&& value) {
258 m_nodeLifecycleActionsHasBeenSet = true;
259 m_nodeLifecycleActions = std::forward<NodeLifecycleActionsT>(value);
260 }
261 template <typename NodeLifecycleActionsT = UpdateNodeLifecycleActionsRequest>
263 SetNodeLifecycleActions(std::forward<NodeLifecycleActionsT>(value));
264 return *this;
265 }
267
269
278 inline const Aws::String& GetClientToken() const { return m_clientToken; }
279 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
280 template <typename ClientTokenT = Aws::String>
281 void SetClientToken(ClientTokenT&& value) {
282 m_clientTokenHasBeenSet = true;
283 m_clientToken = std::forward<ClientTokenT>(value);
284 }
285 template <typename ClientTokenT = Aws::String>
287 SetClientToken(std::forward<ClientTokenT>(value));
288 return *this;
289 }
291 private:
292 Aws::String m_clusterIdentifier;
293
294 Aws::String m_computeNodeGroupIdentifier;
295
296 Aws::String m_amiId;
297
298 Aws::Vector<Aws::String> m_subnetIds;
299
300 CustomLaunchTemplate m_customLaunchTemplate;
301
302 PurchaseOption m_purchaseOption{PurchaseOption::NOT_SET};
303
304 SpotOptions m_spotOptions;
305
306 ScalingConfigurationRequest m_scalingConfiguration;
307
308 Aws::String m_iamInstanceProfileArn;
309
310 UpdateComputeNodeGroupSlurmConfigurationRequest m_slurmConfiguration;
311
312 UpdateNodeLifecycleActionsRequest m_nodeLifecycleActions;
313
315 bool m_clusterIdentifierHasBeenSet = false;
316 bool m_computeNodeGroupIdentifierHasBeenSet = false;
317 bool m_amiIdHasBeenSet = false;
318 bool m_subnetIdsHasBeenSet = false;
319 bool m_customLaunchTemplateHasBeenSet = false;
320 bool m_purchaseOptionHasBeenSet = false;
321 bool m_spotOptionsHasBeenSet = false;
322 bool m_scalingConfigurationHasBeenSet = false;
323 bool m_iamInstanceProfileArnHasBeenSet = false;
324 bool m_slurmConfigurationHasBeenSet = false;
325 bool m_nodeLifecycleActionsHasBeenSet = false;
326 bool m_clientTokenHasBeenSet = true;
327};
328
329} // namespace Model
330} // namespace PCS
331} // namespace Aws
const Aws::Vector< Aws::String > & GetSubnetIds() const
UpdateComputeNodeGroupRequest & WithNodeLifecycleActions(NodeLifecycleActionsT &&value)
const CustomLaunchTemplate & GetCustomLaunchTemplate() const
AWS_PCS_API Aws::String SerializePayload() const override
void SetComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT &&value)
UpdateComputeNodeGroupRequest & WithSlurmConfiguration(SlurmConfigurationT &&value)
UpdateComputeNodeGroupRequest & WithSpotOptions(SpotOptionsT &&value)
UpdateComputeNodeGroupRequest & WithScalingConfiguration(ScalingConfigurationT &&value)
const ScalingConfigurationRequest & GetScalingConfiguration() const
const UpdateNodeLifecycleActionsRequest & GetNodeLifecycleActions() const
UpdateComputeNodeGroupRequest & WithAmiId(AmiIdT &&value)
UpdateComputeNodeGroupRequest & WithPurchaseOption(PurchaseOption value)
UpdateComputeNodeGroupRequest & WithClientToken(ClientTokenT &&value)
UpdateComputeNodeGroupRequest & WithComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT &&value)
UpdateComputeNodeGroupRequest & WithCustomLaunchTemplate(CustomLaunchTemplateT &&value)
UpdateComputeNodeGroupRequest & WithSubnetIds(SubnetIdsT &&value)
void SetIamInstanceProfileArn(IamInstanceProfileArnT &&value)
UpdateComputeNodeGroupRequest & AddSubnetIds(SubnetIdsT &&value)
UpdateComputeNodeGroupRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
UpdateComputeNodeGroupRequest & WithIamInstanceProfileArn(IamInstanceProfileArnT &&value)
virtual const char * GetServiceRequestName() const override
AWS_PCS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const UpdateComputeNodeGroupSlurmConfigurationRequest & GetSlurmConfiguration() const
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector