AWS SDK for C++

AWS SDK for C++ Version 1.11.834

Loading...
Searching...
No Matches
UpdateClusterRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/sagemaker/SageMakerRequest.h>
10#include <aws/sagemaker/SageMaker_EXPORTS.h>
11#include <aws/sagemaker/model/ClusterAutoScalingConfig.h>
12#include <aws/sagemaker/model/ClusterInstanceGroupSpecification.h>
13#include <aws/sagemaker/model/ClusterNodeProvisioningMode.h>
14#include <aws/sagemaker/model/ClusterNodeRecovery.h>
15#include <aws/sagemaker/model/ClusterOrchestrator.h>
16#include <aws/sagemaker/model/ClusterRestrictedInstanceGroupSpecification.h>
17#include <aws/sagemaker/model/ClusterRestrictedInstanceGroupsConfig.h>
18#include <aws/sagemaker/model/ClusterTieredStorageConfig.h>
19
20#include <utility>
21
22namespace Aws {
23namespace SageMaker {
24namespace Model {
25
29 public:
30 AWS_SAGEMAKER_API UpdateClusterRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "UpdateCluster"; }
37
38 AWS_SAGEMAKER_API Aws::String SerializePayload() const override;
39
41
43
46 inline const Aws::String& GetClusterName() const { return m_clusterName; }
47 inline bool ClusterNameHasBeenSet() const { return m_clusterNameHasBeenSet; }
48 template <typename ClusterNameT = Aws::String>
49 void SetClusterName(ClusterNameT&& value) {
50 m_clusterNameHasBeenSet = true;
51 m_clusterName = std::forward<ClusterNameT>(value);
52 }
53 template <typename ClusterNameT = Aws::String>
54 UpdateClusterRequest& WithClusterName(ClusterNameT&& value) {
55 SetClusterName(std::forward<ClusterNameT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::Vector<ClusterInstanceGroupSpecification>& GetInstanceGroups() const { return m_instanceGroups; }
65 inline bool InstanceGroupsHasBeenSet() const { return m_instanceGroupsHasBeenSet; }
66 template <typename InstanceGroupsT = Aws::Vector<ClusterInstanceGroupSpecification>>
67 void SetInstanceGroups(InstanceGroupsT&& value) {
68 m_instanceGroupsHasBeenSet = true;
69 m_instanceGroups = std::forward<InstanceGroupsT>(value);
70 }
71 template <typename InstanceGroupsT = Aws::Vector<ClusterInstanceGroupSpecification>>
72 UpdateClusterRequest& WithInstanceGroups(InstanceGroupsT&& value) {
73 SetInstanceGroups(std::forward<InstanceGroupsT>(value));
74 return *this;
75 }
76 template <typename InstanceGroupsT = ClusterInstanceGroupSpecification>
77 UpdateClusterRequest& AddInstanceGroups(InstanceGroupsT&& value) {
78 m_instanceGroupsHasBeenSet = true;
79 m_instanceGroups.emplace_back(std::forward<InstanceGroupsT>(value));
80 return *this;
81 }
83
85
90 return m_restrictedInstanceGroups;
91 }
92 inline bool RestrictedInstanceGroupsHasBeenSet() const { return m_restrictedInstanceGroupsHasBeenSet; }
93 template <typename RestrictedInstanceGroupsT = Aws::Vector<ClusterRestrictedInstanceGroupSpecification>>
94 void SetRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) {
95 m_restrictedInstanceGroupsHasBeenSet = true;
96 m_restrictedInstanceGroups = std::forward<RestrictedInstanceGroupsT>(value);
97 }
98 template <typename RestrictedInstanceGroupsT = Aws::Vector<ClusterRestrictedInstanceGroupSpecification>>
99 UpdateClusterRequest& WithRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) {
100 SetRestrictedInstanceGroups(std::forward<RestrictedInstanceGroupsT>(value));
101 return *this;
102 }
103 template <typename RestrictedInstanceGroupsT = ClusterRestrictedInstanceGroupSpecification>
104 UpdateClusterRequest& AddRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) {
105 m_restrictedInstanceGroupsHasBeenSet = true;
106 m_restrictedInstanceGroups.emplace_back(std::forward<RestrictedInstanceGroupsT>(value));
107 return *this;
108 }
110
112
116 inline const ClusterRestrictedInstanceGroupsConfig& GetRestrictedInstanceGroupsConfig() const { return m_restrictedInstanceGroupsConfig; }
117 inline bool RestrictedInstanceGroupsConfigHasBeenSet() const { return m_restrictedInstanceGroupsConfigHasBeenSet; }
118 template <typename RestrictedInstanceGroupsConfigT = ClusterRestrictedInstanceGroupsConfig>
119 void SetRestrictedInstanceGroupsConfig(RestrictedInstanceGroupsConfigT&& value) {
120 m_restrictedInstanceGroupsConfigHasBeenSet = true;
121 m_restrictedInstanceGroupsConfig = std::forward<RestrictedInstanceGroupsConfigT>(value);
122 }
123 template <typename RestrictedInstanceGroupsConfigT = ClusterRestrictedInstanceGroupsConfig>
124 UpdateClusterRequest& WithRestrictedInstanceGroupsConfig(RestrictedInstanceGroupsConfigT&& value) {
125 SetRestrictedInstanceGroupsConfig(std::forward<RestrictedInstanceGroupsConfigT>(value));
126 return *this;
127 }
129
131
136 inline const ClusterTieredStorageConfig& GetTieredStorageConfig() const { return m_tieredStorageConfig; }
137 inline bool TieredStorageConfigHasBeenSet() const { return m_tieredStorageConfigHasBeenSet; }
138 template <typename TieredStorageConfigT = ClusterTieredStorageConfig>
139 void SetTieredStorageConfig(TieredStorageConfigT&& value) {
140 m_tieredStorageConfigHasBeenSet = true;
141 m_tieredStorageConfig = std::forward<TieredStorageConfigT>(value);
142 }
143 template <typename TieredStorageConfigT = ClusterTieredStorageConfig>
144 UpdateClusterRequest& WithTieredStorageConfig(TieredStorageConfigT&& value) {
145 SetTieredStorageConfig(std::forward<TieredStorageConfigT>(value));
146 return *this;
147 }
149
151
154 inline ClusterNodeRecovery GetNodeRecovery() const { return m_nodeRecovery; }
155 inline bool NodeRecoveryHasBeenSet() const { return m_nodeRecoveryHasBeenSet; }
157 m_nodeRecoveryHasBeenSet = true;
158 m_nodeRecovery = value;
159 }
161 SetNodeRecovery(value);
162 return *this;
163 }
165
167
171 inline const Aws::Vector<Aws::String>& GetInstanceGroupsToDelete() const { return m_instanceGroupsToDelete; }
172 inline bool InstanceGroupsToDeleteHasBeenSet() const { return m_instanceGroupsToDeleteHasBeenSet; }
173 template <typename InstanceGroupsToDeleteT = Aws::Vector<Aws::String>>
174 void SetInstanceGroupsToDelete(InstanceGroupsToDeleteT&& value) {
175 m_instanceGroupsToDeleteHasBeenSet = true;
176 m_instanceGroupsToDelete = std::forward<InstanceGroupsToDeleteT>(value);
177 }
178 template <typename InstanceGroupsToDeleteT = Aws::Vector<Aws::String>>
179 UpdateClusterRequest& WithInstanceGroupsToDelete(InstanceGroupsToDeleteT&& value) {
180 SetInstanceGroupsToDelete(std::forward<InstanceGroupsToDeleteT>(value));
181 return *this;
182 }
183 template <typename InstanceGroupsToDeleteT = Aws::String>
184 UpdateClusterRequest& AddInstanceGroupsToDelete(InstanceGroupsToDeleteT&& value) {
185 m_instanceGroupsToDeleteHasBeenSet = true;
186 m_instanceGroupsToDelete.emplace_back(std::forward<InstanceGroupsToDeleteT>(value));
187 return *this;
188 }
190
192
200 inline ClusterNodeProvisioningMode GetNodeProvisioningMode() const { return m_nodeProvisioningMode; }
201 inline bool NodeProvisioningModeHasBeenSet() const { return m_nodeProvisioningModeHasBeenSet; }
203 m_nodeProvisioningModeHasBeenSet = true;
204 m_nodeProvisioningMode = value;
205 }
208 return *this;
209 }
211
213
218 inline const Aws::String& GetClusterRole() const { return m_clusterRole; }
219 inline bool ClusterRoleHasBeenSet() const { return m_clusterRoleHasBeenSet; }
220 template <typename ClusterRoleT = Aws::String>
221 void SetClusterRole(ClusterRoleT&& value) {
222 m_clusterRoleHasBeenSet = true;
223 m_clusterRole = std::forward<ClusterRoleT>(value);
224 }
225 template <typename ClusterRoleT = Aws::String>
226 UpdateClusterRequest& WithClusterRole(ClusterRoleT&& value) {
227 SetClusterRole(std::forward<ClusterRoleT>(value));
228 return *this;
229 }
231
233
237 inline const ClusterAutoScalingConfig& GetAutoScaling() const { return m_autoScaling; }
238 inline bool AutoScalingHasBeenSet() const { return m_autoScalingHasBeenSet; }
239 template <typename AutoScalingT = ClusterAutoScalingConfig>
240 void SetAutoScaling(AutoScalingT&& value) {
241 m_autoScalingHasBeenSet = true;
242 m_autoScaling = std::forward<AutoScalingT>(value);
243 }
244 template <typename AutoScalingT = ClusterAutoScalingConfig>
245 UpdateClusterRequest& WithAutoScaling(AutoScalingT&& value) {
246 SetAutoScaling(std::forward<AutoScalingT>(value));
247 return *this;
248 }
250
252
253 inline const ClusterOrchestrator& GetOrchestrator() const { return m_orchestrator; }
254 inline bool OrchestratorHasBeenSet() const { return m_orchestratorHasBeenSet; }
255 template <typename OrchestratorT = ClusterOrchestrator>
256 void SetOrchestrator(OrchestratorT&& value) {
257 m_orchestratorHasBeenSet = true;
258 m_orchestrator = std::forward<OrchestratorT>(value);
259 }
260 template <typename OrchestratorT = ClusterOrchestrator>
261 UpdateClusterRequest& WithOrchestrator(OrchestratorT&& value) {
262 SetOrchestrator(std::forward<OrchestratorT>(value));
263 return *this;
264 }
266 private:
267 Aws::String m_clusterName;
268
270
272
273 ClusterRestrictedInstanceGroupsConfig m_restrictedInstanceGroupsConfig;
274
275 ClusterTieredStorageConfig m_tieredStorageConfig;
276
278
279 Aws::Vector<Aws::String> m_instanceGroupsToDelete;
280
282
283 Aws::String m_clusterRole;
284
285 ClusterAutoScalingConfig m_autoScaling;
286
287 ClusterOrchestrator m_orchestrator;
288 bool m_clusterNameHasBeenSet = false;
289 bool m_instanceGroupsHasBeenSet = false;
290 bool m_restrictedInstanceGroupsHasBeenSet = false;
291 bool m_restrictedInstanceGroupsConfigHasBeenSet = false;
292 bool m_tieredStorageConfigHasBeenSet = false;
293 bool m_nodeRecoveryHasBeenSet = false;
294 bool m_instanceGroupsToDeleteHasBeenSet = false;
295 bool m_nodeProvisioningModeHasBeenSet = false;
296 bool m_clusterRoleHasBeenSet = false;
297 bool m_autoScalingHasBeenSet = false;
298 bool m_orchestratorHasBeenSet = false;
299};
300
301} // namespace Model
302} // namespace SageMaker
303} // namespace Aws
UpdateClusterRequest & WithNodeProvisioningMode(ClusterNodeProvisioningMode value)
UpdateClusterRequest & WithNodeRecovery(ClusterNodeRecovery value)
UpdateClusterRequest & WithClusterRole(ClusterRoleT &&value)
void SetNodeProvisioningMode(ClusterNodeProvisioningMode value)
const Aws::Vector< Aws::String > & GetInstanceGroupsToDelete() const
void SetTieredStorageConfig(TieredStorageConfigT &&value)
ClusterNodeProvisioningMode GetNodeProvisioningMode() const
UpdateClusterRequest & WithAutoScaling(AutoScalingT &&value)
AWS_SAGEMAKER_API UpdateClusterRequest()=default
UpdateClusterRequest & WithOrchestrator(OrchestratorT &&value)
AWS_SAGEMAKER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
UpdateClusterRequest & WithTieredStorageConfig(TieredStorageConfigT &&value)
void SetRestrictedInstanceGroups(RestrictedInstanceGroupsT &&value)
void SetNodeRecovery(ClusterNodeRecovery value)
UpdateClusterRequest & WithInstanceGroupsToDelete(InstanceGroupsToDeleteT &&value)
void SetRestrictedInstanceGroupsConfig(RestrictedInstanceGroupsConfigT &&value)
const ClusterRestrictedInstanceGroupsConfig & GetRestrictedInstanceGroupsConfig() const
UpdateClusterRequest & WithInstanceGroups(InstanceGroupsT &&value)
UpdateClusterRequest & AddInstanceGroupsToDelete(InstanceGroupsToDeleteT &&value)
const Aws::Vector< ClusterInstanceGroupSpecification > & GetInstanceGroups() const
UpdateClusterRequest & WithRestrictedInstanceGroups(RestrictedInstanceGroupsT &&value)
void SetInstanceGroups(InstanceGroupsT &&value)
UpdateClusterRequest & AddRestrictedInstanceGroups(RestrictedInstanceGroupsT &&value)
void SetInstanceGroupsToDelete(InstanceGroupsToDeleteT &&value)
UpdateClusterRequest & WithClusterName(ClusterNameT &&value)
const ClusterTieredStorageConfig & GetTieredStorageConfig() const
virtual const char * GetServiceRequestName() const override
const ClusterOrchestrator & GetOrchestrator() const
UpdateClusterRequest & WithRestrictedInstanceGroupsConfig(RestrictedInstanceGroupsConfigT &&value)
const Aws::Vector< ClusterRestrictedInstanceGroupSpecification > & GetRestrictedInstanceGroups() const
UpdateClusterRequest & AddInstanceGroups(InstanceGroupsT &&value)
const ClusterAutoScalingConfig & GetAutoScaling() const
AWS_SAGEMAKER_API Aws::String SerializePayload() const override
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