AWS SDK for C++

AWS SDK for C++ Version 1.11.780

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/ClusterTieredStorageConfig.h>
18
19#include <utility>
20
21namespace Aws {
22namespace SageMaker {
23namespace Model {
24
28 public:
29 AWS_SAGEMAKER_API UpdateClusterRequest() = 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 "UpdateCluster"; }
36
37 AWS_SAGEMAKER_API Aws::String SerializePayload() const override;
38
40
42
45 inline const Aws::String& GetClusterName() const { return m_clusterName; }
46 inline bool ClusterNameHasBeenSet() const { return m_clusterNameHasBeenSet; }
47 template <typename ClusterNameT = Aws::String>
48 void SetClusterName(ClusterNameT&& value) {
49 m_clusterNameHasBeenSet = true;
50 m_clusterName = std::forward<ClusterNameT>(value);
51 }
52 template <typename ClusterNameT = Aws::String>
53 UpdateClusterRequest& WithClusterName(ClusterNameT&& value) {
54 SetClusterName(std::forward<ClusterNameT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::Vector<ClusterInstanceGroupSpecification>& GetInstanceGroups() const { return m_instanceGroups; }
64 inline bool InstanceGroupsHasBeenSet() const { return m_instanceGroupsHasBeenSet; }
65 template <typename InstanceGroupsT = Aws::Vector<ClusterInstanceGroupSpecification>>
66 void SetInstanceGroups(InstanceGroupsT&& value) {
67 m_instanceGroupsHasBeenSet = true;
68 m_instanceGroups = std::forward<InstanceGroupsT>(value);
69 }
70 template <typename InstanceGroupsT = Aws::Vector<ClusterInstanceGroupSpecification>>
71 UpdateClusterRequest& WithInstanceGroups(InstanceGroupsT&& value) {
72 SetInstanceGroups(std::forward<InstanceGroupsT>(value));
73 return *this;
74 }
75 template <typename InstanceGroupsT = ClusterInstanceGroupSpecification>
76 UpdateClusterRequest& AddInstanceGroups(InstanceGroupsT&& value) {
77 m_instanceGroupsHasBeenSet = true;
78 m_instanceGroups.emplace_back(std::forward<InstanceGroupsT>(value));
79 return *this;
80 }
82
84
89 return m_restrictedInstanceGroups;
90 }
91 inline bool RestrictedInstanceGroupsHasBeenSet() const { return m_restrictedInstanceGroupsHasBeenSet; }
92 template <typename RestrictedInstanceGroupsT = Aws::Vector<ClusterRestrictedInstanceGroupSpecification>>
93 void SetRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) {
94 m_restrictedInstanceGroupsHasBeenSet = true;
95 m_restrictedInstanceGroups = std::forward<RestrictedInstanceGroupsT>(value);
96 }
97 template <typename RestrictedInstanceGroupsT = Aws::Vector<ClusterRestrictedInstanceGroupSpecification>>
98 UpdateClusterRequest& WithRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) {
99 SetRestrictedInstanceGroups(std::forward<RestrictedInstanceGroupsT>(value));
100 return *this;
101 }
102 template <typename RestrictedInstanceGroupsT = ClusterRestrictedInstanceGroupSpecification>
103 UpdateClusterRequest& AddRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) {
104 m_restrictedInstanceGroupsHasBeenSet = true;
105 m_restrictedInstanceGroups.emplace_back(std::forward<RestrictedInstanceGroupsT>(value));
106 return *this;
107 }
109
111
116 inline const ClusterTieredStorageConfig& GetTieredStorageConfig() const { return m_tieredStorageConfig; }
117 inline bool TieredStorageConfigHasBeenSet() const { return m_tieredStorageConfigHasBeenSet; }
118 template <typename TieredStorageConfigT = ClusterTieredStorageConfig>
119 void SetTieredStorageConfig(TieredStorageConfigT&& value) {
120 m_tieredStorageConfigHasBeenSet = true;
121 m_tieredStorageConfig = std::forward<TieredStorageConfigT>(value);
122 }
123 template <typename TieredStorageConfigT = ClusterTieredStorageConfig>
124 UpdateClusterRequest& WithTieredStorageConfig(TieredStorageConfigT&& value) {
125 SetTieredStorageConfig(std::forward<TieredStorageConfigT>(value));
126 return *this;
127 }
129
131
134 inline ClusterNodeRecovery GetNodeRecovery() const { return m_nodeRecovery; }
135 inline bool NodeRecoveryHasBeenSet() const { return m_nodeRecoveryHasBeenSet; }
137 m_nodeRecoveryHasBeenSet = true;
138 m_nodeRecovery = value;
139 }
141 SetNodeRecovery(value);
142 return *this;
143 }
145
147
151 inline const Aws::Vector<Aws::String>& GetInstanceGroupsToDelete() const { return m_instanceGroupsToDelete; }
152 inline bool InstanceGroupsToDeleteHasBeenSet() const { return m_instanceGroupsToDeleteHasBeenSet; }
153 template <typename InstanceGroupsToDeleteT = Aws::Vector<Aws::String>>
154 void SetInstanceGroupsToDelete(InstanceGroupsToDeleteT&& value) {
155 m_instanceGroupsToDeleteHasBeenSet = true;
156 m_instanceGroupsToDelete = std::forward<InstanceGroupsToDeleteT>(value);
157 }
158 template <typename InstanceGroupsToDeleteT = Aws::Vector<Aws::String>>
159 UpdateClusterRequest& WithInstanceGroupsToDelete(InstanceGroupsToDeleteT&& value) {
160 SetInstanceGroupsToDelete(std::forward<InstanceGroupsToDeleteT>(value));
161 return *this;
162 }
163 template <typename InstanceGroupsToDeleteT = Aws::String>
164 UpdateClusterRequest& AddInstanceGroupsToDelete(InstanceGroupsToDeleteT&& value) {
165 m_instanceGroupsToDeleteHasBeenSet = true;
166 m_instanceGroupsToDelete.emplace_back(std::forward<InstanceGroupsToDeleteT>(value));
167 return *this;
168 }
170
172
180 inline ClusterNodeProvisioningMode GetNodeProvisioningMode() const { return m_nodeProvisioningMode; }
181 inline bool NodeProvisioningModeHasBeenSet() const { return m_nodeProvisioningModeHasBeenSet; }
183 m_nodeProvisioningModeHasBeenSet = true;
184 m_nodeProvisioningMode = value;
185 }
188 return *this;
189 }
191
193
198 inline const Aws::String& GetClusterRole() const { return m_clusterRole; }
199 inline bool ClusterRoleHasBeenSet() const { return m_clusterRoleHasBeenSet; }
200 template <typename ClusterRoleT = Aws::String>
201 void SetClusterRole(ClusterRoleT&& value) {
202 m_clusterRoleHasBeenSet = true;
203 m_clusterRole = std::forward<ClusterRoleT>(value);
204 }
205 template <typename ClusterRoleT = Aws::String>
206 UpdateClusterRequest& WithClusterRole(ClusterRoleT&& value) {
207 SetClusterRole(std::forward<ClusterRoleT>(value));
208 return *this;
209 }
211
213
217 inline const ClusterAutoScalingConfig& GetAutoScaling() const { return m_autoScaling; }
218 inline bool AutoScalingHasBeenSet() const { return m_autoScalingHasBeenSet; }
219 template <typename AutoScalingT = ClusterAutoScalingConfig>
220 void SetAutoScaling(AutoScalingT&& value) {
221 m_autoScalingHasBeenSet = true;
222 m_autoScaling = std::forward<AutoScalingT>(value);
223 }
224 template <typename AutoScalingT = ClusterAutoScalingConfig>
225 UpdateClusterRequest& WithAutoScaling(AutoScalingT&& value) {
226 SetAutoScaling(std::forward<AutoScalingT>(value));
227 return *this;
228 }
230
232
233 inline const ClusterOrchestrator& GetOrchestrator() const { return m_orchestrator; }
234 inline bool OrchestratorHasBeenSet() const { return m_orchestratorHasBeenSet; }
235 template <typename OrchestratorT = ClusterOrchestrator>
236 void SetOrchestrator(OrchestratorT&& value) {
237 m_orchestratorHasBeenSet = true;
238 m_orchestrator = std::forward<OrchestratorT>(value);
239 }
240 template <typename OrchestratorT = ClusterOrchestrator>
241 UpdateClusterRequest& WithOrchestrator(OrchestratorT&& value) {
242 SetOrchestrator(std::forward<OrchestratorT>(value));
243 return *this;
244 }
246 private:
247 Aws::String m_clusterName;
248
250
252
253 ClusterTieredStorageConfig m_tieredStorageConfig;
254
256
257 Aws::Vector<Aws::String> m_instanceGroupsToDelete;
258
260
261 Aws::String m_clusterRole;
262
263 ClusterAutoScalingConfig m_autoScaling;
264
265 ClusterOrchestrator m_orchestrator;
266 bool m_clusterNameHasBeenSet = false;
267 bool m_instanceGroupsHasBeenSet = false;
268 bool m_restrictedInstanceGroupsHasBeenSet = false;
269 bool m_tieredStorageConfigHasBeenSet = false;
270 bool m_nodeRecoveryHasBeenSet = false;
271 bool m_instanceGroupsToDeleteHasBeenSet = false;
272 bool m_nodeProvisioningModeHasBeenSet = false;
273 bool m_clusterRoleHasBeenSet = false;
274 bool m_autoScalingHasBeenSet = false;
275 bool m_orchestratorHasBeenSet = false;
276};
277
278} // namespace Model
279} // namespace SageMaker
280} // 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)
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
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