AWS SDK for C++

AWS SDK for C++ Version 1.11.609

Loading...
Searching...
No Matches
ScalingPlanResource.h
1
6#pragma once
7#include <aws/autoscaling-plans/AutoScalingPlans_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/autoscaling-plans/model/ServiceNamespace.h>
10#include <aws/autoscaling-plans/model/ScalableDimension.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/autoscaling-plans/model/ScalingStatusCode.h>
13#include <aws/autoscaling-plans/model/ScalingPolicy.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace AutoScalingPlans
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_AUTOSCALINGPLANS_API ScalingPlanResource() = default;
40 AWS_AUTOSCALINGPLANS_API ScalingPlanResource(Aws::Utils::Json::JsonView jsonValue);
41 AWS_AUTOSCALINGPLANS_API ScalingPlanResource& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_AUTOSCALINGPLANS_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::String& GetScalingPlanName() const { return m_scalingPlanName; }
50 inline bool ScalingPlanNameHasBeenSet() const { return m_scalingPlanNameHasBeenSet; }
51 template<typename ScalingPlanNameT = Aws::String>
52 void SetScalingPlanName(ScalingPlanNameT&& value) { m_scalingPlanNameHasBeenSet = true; m_scalingPlanName = std::forward<ScalingPlanNameT>(value); }
53 template<typename ScalingPlanNameT = Aws::String>
54 ScalingPlanResource& WithScalingPlanName(ScalingPlanNameT&& value) { SetScalingPlanName(std::forward<ScalingPlanNameT>(value)); return *this;}
56
58
61 inline long long GetScalingPlanVersion() const { return m_scalingPlanVersion; }
62 inline bool ScalingPlanVersionHasBeenSet() const { return m_scalingPlanVersionHasBeenSet; }
63 inline void SetScalingPlanVersion(long long value) { m_scalingPlanVersionHasBeenSet = true; m_scalingPlanVersion = value; }
64 inline ScalingPlanResource& WithScalingPlanVersion(long long value) { SetScalingPlanVersion(value); return *this;}
66
68
71 inline ServiceNamespace GetServiceNamespace() const { return m_serviceNamespace; }
72 inline bool ServiceNamespaceHasBeenSet() const { return m_serviceNamespaceHasBeenSet; }
73 inline void SetServiceNamespace(ServiceNamespace value) { m_serviceNamespaceHasBeenSet = true; m_serviceNamespace = value; }
76
78
97 inline const Aws::String& GetResourceId() const { return m_resourceId; }
98 inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; }
99 template<typename ResourceIdT = Aws::String>
100 void SetResourceId(ResourceIdT&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::forward<ResourceIdT>(value); }
101 template<typename ResourceIdT = Aws::String>
102 ScalingPlanResource& WithResourceId(ResourceIdT&& value) { SetResourceId(std::forward<ResourceIdT>(value)); return *this;}
104
106
125 inline ScalableDimension GetScalableDimension() const { return m_scalableDimension; }
126 inline bool ScalableDimensionHasBeenSet() const { return m_scalableDimensionHasBeenSet; }
127 inline void SetScalableDimension(ScalableDimension value) { m_scalableDimensionHasBeenSet = true; m_scalableDimension = value; }
130
132
135 inline const Aws::Vector<ScalingPolicy>& GetScalingPolicies() const { return m_scalingPolicies; }
136 inline bool ScalingPoliciesHasBeenSet() const { return m_scalingPoliciesHasBeenSet; }
137 template<typename ScalingPoliciesT = Aws::Vector<ScalingPolicy>>
138 void SetScalingPolicies(ScalingPoliciesT&& value) { m_scalingPoliciesHasBeenSet = true; m_scalingPolicies = std::forward<ScalingPoliciesT>(value); }
139 template<typename ScalingPoliciesT = Aws::Vector<ScalingPolicy>>
140 ScalingPlanResource& WithScalingPolicies(ScalingPoliciesT&& value) { SetScalingPolicies(std::forward<ScalingPoliciesT>(value)); return *this;}
141 template<typename ScalingPoliciesT = ScalingPolicy>
142 ScalingPlanResource& AddScalingPolicies(ScalingPoliciesT&& value) { m_scalingPoliciesHasBeenSet = true; m_scalingPolicies.emplace_back(std::forward<ScalingPoliciesT>(value)); return *this; }
144
146
156 inline ScalingStatusCode GetScalingStatusCode() const { return m_scalingStatusCode; }
157 inline bool ScalingStatusCodeHasBeenSet() const { return m_scalingStatusCodeHasBeenSet; }
158 inline void SetScalingStatusCode(ScalingStatusCode value) { m_scalingStatusCodeHasBeenSet = true; m_scalingStatusCode = value; }
161
163
166 inline const Aws::String& GetScalingStatusMessage() const { return m_scalingStatusMessage; }
167 inline bool ScalingStatusMessageHasBeenSet() const { return m_scalingStatusMessageHasBeenSet; }
168 template<typename ScalingStatusMessageT = Aws::String>
169 void SetScalingStatusMessage(ScalingStatusMessageT&& value) { m_scalingStatusMessageHasBeenSet = true; m_scalingStatusMessage = std::forward<ScalingStatusMessageT>(value); }
170 template<typename ScalingStatusMessageT = Aws::String>
171 ScalingPlanResource& WithScalingStatusMessage(ScalingStatusMessageT&& value) { SetScalingStatusMessage(std::forward<ScalingStatusMessageT>(value)); return *this;}
173 private:
174
175 Aws::String m_scalingPlanName;
176 bool m_scalingPlanNameHasBeenSet = false;
177
178 long long m_scalingPlanVersion{0};
179 bool m_scalingPlanVersionHasBeenSet = false;
180
182 bool m_serviceNamespaceHasBeenSet = false;
183
184 Aws::String m_resourceId;
185 bool m_resourceIdHasBeenSet = false;
186
188 bool m_scalableDimensionHasBeenSet = false;
189
190 Aws::Vector<ScalingPolicy> m_scalingPolicies;
191 bool m_scalingPoliciesHasBeenSet = false;
192
194 bool m_scalingStatusCodeHasBeenSet = false;
195
196 Aws::String m_scalingStatusMessage;
197 bool m_scalingStatusMessageHasBeenSet = false;
198 };
199
200} // namespace Model
201} // namespace AutoScalingPlans
202} // namespace Aws
AWS_AUTOSCALINGPLANS_API Aws::Utils::Json::JsonValue Jsonize() const
ScalingPlanResource & WithScalableDimension(ScalableDimension value)
ScalingPlanResource & WithScalingPlanVersion(long long value)
AWS_AUTOSCALINGPLANS_API ScalingPlanResource()=default
void SetScalingStatusMessage(ScalingStatusMessageT &&value)
ScalingPlanResource & WithScalingPlanName(ScalingPlanNameT &&value)
AWS_AUTOSCALINGPLANS_API ScalingPlanResource & operator=(Aws::Utils::Json::JsonView jsonValue)
ScalingPlanResource & WithScalingStatusMessage(ScalingStatusMessageT &&value)
ScalingPlanResource & WithServiceNamespace(ServiceNamespace value)
ScalingPlanResource & WithResourceId(ResourceIdT &&value)
ScalingPlanResource & WithScalingStatusCode(ScalingStatusCode value)
const Aws::Vector< ScalingPolicy > & GetScalingPolicies() const
ScalingPlanResource & WithScalingPolicies(ScalingPoliciesT &&value)
AWS_AUTOSCALINGPLANS_API ScalingPlanResource(Aws::Utils::Json::JsonView jsonValue)
ScalingPlanResource & AddScalingPolicies(ScalingPoliciesT &&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