AWS SDK for C++

AWS SDK for C++ Version 1.11.635

Loading...
Searching...
No Matches
CreateClusterRequest.h
1
6#pragma once
7#include <aws/sagemaker/SageMaker_EXPORTS.h>
8#include <aws/sagemaker/SageMakerRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/sagemaker/model/VpcConfig.h>
12#include <aws/sagemaker/model/ClusterOrchestrator.h>
13#include <aws/sagemaker/model/ClusterNodeRecovery.h>
14#include <aws/sagemaker/model/ClusterNodeProvisioningMode.h>
15#include <aws/sagemaker/model/ClusterAutoScalingConfig.h>
16#include <aws/sagemaker/model/ClusterInstanceGroupSpecification.h>
17#include <aws/sagemaker/model/ClusterRestrictedInstanceGroupSpecification.h>
18#include <aws/sagemaker/model/Tag.h>
19#include <utility>
20
21namespace Aws
22{
23namespace SageMaker
24{
25namespace Model
26{
27
31 {
32 public:
33 AWS_SAGEMAKER_API CreateClusterRequest() = default;
34
35 // Service request name is the Operation name which will send this request out,
36 // each operation should has unique request name, so that we can get operation's name from this request.
37 // Note: this is not true for response, multiple operations may have the same response name,
38 // so we can not get operation's name from response.
39 inline virtual const char* GetServiceRequestName() const override { return "CreateCluster"; }
40
41 AWS_SAGEMAKER_API Aws::String SerializePayload() const override;
42
44
45
47
50 inline const Aws::String& GetClusterName() const { return m_clusterName; }
51 inline bool ClusterNameHasBeenSet() const { return m_clusterNameHasBeenSet; }
52 template<typename ClusterNameT = Aws::String>
53 void SetClusterName(ClusterNameT&& value) { m_clusterNameHasBeenSet = true; m_clusterName = std::forward<ClusterNameT>(value); }
54 template<typename ClusterNameT = Aws::String>
55 CreateClusterRequest& WithClusterName(ClusterNameT&& value) { SetClusterName(std::forward<ClusterNameT>(value)); return *this;}
57
59
62 inline const Aws::Vector<ClusterInstanceGroupSpecification>& GetInstanceGroups() const { return m_instanceGroups; }
63 inline bool InstanceGroupsHasBeenSet() const { return m_instanceGroupsHasBeenSet; }
64 template<typename InstanceGroupsT = Aws::Vector<ClusterInstanceGroupSpecification>>
65 void SetInstanceGroups(InstanceGroupsT&& value) { m_instanceGroupsHasBeenSet = true; m_instanceGroups = std::forward<InstanceGroupsT>(value); }
66 template<typename InstanceGroupsT = Aws::Vector<ClusterInstanceGroupSpecification>>
67 CreateClusterRequest& WithInstanceGroups(InstanceGroupsT&& value) { SetInstanceGroups(std::forward<InstanceGroupsT>(value)); return *this;}
68 template<typename InstanceGroupsT = ClusterInstanceGroupSpecification>
69 CreateClusterRequest& AddInstanceGroups(InstanceGroupsT&& value) { m_instanceGroupsHasBeenSet = true; m_instanceGroups.emplace_back(std::forward<InstanceGroupsT>(value)); return *this; }
71
73
77 inline const Aws::Vector<ClusterRestrictedInstanceGroupSpecification>& GetRestrictedInstanceGroups() const { return m_restrictedInstanceGroups; }
78 inline bool RestrictedInstanceGroupsHasBeenSet() const { return m_restrictedInstanceGroupsHasBeenSet; }
79 template<typename RestrictedInstanceGroupsT = Aws::Vector<ClusterRestrictedInstanceGroupSpecification>>
80 void SetRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) { m_restrictedInstanceGroupsHasBeenSet = true; m_restrictedInstanceGroups = std::forward<RestrictedInstanceGroupsT>(value); }
81 template<typename RestrictedInstanceGroupsT = Aws::Vector<ClusterRestrictedInstanceGroupSpecification>>
82 CreateClusterRequest& WithRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) { SetRestrictedInstanceGroups(std::forward<RestrictedInstanceGroupsT>(value)); return *this;}
83 template<typename RestrictedInstanceGroupsT = ClusterRestrictedInstanceGroupSpecification>
84 CreateClusterRequest& AddRestrictedInstanceGroups(RestrictedInstanceGroupsT&& value) { m_restrictedInstanceGroupsHasBeenSet = true; m_restrictedInstanceGroups.emplace_back(std::forward<RestrictedInstanceGroupsT>(value)); return *this; }
86
88
114 inline const VpcConfig& GetVpcConfig() const { return m_vpcConfig; }
115 inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
116 template<typename VpcConfigT = VpcConfig>
117 void SetVpcConfig(VpcConfigT&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::forward<VpcConfigT>(value); }
118 template<typename VpcConfigT = VpcConfig>
119 CreateClusterRequest& WithVpcConfig(VpcConfigT&& value) { SetVpcConfig(std::forward<VpcConfigT>(value)); return *this;}
121
123
131 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
132 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
133 template<typename TagsT = Aws::Vector<Tag>>
134 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
135 template<typename TagsT = Aws::Vector<Tag>>
136 CreateClusterRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
137 template<typename TagsT = Tag>
138 CreateClusterRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
140
142
147 inline const ClusterOrchestrator& GetOrchestrator() const { return m_orchestrator; }
148 inline bool OrchestratorHasBeenSet() const { return m_orchestratorHasBeenSet; }
149 template<typename OrchestratorT = ClusterOrchestrator>
150 void SetOrchestrator(OrchestratorT&& value) { m_orchestratorHasBeenSet = true; m_orchestrator = std::forward<OrchestratorT>(value); }
151 template<typename OrchestratorT = ClusterOrchestrator>
152 CreateClusterRequest& WithOrchestrator(OrchestratorT&& value) { SetOrchestrator(std::forward<OrchestratorT>(value)); return *this;}
154
156
162 inline ClusterNodeRecovery GetNodeRecovery() const { return m_nodeRecovery; }
163 inline bool NodeRecoveryHasBeenSet() const { return m_nodeRecoveryHasBeenSet; }
164 inline void SetNodeRecovery(ClusterNodeRecovery value) { m_nodeRecoveryHasBeenSet = true; m_nodeRecovery = value; }
167
169
178 inline ClusterNodeProvisioningMode GetNodeProvisioningMode() const { return m_nodeProvisioningMode; }
179 inline bool NodeProvisioningModeHasBeenSet() const { return m_nodeProvisioningModeHasBeenSet; }
180 inline void SetNodeProvisioningMode(ClusterNodeProvisioningMode value) { m_nodeProvisioningModeHasBeenSet = true; m_nodeProvisioningMode = value; }
183
185
193 inline const Aws::String& GetClusterRole() const { return m_clusterRole; }
194 inline bool ClusterRoleHasBeenSet() const { return m_clusterRoleHasBeenSet; }
195 template<typename ClusterRoleT = Aws::String>
196 void SetClusterRole(ClusterRoleT&& value) { m_clusterRoleHasBeenSet = true; m_clusterRole = std::forward<ClusterRoleT>(value); }
197 template<typename ClusterRoleT = Aws::String>
198 CreateClusterRequest& WithClusterRole(ClusterRoleT&& value) { SetClusterRole(std::forward<ClusterRoleT>(value)); return *this;}
200
202
206 inline const ClusterAutoScalingConfig& GetAutoScaling() const { return m_autoScaling; }
207 inline bool AutoScalingHasBeenSet() const { return m_autoScalingHasBeenSet; }
208 template<typename AutoScalingT = ClusterAutoScalingConfig>
209 void SetAutoScaling(AutoScalingT&& value) { m_autoScalingHasBeenSet = true; m_autoScaling = std::forward<AutoScalingT>(value); }
210 template<typename AutoScalingT = ClusterAutoScalingConfig>
211 CreateClusterRequest& WithAutoScaling(AutoScalingT&& value) { SetAutoScaling(std::forward<AutoScalingT>(value)); return *this;}
213 private:
214
215 Aws::String m_clusterName;
216 bool m_clusterNameHasBeenSet = false;
217
219 bool m_instanceGroupsHasBeenSet = false;
220
222 bool m_restrictedInstanceGroupsHasBeenSet = false;
223
224 VpcConfig m_vpcConfig;
225 bool m_vpcConfigHasBeenSet = false;
226
227 Aws::Vector<Tag> m_tags;
228 bool m_tagsHasBeenSet = false;
229
230 ClusterOrchestrator m_orchestrator;
231 bool m_orchestratorHasBeenSet = false;
232
234 bool m_nodeRecoveryHasBeenSet = false;
235
237 bool m_nodeProvisioningModeHasBeenSet = false;
238
239 Aws::String m_clusterRole;
240 bool m_clusterRoleHasBeenSet = false;
241
242 ClusterAutoScalingConfig m_autoScaling;
243 bool m_autoScalingHasBeenSet = false;
244 };
245
246} // namespace Model
247} // namespace SageMaker
248} // namespace Aws
CreateClusterRequest & WithOrchestrator(OrchestratorT &&value)
const ClusterOrchestrator & GetOrchestrator() const
ClusterNodeProvisioningMode GetNodeProvisioningMode() const
const Aws::Vector< Tag > & GetTags() const
CreateClusterRequest & WithRestrictedInstanceGroups(RestrictedInstanceGroupsT &&value)
CreateClusterRequest & AddTags(TagsT &&value)
CreateClusterRequest & AddInstanceGroups(InstanceGroupsT &&value)
CreateClusterRequest & WithInstanceGroups(InstanceGroupsT &&value)
CreateClusterRequest & WithClusterName(ClusterNameT &&value)
CreateClusterRequest & WithClusterRole(ClusterRoleT &&value)
CreateClusterRequest & WithTags(TagsT &&value)
AWS_SAGEMAKER_API Aws::String SerializePayload() const override
AWS_SAGEMAKER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
virtual const char * GetServiceRequestName() const override
CreateClusterRequest & WithNodeProvisioningMode(ClusterNodeProvisioningMode value)
const Aws::Vector< ClusterRestrictedInstanceGroupSpecification > & GetRestrictedInstanceGroups() const
CreateClusterRequest & WithNodeRecovery(ClusterNodeRecovery value)
void SetNodeProvisioningMode(ClusterNodeProvisioningMode value)
const Aws::Vector< ClusterInstanceGroupSpecification > & GetInstanceGroups() const
CreateClusterRequest & WithVpcConfig(VpcConfigT &&value)
const ClusterAutoScalingConfig & GetAutoScaling() const
CreateClusterRequest & WithAutoScaling(AutoScalingT &&value)
AWS_SAGEMAKER_API CreateClusterRequest()=default
void SetRestrictedInstanceGroups(RestrictedInstanceGroupsT &&value)
void SetInstanceGroups(InstanceGroupsT &&value)
CreateClusterRequest & AddRestrictedInstanceGroups(RestrictedInstanceGroupsT &&value)
void SetNodeRecovery(ClusterNodeRecovery value)
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