AWS SDK for C++

AWS SDK for C++ Version 1.11.743

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
150 inline PurchaseOption GetPurchaseOption() const { return m_purchaseOption; }
151 inline bool PurchaseOptionHasBeenSet() const { return m_purchaseOptionHasBeenSet; }
153 m_purchaseOptionHasBeenSet = true;
154 m_purchaseOption = value;
155 }
157 SetPurchaseOption(value);
158 return *this;
159 }
161
163
164 inline const SpotOptions& GetSpotOptions() const { return m_spotOptions; }
165 inline bool SpotOptionsHasBeenSet() const { return m_spotOptionsHasBeenSet; }
166 template <typename SpotOptionsT = SpotOptions>
167 void SetSpotOptions(SpotOptionsT&& value) {
168 m_spotOptionsHasBeenSet = true;
169 m_spotOptions = std::forward<SpotOptionsT>(value);
170 }
171 template <typename SpotOptionsT = SpotOptions>
173 SetSpotOptions(std::forward<SpotOptionsT>(value));
174 return *this;
175 }
177
179
182 inline const ScalingConfigurationRequest& GetScalingConfiguration() const { return m_scalingConfiguration; }
183 inline bool ScalingConfigurationHasBeenSet() const { return m_scalingConfigurationHasBeenSet; }
184 template <typename ScalingConfigurationT = ScalingConfigurationRequest>
185 void SetScalingConfiguration(ScalingConfigurationT&& value) {
186 m_scalingConfigurationHasBeenSet = true;
187 m_scalingConfiguration = std::forward<ScalingConfigurationT>(value);
188 }
189 template <typename ScalingConfigurationT = ScalingConfigurationRequest>
191 SetScalingConfiguration(std::forward<ScalingConfigurationT>(value));
192 return *this;
193 }
195
197
206 inline const Aws::String& GetIamInstanceProfileArn() const { return m_iamInstanceProfileArn; }
207 inline bool IamInstanceProfileArnHasBeenSet() const { return m_iamInstanceProfileArnHasBeenSet; }
208 template <typename IamInstanceProfileArnT = Aws::String>
209 void SetIamInstanceProfileArn(IamInstanceProfileArnT&& value) {
210 m_iamInstanceProfileArnHasBeenSet = true;
211 m_iamInstanceProfileArn = std::forward<IamInstanceProfileArnT>(value);
212 }
213 template <typename IamInstanceProfileArnT = Aws::String>
215 SetIamInstanceProfileArn(std::forward<IamInstanceProfileArnT>(value));
216 return *this;
217 }
219
221
224 inline const UpdateComputeNodeGroupSlurmConfigurationRequest& GetSlurmConfiguration() const { return m_slurmConfiguration; }
225 inline bool SlurmConfigurationHasBeenSet() const { return m_slurmConfigurationHasBeenSet; }
226 template <typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
227 void SetSlurmConfiguration(SlurmConfigurationT&& value) {
228 m_slurmConfigurationHasBeenSet = true;
229 m_slurmConfiguration = std::forward<SlurmConfigurationT>(value);
230 }
231 template <typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
233 SetSlurmConfiguration(std::forward<SlurmConfigurationT>(value));
234 return *this;
235 }
237
239
248 inline const Aws::String& GetClientToken() const { return m_clientToken; }
249 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
250 template <typename ClientTokenT = Aws::String>
251 void SetClientToken(ClientTokenT&& value) {
252 m_clientTokenHasBeenSet = true;
253 m_clientToken = std::forward<ClientTokenT>(value);
254 }
255 template <typename ClientTokenT = Aws::String>
257 SetClientToken(std::forward<ClientTokenT>(value));
258 return *this;
259 }
261 private:
262 Aws::String m_clusterIdentifier;
263
264 Aws::String m_computeNodeGroupIdentifier;
265
266 Aws::String m_amiId;
267
268 Aws::Vector<Aws::String> m_subnetIds;
269
270 CustomLaunchTemplate m_customLaunchTemplate;
271
272 PurchaseOption m_purchaseOption{PurchaseOption::NOT_SET};
273
274 SpotOptions m_spotOptions;
275
276 ScalingConfigurationRequest m_scalingConfiguration;
277
278 Aws::String m_iamInstanceProfileArn;
279
280 UpdateComputeNodeGroupSlurmConfigurationRequest m_slurmConfiguration;
281
283 bool m_clusterIdentifierHasBeenSet = false;
284 bool m_computeNodeGroupIdentifierHasBeenSet = false;
285 bool m_amiIdHasBeenSet = false;
286 bool m_subnetIdsHasBeenSet = false;
287 bool m_customLaunchTemplateHasBeenSet = false;
288 bool m_purchaseOptionHasBeenSet = false;
289 bool m_spotOptionsHasBeenSet = false;
290 bool m_scalingConfigurationHasBeenSet = false;
291 bool m_iamInstanceProfileArnHasBeenSet = false;
292 bool m_slurmConfigurationHasBeenSet = false;
293 bool m_clientTokenHasBeenSet = true;
294};
295
296} // namespace Model
297} // namespace PCS
298} // 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