AWS SDK for C++

AWS SDK for C++ Version 1.11.747

Loading...
Searching...
No Matches
AutoScalingSettingsDescription.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dynamodb/DynamoDB_EXPORTS.h>
10#include <aws/dynamodb/model/AutoScalingPolicyDescription.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace DynamoDB {
22namespace Model {
23
31 public:
32 AWS_DYNAMODB_API AutoScalingSettingsDescription() = default;
35 AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline long long GetMinimumUnits() const { return m_minimumUnits; }
43 inline bool MinimumUnitsHasBeenSet() const { return m_minimumUnitsHasBeenSet; }
44 inline void SetMinimumUnits(long long value) {
45 m_minimumUnitsHasBeenSet = true;
46 m_minimumUnits = value;
47 }
49 SetMinimumUnits(value);
50 return *this;
51 }
53
55
59 inline long long GetMaximumUnits() const { return m_maximumUnits; }
60 inline bool MaximumUnitsHasBeenSet() const { return m_maximumUnitsHasBeenSet; }
61 inline void SetMaximumUnits(long long value) {
62 m_maximumUnitsHasBeenSet = true;
63 m_maximumUnits = value;
64 }
66 SetMaximumUnits(value);
67 return *this;
68 }
70
72
75 inline bool GetAutoScalingDisabled() const { return m_autoScalingDisabled; }
76 inline bool AutoScalingDisabledHasBeenSet() const { return m_autoScalingDisabledHasBeenSet; }
77 inline void SetAutoScalingDisabled(bool value) {
78 m_autoScalingDisabledHasBeenSet = true;
79 m_autoScalingDisabled = value;
80 }
83 return *this;
84 }
86
88
91 inline const Aws::String& GetAutoScalingRoleArn() const { return m_autoScalingRoleArn; }
92 inline bool AutoScalingRoleArnHasBeenSet() const { return m_autoScalingRoleArnHasBeenSet; }
93 template <typename AutoScalingRoleArnT = Aws::String>
94 void SetAutoScalingRoleArn(AutoScalingRoleArnT&& value) {
95 m_autoScalingRoleArnHasBeenSet = true;
96 m_autoScalingRoleArn = std::forward<AutoScalingRoleArnT>(value);
97 }
98 template <typename AutoScalingRoleArnT = Aws::String>
100 SetAutoScalingRoleArn(std::forward<AutoScalingRoleArnT>(value));
101 return *this;
102 }
104
106
109 inline const Aws::Vector<AutoScalingPolicyDescription>& GetScalingPolicies() const { return m_scalingPolicies; }
110 inline bool ScalingPoliciesHasBeenSet() const { return m_scalingPoliciesHasBeenSet; }
111 template <typename ScalingPoliciesT = Aws::Vector<AutoScalingPolicyDescription>>
112 void SetScalingPolicies(ScalingPoliciesT&& value) {
113 m_scalingPoliciesHasBeenSet = true;
114 m_scalingPolicies = std::forward<ScalingPoliciesT>(value);
115 }
116 template <typename ScalingPoliciesT = Aws::Vector<AutoScalingPolicyDescription>>
118 SetScalingPolicies(std::forward<ScalingPoliciesT>(value));
119 return *this;
120 }
121 template <typename ScalingPoliciesT = AutoScalingPolicyDescription>
123 m_scalingPoliciesHasBeenSet = true;
124 m_scalingPolicies.emplace_back(std::forward<ScalingPoliciesT>(value));
125 return *this;
126 }
128 private:
129 long long m_minimumUnits{0};
130
131 long long m_maximumUnits{0};
132
133 bool m_autoScalingDisabled{false};
134
135 Aws::String m_autoScalingRoleArn;
136
138 bool m_minimumUnitsHasBeenSet = false;
139 bool m_maximumUnitsHasBeenSet = false;
140 bool m_autoScalingDisabledHasBeenSet = false;
141 bool m_autoScalingRoleArnHasBeenSet = false;
142 bool m_scalingPoliciesHasBeenSet = false;
143};
144
145} // namespace Model
146} // namespace DynamoDB
147} // namespace Aws
AutoScalingSettingsDescription & WithScalingPolicies(ScalingPoliciesT &&value)
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
AutoScalingSettingsDescription & WithMaximumUnits(long long value)
AutoScalingSettingsDescription & WithMinimumUnits(long long value)
AWS_DYNAMODB_API AutoScalingSettingsDescription(Aws::Utils::Json::JsonView jsonValue)
AWS_DYNAMODB_API AutoScalingSettingsDescription()=default
const Aws::Vector< AutoScalingPolicyDescription > & GetScalingPolicies() const
AutoScalingSettingsDescription & AddScalingPolicies(ScalingPoliciesT &&value)
AWS_DYNAMODB_API AutoScalingSettingsDescription & operator=(Aws::Utils::Json::JsonView jsonValue)
AutoScalingSettingsDescription & WithAutoScalingDisabled(bool value)
AutoScalingSettingsDescription & WithAutoScalingRoleArn(AutoScalingRoleArnT &&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