AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
ProductionVariant.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/sagemaker/SageMaker_EXPORTS.h>
9#include <aws/sagemaker/model/ProductionVariantAcceleratorType.h>
10#include <aws/sagemaker/model/ProductionVariantCapacityReservationConfig.h>
11#include <aws/sagemaker/model/ProductionVariantCoreDumpConfig.h>
12#include <aws/sagemaker/model/ProductionVariantInferenceAmiVersion.h>
13#include <aws/sagemaker/model/ProductionVariantInstanceType.h>
14#include <aws/sagemaker/model/ProductionVariantManagedInstanceScaling.h>
15#include <aws/sagemaker/model/ProductionVariantRoutingConfig.h>
16#include <aws/sagemaker/model/ProductionVariantServerlessConfig.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Json {
23class JsonValue;
24class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace SageMaker {
28namespace Model {
29
41 public:
42 AWS_SAGEMAKER_API ProductionVariant() = default;
43 AWS_SAGEMAKER_API ProductionVariant(Aws::Utils::Json::JsonView jsonValue);
45 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
46
48
51 inline const Aws::String& GetVariantName() const { return m_variantName; }
52 inline bool VariantNameHasBeenSet() const { return m_variantNameHasBeenSet; }
53 template <typename VariantNameT = Aws::String>
54 void SetVariantName(VariantNameT&& value) {
55 m_variantNameHasBeenSet = true;
56 m_variantName = std::forward<VariantNameT>(value);
57 }
58 template <typename VariantNameT = Aws::String>
59 ProductionVariant& WithVariantName(VariantNameT&& value) {
60 SetVariantName(std::forward<VariantNameT>(value));
61 return *this;
62 }
64
66
70 inline const Aws::String& GetModelName() const { return m_modelName; }
71 inline bool ModelNameHasBeenSet() const { return m_modelNameHasBeenSet; }
72 template <typename ModelNameT = Aws::String>
73 void SetModelName(ModelNameT&& value) {
74 m_modelNameHasBeenSet = true;
75 m_modelName = std::forward<ModelNameT>(value);
76 }
77 template <typename ModelNameT = Aws::String>
78 ProductionVariant& WithModelName(ModelNameT&& value) {
79 SetModelName(std::forward<ModelNameT>(value));
80 return *this;
81 }
83
85
88 inline int GetInitialInstanceCount() const { return m_initialInstanceCount; }
89 inline bool InitialInstanceCountHasBeenSet() const { return m_initialInstanceCountHasBeenSet; }
90 inline void SetInitialInstanceCount(int value) {
91 m_initialInstanceCountHasBeenSet = true;
92 m_initialInstanceCount = value;
93 }
96 return *this;
97 }
99
101
104 inline ProductionVariantInstanceType GetInstanceType() const { return m_instanceType; }
105 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
107 m_instanceTypeHasBeenSet = true;
108 m_instanceType = value;
109 }
111 SetInstanceType(value);
112 return *this;
113 }
115
117
124 inline double GetInitialVariantWeight() const { return m_initialVariantWeight; }
125 inline bool InitialVariantWeightHasBeenSet() const { return m_initialVariantWeightHasBeenSet; }
126 inline void SetInitialVariantWeight(double value) {
127 m_initialVariantWeightHasBeenSet = true;
128 m_initialVariantWeight = value;
129 }
132 return *this;
133 }
135
137
142 inline ProductionVariantAcceleratorType GetAcceleratorType() const { return m_acceleratorType; }
143 inline bool AcceleratorTypeHasBeenSet() const { return m_acceleratorTypeHasBeenSet; }
145 m_acceleratorTypeHasBeenSet = true;
146 m_acceleratorType = value;
147 }
149 SetAcceleratorType(value);
150 return *this;
151 }
153
155
159 inline const ProductionVariantCoreDumpConfig& GetCoreDumpConfig() const { return m_coreDumpConfig; }
160 inline bool CoreDumpConfigHasBeenSet() const { return m_coreDumpConfigHasBeenSet; }
161 template <typename CoreDumpConfigT = ProductionVariantCoreDumpConfig>
162 void SetCoreDumpConfig(CoreDumpConfigT&& value) {
163 m_coreDumpConfigHasBeenSet = true;
164 m_coreDumpConfig = std::forward<CoreDumpConfigT>(value);
165 }
166 template <typename CoreDumpConfigT = ProductionVariantCoreDumpConfig>
167 ProductionVariant& WithCoreDumpConfig(CoreDumpConfigT&& value) {
168 SetCoreDumpConfig(std::forward<CoreDumpConfigT>(value));
169 return *this;
170 }
172
174
178 inline const ProductionVariantServerlessConfig& GetServerlessConfig() const { return m_serverlessConfig; }
179 inline bool ServerlessConfigHasBeenSet() const { return m_serverlessConfigHasBeenSet; }
180 template <typename ServerlessConfigT = ProductionVariantServerlessConfig>
181 void SetServerlessConfig(ServerlessConfigT&& value) {
182 m_serverlessConfigHasBeenSet = true;
183 m_serverlessConfig = std::forward<ServerlessConfigT>(value);
184 }
185 template <typename ServerlessConfigT = ProductionVariantServerlessConfig>
186 ProductionVariant& WithServerlessConfig(ServerlessConfigT&& value) {
187 SetServerlessConfig(std::forward<ServerlessConfigT>(value));
188 return *this;
189 }
191
193
198 inline int GetVolumeSizeInGB() const { return m_volumeSizeInGB; }
199 inline bool VolumeSizeInGBHasBeenSet() const { return m_volumeSizeInGBHasBeenSet; }
200 inline void SetVolumeSizeInGB(int value) {
201 m_volumeSizeInGBHasBeenSet = true;
202 m_volumeSizeInGB = value;
203 }
205 SetVolumeSizeInGB(value);
206 return *this;
207 }
209
211
216 inline int GetModelDataDownloadTimeoutInSeconds() const { return m_modelDataDownloadTimeoutInSeconds; }
217 inline bool ModelDataDownloadTimeoutInSecondsHasBeenSet() const { return m_modelDataDownloadTimeoutInSecondsHasBeenSet; }
219 m_modelDataDownloadTimeoutInSecondsHasBeenSet = true;
220 m_modelDataDownloadTimeoutInSeconds = value;
221 }
224 return *this;
225 }
227
229
235 inline int GetContainerStartupHealthCheckTimeoutInSeconds() const { return m_containerStartupHealthCheckTimeoutInSeconds; }
237 return m_containerStartupHealthCheckTimeoutInSecondsHasBeenSet;
238 }
240 m_containerStartupHealthCheckTimeoutInSecondsHasBeenSet = true;
241 m_containerStartupHealthCheckTimeoutInSeconds = value;
242 }
245 return *this;
246 }
248
250
258 inline bool GetEnableSSMAccess() const { return m_enableSSMAccess; }
259 inline bool EnableSSMAccessHasBeenSet() const { return m_enableSSMAccessHasBeenSet; }
260 inline void SetEnableSSMAccess(bool value) {
261 m_enableSSMAccessHasBeenSet = true;
262 m_enableSSMAccess = value;
263 }
265 SetEnableSSMAccess(value);
266 return *this;
267 }
269
271
275 inline const ProductionVariantManagedInstanceScaling& GetManagedInstanceScaling() const { return m_managedInstanceScaling; }
276 inline bool ManagedInstanceScalingHasBeenSet() const { return m_managedInstanceScalingHasBeenSet; }
277 template <typename ManagedInstanceScalingT = ProductionVariantManagedInstanceScaling>
278 void SetManagedInstanceScaling(ManagedInstanceScalingT&& value) {
279 m_managedInstanceScalingHasBeenSet = true;
280 m_managedInstanceScaling = std::forward<ManagedInstanceScalingT>(value);
281 }
282 template <typename ManagedInstanceScalingT = ProductionVariantManagedInstanceScaling>
283 ProductionVariant& WithManagedInstanceScaling(ManagedInstanceScalingT&& value) {
284 SetManagedInstanceScaling(std::forward<ManagedInstanceScalingT>(value));
285 return *this;
286 }
288
290
294 inline const ProductionVariantRoutingConfig& GetRoutingConfig() const { return m_routingConfig; }
295 inline bool RoutingConfigHasBeenSet() const { return m_routingConfigHasBeenSet; }
296 template <typename RoutingConfigT = ProductionVariantRoutingConfig>
297 void SetRoutingConfig(RoutingConfigT&& value) {
298 m_routingConfigHasBeenSet = true;
299 m_routingConfig = std::forward<RoutingConfigT>(value);
300 }
301 template <typename RoutingConfigT = ProductionVariantRoutingConfig>
302 ProductionVariant& WithRoutingConfig(RoutingConfigT&& value) {
303 SetRoutingConfig(std::forward<RoutingConfigT>(value));
304 return *this;
305 }
307
309
331 inline ProductionVariantInferenceAmiVersion GetInferenceAmiVersion() const { return m_inferenceAmiVersion; }
332 inline bool InferenceAmiVersionHasBeenSet() const { return m_inferenceAmiVersionHasBeenSet; }
334 m_inferenceAmiVersionHasBeenSet = true;
335 m_inferenceAmiVersion = value;
336 }
339 return *this;
340 }
342
344
348 inline const ProductionVariantCapacityReservationConfig& GetCapacityReservationConfig() const { return m_capacityReservationConfig; }
349 inline bool CapacityReservationConfigHasBeenSet() const { return m_capacityReservationConfigHasBeenSet; }
350 template <typename CapacityReservationConfigT = ProductionVariantCapacityReservationConfig>
351 void SetCapacityReservationConfig(CapacityReservationConfigT&& value) {
352 m_capacityReservationConfigHasBeenSet = true;
353 m_capacityReservationConfig = std::forward<CapacityReservationConfigT>(value);
354 }
355 template <typename CapacityReservationConfigT = ProductionVariantCapacityReservationConfig>
356 ProductionVariant& WithCapacityReservationConfig(CapacityReservationConfigT&& value) {
357 SetCapacityReservationConfig(std::forward<CapacityReservationConfigT>(value));
358 return *this;
359 }
361 private:
362 Aws::String m_variantName;
363
364 Aws::String m_modelName;
365
366 int m_initialInstanceCount{0};
367
369
370 double m_initialVariantWeight{0.0};
371
373
374 ProductionVariantCoreDumpConfig m_coreDumpConfig;
375
376 ProductionVariantServerlessConfig m_serverlessConfig;
377
378 int m_volumeSizeInGB{0};
379
380 int m_modelDataDownloadTimeoutInSeconds{0};
381
382 int m_containerStartupHealthCheckTimeoutInSeconds{0};
383
384 bool m_enableSSMAccess{false};
385
386 ProductionVariantManagedInstanceScaling m_managedInstanceScaling;
387
388 ProductionVariantRoutingConfig m_routingConfig;
389
391
392 ProductionVariantCapacityReservationConfig m_capacityReservationConfig;
393 bool m_variantNameHasBeenSet = false;
394 bool m_modelNameHasBeenSet = false;
395 bool m_initialInstanceCountHasBeenSet = false;
396 bool m_instanceTypeHasBeenSet = false;
397 bool m_initialVariantWeightHasBeenSet = false;
398 bool m_acceleratorTypeHasBeenSet = false;
399 bool m_coreDumpConfigHasBeenSet = false;
400 bool m_serverlessConfigHasBeenSet = false;
401 bool m_volumeSizeInGBHasBeenSet = false;
402 bool m_modelDataDownloadTimeoutInSecondsHasBeenSet = false;
403 bool m_containerStartupHealthCheckTimeoutInSecondsHasBeenSet = false;
404 bool m_enableSSMAccessHasBeenSet = false;
405 bool m_managedInstanceScalingHasBeenSet = false;
406 bool m_routingConfigHasBeenSet = false;
407 bool m_inferenceAmiVersionHasBeenSet = false;
408 bool m_capacityReservationConfigHasBeenSet = false;
409};
410
411} // namespace Model
412} // namespace SageMaker
413} // namespace Aws
const Aws::String & GetVariantName() const
const ProductionVariantRoutingConfig & GetRoutingConfig() const
const Aws::String & GetModelName() const
void SetAcceleratorType(ProductionVariantAcceleratorType value)
const ProductionVariantServerlessConfig & GetServerlessConfig() const
ProductionVariant & WithInitialInstanceCount(int value)
const ProductionVariantManagedInstanceScaling & GetManagedInstanceScaling() const
ProductionVariant & WithContainerStartupHealthCheckTimeoutInSeconds(int value)
ProductionVariant & WithInitialVariantWeight(double value)
ProductionVariant & WithCapacityReservationConfig(CapacityReservationConfigT &&value)
void SetManagedInstanceScaling(ManagedInstanceScalingT &&value)
AWS_SAGEMAKER_API ProductionVariant & operator=(Aws::Utils::Json::JsonView jsonValue)
ProductionVariant & WithVolumeSizeInGB(int value)
ProductionVariant & WithModelDataDownloadTimeoutInSeconds(int value)
ProductionVariant & WithModelName(ModelNameT &&value)
AWS_SAGEMAKER_API ProductionVariant()=default
void SetInferenceAmiVersion(ProductionVariantInferenceAmiVersion value)
AWS_SAGEMAKER_API ProductionVariant(Aws::Utils::Json::JsonView jsonValue)
ProductionVariantAcceleratorType GetAcceleratorType() const
ProductionVariant & WithRoutingConfig(RoutingConfigT &&value)
const ProductionVariantCapacityReservationConfig & GetCapacityReservationConfig() const
void SetRoutingConfig(RoutingConfigT &&value)
const ProductionVariantCoreDumpConfig & GetCoreDumpConfig() const
ProductionVariant & WithEnableSSMAccess(bool value)
ProductionVariantInstanceType GetInstanceType() const
ProductionVariant & WithInferenceAmiVersion(ProductionVariantInferenceAmiVersion value)
void SetInstanceType(ProductionVariantInstanceType value)
ProductionVariant & WithAcceleratorType(ProductionVariantAcceleratorType value)
ProductionVariantInferenceAmiVersion GetInferenceAmiVersion() const
ProductionVariant & WithCoreDumpConfig(CoreDumpConfigT &&value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
ProductionVariant & WithManagedInstanceScaling(ManagedInstanceScalingT &&value)
ProductionVariant & WithServerlessConfig(ServerlessConfigT &&value)
ProductionVariant & WithInstanceType(ProductionVariantInstanceType value)
void SetCoreDumpConfig(CoreDumpConfigT &&value)
ProductionVariant & WithVariantName(VariantNameT &&value)
void SetCapacityReservationConfig(CapacityReservationConfigT &&value)
void SetVariantName(VariantNameT &&value)
void SetServerlessConfig(ServerlessConfigT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue