AWS SDK for C++

AWS SDK for C++ Version 1.11.812

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
18#include <utility>
19
20namespace Aws {
21namespace PCS {
22namespace Model {
23
27 public:
28 AWS_PCS_API UpdateComputeNodeGroupRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "UpdateComputeNodeGroup"; }
35
36 AWS_PCS_API Aws::String SerializePayload() const override;
37
39
41
44 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
45 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
46 template <typename ClusterIdentifierT = Aws::String>
47 void SetClusterIdentifier(ClusterIdentifierT&& value) {
48 m_clusterIdentifierHasBeenSet = true;
49 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
50 }
51 template <typename ClusterIdentifierT = Aws::String>
53 SetClusterIdentifier(std::forward<ClusterIdentifierT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetComputeNodeGroupIdentifier() const { return m_computeNodeGroupIdentifier; }
63 inline bool ComputeNodeGroupIdentifierHasBeenSet() const { return m_computeNodeGroupIdentifierHasBeenSet; }
64 template <typename ComputeNodeGroupIdentifierT = Aws::String>
65 void SetComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT&& value) {
66 m_computeNodeGroupIdentifierHasBeenSet = true;
67 m_computeNodeGroupIdentifier = std::forward<ComputeNodeGroupIdentifierT>(value);
68 }
69 template <typename ComputeNodeGroupIdentifierT = Aws::String>
70 UpdateComputeNodeGroupRequest& WithComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT&& value) {
71 SetComputeNodeGroupIdentifier(std::forward<ComputeNodeGroupIdentifierT>(value));
72 return *this;
73 }
75
77
82 inline const Aws::String& GetAmiId() const { return m_amiId; }
83 inline bool AmiIdHasBeenSet() const { return m_amiIdHasBeenSet; }
84 template <typename AmiIdT = Aws::String>
85 void SetAmiId(AmiIdT&& value) {
86 m_amiIdHasBeenSet = true;
87 m_amiId = std::forward<AmiIdT>(value);
88 }
89 template <typename AmiIdT = Aws::String>
91 SetAmiId(std::forward<AmiIdT>(value));
92 return *this;
93 }
95
97
101 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
102 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
103 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
104 void SetSubnetIds(SubnetIdsT&& value) {
105 m_subnetIdsHasBeenSet = true;
106 m_subnetIds = std::forward<SubnetIdsT>(value);
107 }
108 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
110 SetSubnetIds(std::forward<SubnetIdsT>(value));
111 return *this;
112 }
113 template <typename SubnetIdsT = Aws::String>
115 m_subnetIdsHasBeenSet = true;
116 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
117 return *this;
118 }
120
122
123 inline const CustomLaunchTemplate& GetCustomLaunchTemplate() const { return m_customLaunchTemplate; }
124 inline bool CustomLaunchTemplateHasBeenSet() const { return m_customLaunchTemplateHasBeenSet; }
125 template <typename CustomLaunchTemplateT = CustomLaunchTemplate>
126 void SetCustomLaunchTemplate(CustomLaunchTemplateT&& value) {
127 m_customLaunchTemplateHasBeenSet = true;
128 m_customLaunchTemplate = std::forward<CustomLaunchTemplateT>(value);
129 }
130 template <typename CustomLaunchTemplateT = CustomLaunchTemplate>
132 SetCustomLaunchTemplate(std::forward<CustomLaunchTemplateT>(value));
133 return *this;
134 }
136
138
158 inline PurchaseOption GetPurchaseOption() const { return m_purchaseOption; }
159 inline bool PurchaseOptionHasBeenSet() const { return m_purchaseOptionHasBeenSet; }
161 m_purchaseOptionHasBeenSet = true;
162 m_purchaseOption = value;
163 }
165 SetPurchaseOption(value);
166 return *this;
167 }
169
171
172 inline const SpotOptions& GetSpotOptions() const { return m_spotOptions; }
173 inline bool SpotOptionsHasBeenSet() const { return m_spotOptionsHasBeenSet; }
174 template <typename SpotOptionsT = SpotOptions>
175 void SetSpotOptions(SpotOptionsT&& value) {
176 m_spotOptionsHasBeenSet = true;
177 m_spotOptions = std::forward<SpotOptionsT>(value);
178 }
179 template <typename SpotOptionsT = SpotOptions>
181 SetSpotOptions(std::forward<SpotOptionsT>(value));
182 return *this;
183 }
185
187
190 inline const ScalingConfigurationRequest& GetScalingConfiguration() const { return m_scalingConfiguration; }
191 inline bool ScalingConfigurationHasBeenSet() const { return m_scalingConfigurationHasBeenSet; }
192 template <typename ScalingConfigurationT = ScalingConfigurationRequest>
193 void SetScalingConfiguration(ScalingConfigurationT&& value) {
194 m_scalingConfigurationHasBeenSet = true;
195 m_scalingConfiguration = std::forward<ScalingConfigurationT>(value);
196 }
197 template <typename ScalingConfigurationT = ScalingConfigurationRequest>
199 SetScalingConfiguration(std::forward<ScalingConfigurationT>(value));
200 return *this;
201 }
203
205
214 inline const Aws::String& GetIamInstanceProfileArn() const { return m_iamInstanceProfileArn; }
215 inline bool IamInstanceProfileArnHasBeenSet() const { return m_iamInstanceProfileArnHasBeenSet; }
216 template <typename IamInstanceProfileArnT = Aws::String>
217 void SetIamInstanceProfileArn(IamInstanceProfileArnT&& value) {
218 m_iamInstanceProfileArnHasBeenSet = true;
219 m_iamInstanceProfileArn = std::forward<IamInstanceProfileArnT>(value);
220 }
221 template <typename IamInstanceProfileArnT = Aws::String>
223 SetIamInstanceProfileArn(std::forward<IamInstanceProfileArnT>(value));
224 return *this;
225 }
227
229
232 inline const UpdateComputeNodeGroupSlurmConfigurationRequest& GetSlurmConfiguration() const { return m_slurmConfiguration; }
233 inline bool SlurmConfigurationHasBeenSet() const { return m_slurmConfigurationHasBeenSet; }
234 template <typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
235 void SetSlurmConfiguration(SlurmConfigurationT&& value) {
236 m_slurmConfigurationHasBeenSet = true;
237 m_slurmConfiguration = std::forward<SlurmConfigurationT>(value);
238 }
239 template <typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
241 SetSlurmConfiguration(std::forward<SlurmConfigurationT>(value));
242 return *this;
243 }
245
247
256 inline const Aws::String& GetClientToken() const { return m_clientToken; }
257 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
258 template <typename ClientTokenT = Aws::String>
259 void SetClientToken(ClientTokenT&& value) {
260 m_clientTokenHasBeenSet = true;
261 m_clientToken = std::forward<ClientTokenT>(value);
262 }
263 template <typename ClientTokenT = Aws::String>
265 SetClientToken(std::forward<ClientTokenT>(value));
266 return *this;
267 }
269 private:
270 Aws::String m_clusterIdentifier;
271
272 Aws::String m_computeNodeGroupIdentifier;
273
274 Aws::String m_amiId;
275
276 Aws::Vector<Aws::String> m_subnetIds;
277
278 CustomLaunchTemplate m_customLaunchTemplate;
279
280 PurchaseOption m_purchaseOption{PurchaseOption::NOT_SET};
281
282 SpotOptions m_spotOptions;
283
284 ScalingConfigurationRequest m_scalingConfiguration;
285
286 Aws::String m_iamInstanceProfileArn;
287
288 UpdateComputeNodeGroupSlurmConfigurationRequest m_slurmConfiguration;
289
291 bool m_clusterIdentifierHasBeenSet = false;
292 bool m_computeNodeGroupIdentifierHasBeenSet = false;
293 bool m_amiIdHasBeenSet = false;
294 bool m_subnetIdsHasBeenSet = false;
295 bool m_customLaunchTemplateHasBeenSet = false;
296 bool m_purchaseOptionHasBeenSet = false;
297 bool m_spotOptionsHasBeenSet = false;
298 bool m_scalingConfigurationHasBeenSet = false;
299 bool m_iamInstanceProfileArnHasBeenSet = false;
300 bool m_slurmConfigurationHasBeenSet = false;
301 bool m_clientTokenHasBeenSet = true;
302};
303
304} // namespace Model
305} // namespace PCS
306} // namespace Aws
const Aws::Vector< Aws::String > & GetSubnetIds() const
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
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