AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
CapacityProviderScalingConfig.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/lambda/Lambda_EXPORTS.h>
9#include <aws/lambda/model/CapacityProviderScalingMode.h>
10#include <aws/lambda/model/TargetTrackingScalingPolicy.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Lambda {
22namespace Model {
23
31 public:
32 AWS_LAMBDA_API CapacityProviderScalingConfig() = default;
35 AWS_LAMBDA_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline int GetMaxVCpuCount() const { return m_maxVCpuCount; }
43 inline bool MaxVCpuCountHasBeenSet() const { return m_maxVCpuCountHasBeenSet; }
44 inline void SetMaxVCpuCount(int value) {
45 m_maxVCpuCountHasBeenSet = true;
46 m_maxVCpuCount = value;
47 }
49 SetMaxVCpuCount(value);
50 return *this;
51 }
53
55
59 inline CapacityProviderScalingMode GetScalingMode() const { return m_scalingMode; }
60 inline bool ScalingModeHasBeenSet() const { return m_scalingModeHasBeenSet; }
62 m_scalingModeHasBeenSet = true;
63 m_scalingMode = value;
64 }
66 SetScalingMode(value);
67 return *this;
68 }
70
72
76 inline const Aws::Vector<TargetTrackingScalingPolicy>& GetScalingPolicies() const { return m_scalingPolicies; }
77 inline bool ScalingPoliciesHasBeenSet() const { return m_scalingPoliciesHasBeenSet; }
78 template <typename ScalingPoliciesT = Aws::Vector<TargetTrackingScalingPolicy>>
79 void SetScalingPolicies(ScalingPoliciesT&& value) {
80 m_scalingPoliciesHasBeenSet = true;
81 m_scalingPolicies = std::forward<ScalingPoliciesT>(value);
82 }
83 template <typename ScalingPoliciesT = Aws::Vector<TargetTrackingScalingPolicy>>
85 SetScalingPolicies(std::forward<ScalingPoliciesT>(value));
86 return *this;
87 }
88 template <typename ScalingPoliciesT = TargetTrackingScalingPolicy>
90 m_scalingPoliciesHasBeenSet = true;
91 m_scalingPolicies.emplace_back(std::forward<ScalingPoliciesT>(value));
92 return *this;
93 }
95 private:
96 int m_maxVCpuCount{0};
97
99
101 bool m_maxVCpuCountHasBeenSet = false;
102 bool m_scalingModeHasBeenSet = false;
103 bool m_scalingPoliciesHasBeenSet = false;
104};
105
106} // namespace Model
107} // namespace Lambda
108} // namespace Aws
AWS_LAMBDA_API CapacityProviderScalingConfig(Aws::Utils::Json::JsonView jsonValue)
AWS_LAMBDA_API CapacityProviderScalingConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
CapacityProviderScalingConfig & AddScalingPolicies(ScalingPoliciesT &&value)
CapacityProviderScalingConfig & WithMaxVCpuCount(int value)
CapacityProviderScalingConfig & WithScalingPolicies(ScalingPoliciesT &&value)
AWS_LAMBDA_API CapacityProviderScalingConfig()=default
CapacityProviderScalingConfig & WithScalingMode(CapacityProviderScalingMode value)
const Aws::Vector< TargetTrackingScalingPolicy > & GetScalingPolicies() const
AWS_LAMBDA_API Aws::Utils::Json::JsonValue Jsonize() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue