AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
DynamicScalingConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/sagemaker/SageMaker_EXPORTS.h>
9#include <aws/sagemaker/model/ScalingPolicy.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace SageMaker {
21namespace Model {
22
30 public:
31 AWS_SAGEMAKER_API DynamicScalingConfiguration() = default;
34 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline int GetMinCapacity() const { return m_minCapacity; }
41 inline bool MinCapacityHasBeenSet() const { return m_minCapacityHasBeenSet; }
42 inline void SetMinCapacity(int value) {
43 m_minCapacityHasBeenSet = true;
44 m_minCapacity = value;
45 }
47 SetMinCapacity(value);
48 return *this;
49 }
51
53
56 inline int GetMaxCapacity() const { return m_maxCapacity; }
57 inline bool MaxCapacityHasBeenSet() const { return m_maxCapacityHasBeenSet; }
58 inline void SetMaxCapacity(int value) {
59 m_maxCapacityHasBeenSet = true;
60 m_maxCapacity = value;
61 }
63 SetMaxCapacity(value);
64 return *this;
65 }
67
69
72 inline int GetScaleInCooldown() const { return m_scaleInCooldown; }
73 inline bool ScaleInCooldownHasBeenSet() const { return m_scaleInCooldownHasBeenSet; }
74 inline void SetScaleInCooldown(int value) {
75 m_scaleInCooldownHasBeenSet = true;
76 m_scaleInCooldown = value;
77 }
79 SetScaleInCooldown(value);
80 return *this;
81 }
83
85
88 inline int GetScaleOutCooldown() const { return m_scaleOutCooldown; }
89 inline bool ScaleOutCooldownHasBeenSet() const { return m_scaleOutCooldownHasBeenSet; }
90 inline void SetScaleOutCooldown(int value) {
91 m_scaleOutCooldownHasBeenSet = true;
92 m_scaleOutCooldown = value;
93 }
96 return *this;
97 }
99
101
104 inline const Aws::Vector<ScalingPolicy>& GetScalingPolicies() const { return m_scalingPolicies; }
105 inline bool ScalingPoliciesHasBeenSet() const { return m_scalingPoliciesHasBeenSet; }
106 template <typename ScalingPoliciesT = Aws::Vector<ScalingPolicy>>
107 void SetScalingPolicies(ScalingPoliciesT&& value) {
108 m_scalingPoliciesHasBeenSet = true;
109 m_scalingPolicies = std::forward<ScalingPoliciesT>(value);
110 }
111 template <typename ScalingPoliciesT = Aws::Vector<ScalingPolicy>>
113 SetScalingPolicies(std::forward<ScalingPoliciesT>(value));
114 return *this;
115 }
116 template <typename ScalingPoliciesT = ScalingPolicy>
118 m_scalingPoliciesHasBeenSet = true;
119 m_scalingPolicies.emplace_back(std::forward<ScalingPoliciesT>(value));
120 return *this;
121 }
123 private:
124 int m_minCapacity{0};
125
126 int m_maxCapacity{0};
127
128 int m_scaleInCooldown{0};
129
130 int m_scaleOutCooldown{0};
131
132 Aws::Vector<ScalingPolicy> m_scalingPolicies;
133 bool m_minCapacityHasBeenSet = false;
134 bool m_maxCapacityHasBeenSet = false;
135 bool m_scaleInCooldownHasBeenSet = false;
136 bool m_scaleOutCooldownHasBeenSet = false;
137 bool m_scalingPoliciesHasBeenSet = false;
138};
139
140} // namespace Model
141} // namespace SageMaker
142} // namespace Aws
AWS_SAGEMAKER_API DynamicScalingConfiguration(Aws::Utils::Json::JsonView jsonValue)
DynamicScalingConfiguration & WithScaleInCooldown(int value)
AWS_SAGEMAKER_API DynamicScalingConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
DynamicScalingConfiguration & WithMaxCapacity(int value)
DynamicScalingConfiguration & WithScaleOutCooldown(int value)
const Aws::Vector< ScalingPolicy > & GetScalingPolicies() const
DynamicScalingConfiguration & AddScalingPolicies(ScalingPoliciesT &&value)
DynamicScalingConfiguration & WithScalingPolicies(ScalingPoliciesT &&value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_SAGEMAKER_API DynamicScalingConfiguration()=default
DynamicScalingConfiguration & WithMinCapacity(int value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue