AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
ResourceConfig.h
1
6#pragma once
7#include <aws/sagemaker/SageMaker_EXPORTS.h>
8#include <aws/sagemaker/model/TrainingInstanceType.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/sagemaker/model/InstanceGroup.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace SageMaker
25{
26namespace Model
27{
28
37 {
38 public:
39 AWS_SAGEMAKER_API ResourceConfig() = default;
40 AWS_SAGEMAKER_API ResourceConfig(Aws::Utils::Json::JsonView jsonValue);
42 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline TrainingInstanceType GetInstanceType() const { return m_instanceType; }
50 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
51 inline void SetInstanceType(TrainingInstanceType value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
54
56
60 inline int GetInstanceCount() const { return m_instanceCount; }
61 inline bool InstanceCountHasBeenSet() const { return m_instanceCountHasBeenSet; }
62 inline void SetInstanceCount(int value) { m_instanceCountHasBeenSet = true; m_instanceCount = value; }
63 inline ResourceConfig& WithInstanceCount(int value) { SetInstanceCount(value); return *this;}
65
67
94 inline int GetVolumeSizeInGB() const { return m_volumeSizeInGB; }
95 inline bool VolumeSizeInGBHasBeenSet() const { return m_volumeSizeInGBHasBeenSet; }
96 inline void SetVolumeSizeInGB(int value) { m_volumeSizeInGBHasBeenSet = true; m_volumeSizeInGB = value; }
97 inline ResourceConfig& WithVolumeSizeInGB(int value) { SetVolumeSizeInGB(value); return *this;}
99
101
120 inline const Aws::String& GetVolumeKmsKeyId() const { return m_volumeKmsKeyId; }
121 inline bool VolumeKmsKeyIdHasBeenSet() const { return m_volumeKmsKeyIdHasBeenSet; }
122 template<typename VolumeKmsKeyIdT = Aws::String>
123 void SetVolumeKmsKeyId(VolumeKmsKeyIdT&& value) { m_volumeKmsKeyIdHasBeenSet = true; m_volumeKmsKeyId = std::forward<VolumeKmsKeyIdT>(value); }
124 template<typename VolumeKmsKeyIdT = Aws::String>
125 ResourceConfig& WithVolumeKmsKeyId(VolumeKmsKeyIdT&& value) { SetVolumeKmsKeyId(std::forward<VolumeKmsKeyIdT>(value)); return *this;}
127
129
133 inline int GetKeepAlivePeriodInSeconds() const { return m_keepAlivePeriodInSeconds; }
134 inline bool KeepAlivePeriodInSecondsHasBeenSet() const { return m_keepAlivePeriodInSecondsHasBeenSet; }
135 inline void SetKeepAlivePeriodInSeconds(int value) { m_keepAlivePeriodInSecondsHasBeenSet = true; m_keepAlivePeriodInSeconds = value; }
138
140
143 inline const Aws::Vector<InstanceGroup>& GetInstanceGroups() const { return m_instanceGroups; }
144 inline bool InstanceGroupsHasBeenSet() const { return m_instanceGroupsHasBeenSet; }
145 template<typename InstanceGroupsT = Aws::Vector<InstanceGroup>>
146 void SetInstanceGroups(InstanceGroupsT&& value) { m_instanceGroupsHasBeenSet = true; m_instanceGroups = std::forward<InstanceGroupsT>(value); }
147 template<typename InstanceGroupsT = Aws::Vector<InstanceGroup>>
148 ResourceConfig& WithInstanceGroups(InstanceGroupsT&& value) { SetInstanceGroups(std::forward<InstanceGroupsT>(value)); return *this;}
149 template<typename InstanceGroupsT = InstanceGroup>
150 ResourceConfig& AddInstanceGroups(InstanceGroupsT&& value) { m_instanceGroupsHasBeenSet = true; m_instanceGroups.emplace_back(std::forward<InstanceGroupsT>(value)); return *this; }
152
154
158 inline const Aws::String& GetTrainingPlanArn() const { return m_trainingPlanArn; }
159 inline bool TrainingPlanArnHasBeenSet() const { return m_trainingPlanArnHasBeenSet; }
160 template<typename TrainingPlanArnT = Aws::String>
161 void SetTrainingPlanArn(TrainingPlanArnT&& value) { m_trainingPlanArnHasBeenSet = true; m_trainingPlanArn = std::forward<TrainingPlanArnT>(value); }
162 template<typename TrainingPlanArnT = Aws::String>
163 ResourceConfig& WithTrainingPlanArn(TrainingPlanArnT&& value) { SetTrainingPlanArn(std::forward<TrainingPlanArnT>(value)); return *this;}
165 private:
166
168 bool m_instanceTypeHasBeenSet = false;
169
170 int m_instanceCount{0};
171 bool m_instanceCountHasBeenSet = false;
172
173 int m_volumeSizeInGB{0};
174 bool m_volumeSizeInGBHasBeenSet = false;
175
176 Aws::String m_volumeKmsKeyId;
177 bool m_volumeKmsKeyIdHasBeenSet = false;
178
179 int m_keepAlivePeriodInSeconds{0};
180 bool m_keepAlivePeriodInSecondsHasBeenSet = false;
181
182 Aws::Vector<InstanceGroup> m_instanceGroups;
183 bool m_instanceGroupsHasBeenSet = false;
184
185 Aws::String m_trainingPlanArn;
186 bool m_trainingPlanArnHasBeenSet = false;
187 };
188
189} // namespace Model
190} // namespace SageMaker
191} // namespace Aws
const Aws::String & GetVolumeKmsKeyId() const
void SetVolumeKmsKeyId(VolumeKmsKeyIdT &&value)
const Aws::String & GetTrainingPlanArn() const
ResourceConfig & WithVolumeKmsKeyId(VolumeKmsKeyIdT &&value)
ResourceConfig & WithKeepAlivePeriodInSeconds(int value)
void SetInstanceGroups(InstanceGroupsT &&value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
ResourceConfig & WithInstanceGroups(InstanceGroupsT &&value)
AWS_SAGEMAKER_API ResourceConfig(Aws::Utils::Json::JsonView jsonValue)
AWS_SAGEMAKER_API ResourceConfig()=default
ResourceConfig & WithInstanceCount(int value)
ResourceConfig & WithTrainingPlanArn(TrainingPlanArnT &&value)
AWS_SAGEMAKER_API ResourceConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
ResourceConfig & WithVolumeSizeInGB(int value)
void SetInstanceType(TrainingInstanceType value)
ResourceConfig & AddInstanceGroups(InstanceGroupsT &&value)
void SetTrainingPlanArn(TrainingPlanArnT &&value)
const Aws::Vector< InstanceGroup > & GetInstanceGroups() const
TrainingInstanceType GetInstanceType() const
ResourceConfig & WithInstanceType(TrainingInstanceType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue