AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
UpdateComputeNodeGroupRequest.h
1
6#pragma once
7#include <aws/pcs/PCS_EXPORTS.h>
8#include <aws/pcs/PCSRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/pcs/model/CustomLaunchTemplate.h>
12#include <aws/pcs/model/PurchaseOption.h>
13#include <aws/pcs/model/SpotOptions.h>
14#include <aws/pcs/model/ScalingConfigurationRequest.h>
15#include <aws/pcs/model/UpdateComputeNodeGroupSlurmConfigurationRequest.h>
16#include <utility>
17#include <aws/core/utils/UUID.h>
18
19namespace Aws
20{
21namespace PCS
22{
23namespace Model
24{
25
29 {
30 public:
31 AWS_PCS_API UpdateComputeNodeGroupRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "UpdateComputeNodeGroup"; }
38
39 AWS_PCS_API Aws::String SerializePayload() const override;
40
42
43
45
48 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
49 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
50 template<typename ClusterIdentifierT = Aws::String>
51 void SetClusterIdentifier(ClusterIdentifierT&& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = std::forward<ClusterIdentifierT>(value); }
52 template<typename ClusterIdentifierT = Aws::String>
53 UpdateComputeNodeGroupRequest& WithClusterIdentifier(ClusterIdentifierT&& value) { SetClusterIdentifier(std::forward<ClusterIdentifierT>(value)); return *this;}
55
57
60 inline const Aws::String& GetComputeNodeGroupIdentifier() const { return m_computeNodeGroupIdentifier; }
61 inline bool ComputeNodeGroupIdentifierHasBeenSet() const { return m_computeNodeGroupIdentifierHasBeenSet; }
62 template<typename ComputeNodeGroupIdentifierT = Aws::String>
63 void SetComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT&& value) { m_computeNodeGroupIdentifierHasBeenSet = true; m_computeNodeGroupIdentifier = std::forward<ComputeNodeGroupIdentifierT>(value); }
64 template<typename ComputeNodeGroupIdentifierT = Aws::String>
65 UpdateComputeNodeGroupRequest& WithComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT&& value) { SetComputeNodeGroupIdentifier(std::forward<ComputeNodeGroupIdentifierT>(value)); return *this;}
67
69
74 inline const Aws::String& GetAmiId() const { return m_amiId; }
75 inline bool AmiIdHasBeenSet() const { return m_amiIdHasBeenSet; }
76 template<typename AmiIdT = Aws::String>
77 void SetAmiId(AmiIdT&& value) { m_amiIdHasBeenSet = true; m_amiId = std::forward<AmiIdT>(value); }
78 template<typename AmiIdT = Aws::String>
79 UpdateComputeNodeGroupRequest& WithAmiId(AmiIdT&& value) { SetAmiId(std::forward<AmiIdT>(value)); return *this;}
81
83
87 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
88 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
89 template<typename SubnetIdsT = Aws::Vector<Aws::String>>
90 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::forward<SubnetIdsT>(value); }
91 template<typename SubnetIdsT = Aws::Vector<Aws::String>>
92 UpdateComputeNodeGroupRequest& WithSubnetIds(SubnetIdsT&& value) { SetSubnetIds(std::forward<SubnetIdsT>(value)); return *this;}
93 template<typename SubnetIdsT = Aws::String>
94 UpdateComputeNodeGroupRequest& AddSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value)); return *this; }
96
98
99 inline const CustomLaunchTemplate& GetCustomLaunchTemplate() const { return m_customLaunchTemplate; }
100 inline bool CustomLaunchTemplateHasBeenSet() const { return m_customLaunchTemplateHasBeenSet; }
101 template<typename CustomLaunchTemplateT = CustomLaunchTemplate>
102 void SetCustomLaunchTemplate(CustomLaunchTemplateT&& value) { m_customLaunchTemplateHasBeenSet = true; m_customLaunchTemplate = std::forward<CustomLaunchTemplateT>(value); }
103 template<typename CustomLaunchTemplateT = CustomLaunchTemplate>
104 UpdateComputeNodeGroupRequest& WithCustomLaunchTemplate(CustomLaunchTemplateT&& value) { SetCustomLaunchTemplate(std::forward<CustomLaunchTemplateT>(value)); return *this;}
106
108
115 inline PurchaseOption GetPurchaseOption() const { return m_purchaseOption; }
116 inline bool PurchaseOptionHasBeenSet() const { return m_purchaseOptionHasBeenSet; }
117 inline void SetPurchaseOption(PurchaseOption value) { m_purchaseOptionHasBeenSet = true; m_purchaseOption = value; }
120
122
123 inline const SpotOptions& GetSpotOptions() const { return m_spotOptions; }
124 inline bool SpotOptionsHasBeenSet() const { return m_spotOptionsHasBeenSet; }
125 template<typename SpotOptionsT = SpotOptions>
126 void SetSpotOptions(SpotOptionsT&& value) { m_spotOptionsHasBeenSet = true; m_spotOptions = std::forward<SpotOptionsT>(value); }
127 template<typename SpotOptionsT = SpotOptions>
128 UpdateComputeNodeGroupRequest& WithSpotOptions(SpotOptionsT&& value) { SetSpotOptions(std::forward<SpotOptionsT>(value)); return *this;}
130
132
135 inline const ScalingConfigurationRequest& GetScalingConfiguration() const { return m_scalingConfiguration; }
136 inline bool ScalingConfigurationHasBeenSet() const { return m_scalingConfigurationHasBeenSet; }
137 template<typename ScalingConfigurationT = ScalingConfigurationRequest>
138 void SetScalingConfiguration(ScalingConfigurationT&& value) { m_scalingConfigurationHasBeenSet = true; m_scalingConfiguration = std::forward<ScalingConfigurationT>(value); }
139 template<typename ScalingConfigurationT = ScalingConfigurationRequest>
140 UpdateComputeNodeGroupRequest& WithScalingConfiguration(ScalingConfigurationT&& value) { SetScalingConfiguration(std::forward<ScalingConfigurationT>(value)); return *this;}
142
144
156 inline const Aws::String& GetIamInstanceProfileArn() const { return m_iamInstanceProfileArn; }
157 inline bool IamInstanceProfileArnHasBeenSet() const { return m_iamInstanceProfileArnHasBeenSet; }
158 template<typename IamInstanceProfileArnT = Aws::String>
159 void SetIamInstanceProfileArn(IamInstanceProfileArnT&& value) { m_iamInstanceProfileArnHasBeenSet = true; m_iamInstanceProfileArn = std::forward<IamInstanceProfileArnT>(value); }
160 template<typename IamInstanceProfileArnT = Aws::String>
161 UpdateComputeNodeGroupRequest& WithIamInstanceProfileArn(IamInstanceProfileArnT&& value) { SetIamInstanceProfileArn(std::forward<IamInstanceProfileArnT>(value)); return *this;}
163
165
168 inline const UpdateComputeNodeGroupSlurmConfigurationRequest& GetSlurmConfiguration() const { return m_slurmConfiguration; }
169 inline bool SlurmConfigurationHasBeenSet() const { return m_slurmConfigurationHasBeenSet; }
170 template<typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
171 void SetSlurmConfiguration(SlurmConfigurationT&& value) { m_slurmConfigurationHasBeenSet = true; m_slurmConfiguration = std::forward<SlurmConfigurationT>(value); }
172 template<typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
173 UpdateComputeNodeGroupRequest& WithSlurmConfiguration(SlurmConfigurationT&& value) { SetSlurmConfiguration(std::forward<SlurmConfigurationT>(value)); return *this;}
175
177
186 inline const Aws::String& GetClientToken() const { return m_clientToken; }
187 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
188 template<typename ClientTokenT = Aws::String>
189 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
190 template<typename ClientTokenT = Aws::String>
191 UpdateComputeNodeGroupRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
193 private:
194
195 Aws::String m_clusterIdentifier;
196 bool m_clusterIdentifierHasBeenSet = false;
197
198 Aws::String m_computeNodeGroupIdentifier;
199 bool m_computeNodeGroupIdentifierHasBeenSet = false;
200
201 Aws::String m_amiId;
202 bool m_amiIdHasBeenSet = false;
203
204 Aws::Vector<Aws::String> m_subnetIds;
205 bool m_subnetIdsHasBeenSet = false;
206
207 CustomLaunchTemplate m_customLaunchTemplate;
208 bool m_customLaunchTemplateHasBeenSet = false;
209
210 PurchaseOption m_purchaseOption{PurchaseOption::NOT_SET};
211 bool m_purchaseOptionHasBeenSet = false;
212
213 SpotOptions m_spotOptions;
214 bool m_spotOptionsHasBeenSet = false;
215
216 ScalingConfigurationRequest m_scalingConfiguration;
217 bool m_scalingConfigurationHasBeenSet = false;
218
219 Aws::String m_iamInstanceProfileArn;
220 bool m_iamInstanceProfileArnHasBeenSet = false;
221
222 UpdateComputeNodeGroupSlurmConfigurationRequest m_slurmConfiguration;
223 bool m_slurmConfigurationHasBeenSet = false;
224
226 bool m_clientTokenHasBeenSet = true;
227 };
228
229} // namespace Model
230} // namespace PCS
231} // 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