AWS SDK for C++

AWS SDK for C++ Version 1.11.912

Loading...
Searching...
No Matches
TargetTrackingScalingPolicyConfiguration.h
1
6#pragma once
7#include <aws/crt/cbor/Cbor.h>
8#include <aws/keyspaces/Keyspaces_EXPORTS.h>
9
10namespace Aws {
11namespace Utils {
12namespace Cbor {
13class CborValue;
14} // namespace Cbor
15} // namespace Utils
16namespace Keyspaces {
17namespace Model {
18
26 public:
27 AWS_KEYSPACES_API TargetTrackingScalingPolicyConfiguration() = default;
28 AWS_KEYSPACES_API TargetTrackingScalingPolicyConfiguration(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
29 AWS_KEYSPACES_API TargetTrackingScalingPolicyConfiguration& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
30 AWS_KEYSPACES_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
31
33
39 inline bool GetDisableScaleIn() const { return m_disableScaleIn; }
40 inline bool DisableScaleInHasBeenSet() const { return m_disableScaleInHasBeenSet; }
41 inline void SetDisableScaleIn(bool value) {
42 m_disableScaleInHasBeenSet = true;
43 m_disableScaleIn = value;
44 }
46 SetDisableScaleIn(value);
47 return *this;
48 }
50
52
57 inline int64_t GetScaleInCooldown() const { return m_scaleInCooldown; }
58 inline bool ScaleInCooldownHasBeenSet() const { return m_scaleInCooldownHasBeenSet; }
59 inline void SetScaleInCooldown(int64_t value) {
60 m_scaleInCooldownHasBeenSet = true;
61 m_scaleInCooldown = value;
62 }
64 SetScaleInCooldown(value);
65 return *this;
66 }
68
70
75 inline int64_t GetScaleOutCooldown() const { return m_scaleOutCooldown; }
76 inline bool ScaleOutCooldownHasBeenSet() const { return m_scaleOutCooldownHasBeenSet; }
77 inline void SetScaleOutCooldown(int64_t value) {
78 m_scaleOutCooldownHasBeenSet = true;
79 m_scaleOutCooldown = value;
80 }
83 return *this;
84 }
86
88
96 inline double GetTargetValue() const { return m_targetValue; }
97 inline bool TargetValueHasBeenSet() const { return m_targetValueHasBeenSet; }
98 inline void SetTargetValue(double value) {
99 m_targetValueHasBeenSet = true;
100 m_targetValue = value;
101 }
103 SetTargetValue(value);
104 return *this;
105 }
107 private:
108 bool m_disableScaleIn{false};
109
110 int64_t m_scaleInCooldown{0};
111
112 int64_t m_scaleOutCooldown{0};
113
114 double m_targetValue{0.0};
115 bool m_disableScaleInHasBeenSet = false;
116 bool m_scaleInCooldownHasBeenSet = false;
117 bool m_scaleOutCooldownHasBeenSet = false;
118 bool m_targetValueHasBeenSet = false;
119};
120
121} // namespace Model
122} // namespace Keyspaces
123} // namespace Aws
AWS_KEYSPACES_API TargetTrackingScalingPolicyConfiguration & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
AWS_KEYSPACES_API TargetTrackingScalingPolicyConfiguration(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
TargetTrackingScalingPolicyConfiguration & WithScaleInCooldown(int64_t value)
TargetTrackingScalingPolicyConfiguration & WithScaleOutCooldown(int64_t value)
AWS_KEYSPACES_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const