AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
PutScalingPolicyRequest.h
1
6#pragma once
7#include <aws/application-autoscaling/ApplicationAutoScaling_EXPORTS.h>
8#include <aws/application-autoscaling/ApplicationAutoScalingRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/application-autoscaling/model/ServiceNamespace.h>
11#include <aws/application-autoscaling/model/ScalableDimension.h>
12#include <aws/application-autoscaling/model/PolicyType.h>
13#include <aws/application-autoscaling/model/StepScalingPolicyConfiguration.h>
14#include <aws/application-autoscaling/model/TargetTrackingScalingPolicyConfiguration.h>
15#include <aws/application-autoscaling/model/PredictiveScalingPolicyConfiguration.h>
16#include <utility>
17
18namespace Aws
19{
20namespace ApplicationAutoScaling
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_APPLICATIONAUTOSCALING_API PutScalingPolicyRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "PutScalingPolicy"; }
37
38 AWS_APPLICATIONAUTOSCALING_API Aws::String SerializePayload() const override;
39
40 AWS_APPLICATIONAUTOSCALING_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
41
42
44
49 inline const Aws::String& GetPolicyName() const { return m_policyName; }
50 inline bool PolicyNameHasBeenSet() const { return m_policyNameHasBeenSet; }
51 template<typename PolicyNameT = Aws::String>
52 void SetPolicyName(PolicyNameT&& value) { m_policyNameHasBeenSet = true; m_policyName = std::forward<PolicyNameT>(value); }
53 template<typename PolicyNameT = Aws::String>
54 PutScalingPolicyRequest& WithPolicyName(PolicyNameT&& value) { SetPolicyName(std::forward<PolicyNameT>(value)); return *this;}
56
58
63 inline ServiceNamespace GetServiceNamespace() const { return m_serviceNamespace; }
64 inline bool ServiceNamespaceHasBeenSet() const { return m_serviceNamespaceHasBeenSet; }
65 inline void SetServiceNamespace(ServiceNamespace value) { m_serviceNamespaceHasBeenSet = true; m_serviceNamespace = value; }
68
70
134 inline const Aws::String& GetResourceId() const { return m_resourceId; }
135 inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; }
136 template<typename ResourceIdT = Aws::String>
137 void SetResourceId(ResourceIdT&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::forward<ResourceIdT>(value); }
138 template<typename ResourceIdT = Aws::String>
139 PutScalingPolicyRequest& WithResourceId(ResourceIdT&& value) { SetResourceId(std::forward<ResourceIdT>(value)); return *this;}
141
143
195 inline ScalableDimension GetScalableDimension() const { return m_scalableDimension; }
196 inline bool ScalableDimensionHasBeenSet() const { return m_scalableDimensionHasBeenSet; }
197 inline void SetScalableDimension(ScalableDimension value) { m_scalableDimensionHasBeenSet = true; m_scalableDimension = value; }
200
202
217 inline PolicyType GetPolicyType() const { return m_policyType; }
218 inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
219 inline void SetPolicyType(PolicyType value) { m_policyTypeHasBeenSet = true; m_policyType = value; }
220 inline PutScalingPolicyRequest& WithPolicyType(PolicyType value) { SetPolicyType(value); return *this;}
222
224
228 inline const StepScalingPolicyConfiguration& GetStepScalingPolicyConfiguration() const { return m_stepScalingPolicyConfiguration; }
229 inline bool StepScalingPolicyConfigurationHasBeenSet() const { return m_stepScalingPolicyConfigurationHasBeenSet; }
230 template<typename StepScalingPolicyConfigurationT = StepScalingPolicyConfiguration>
231 void SetStepScalingPolicyConfiguration(StepScalingPolicyConfigurationT&& value) { m_stepScalingPolicyConfigurationHasBeenSet = true; m_stepScalingPolicyConfiguration = std::forward<StepScalingPolicyConfigurationT>(value); }
232 template<typename StepScalingPolicyConfigurationT = StepScalingPolicyConfiguration>
233 PutScalingPolicyRequest& WithStepScalingPolicyConfiguration(StepScalingPolicyConfigurationT&& value) { SetStepScalingPolicyConfiguration(std::forward<StepScalingPolicyConfigurationT>(value)); return *this;}
235
237
242 inline const TargetTrackingScalingPolicyConfiguration& GetTargetTrackingScalingPolicyConfiguration() const { return m_targetTrackingScalingPolicyConfiguration; }
243 inline bool TargetTrackingScalingPolicyConfigurationHasBeenSet() const { return m_targetTrackingScalingPolicyConfigurationHasBeenSet; }
244 template<typename TargetTrackingScalingPolicyConfigurationT = TargetTrackingScalingPolicyConfiguration>
245 void SetTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfigurationT&& value) { m_targetTrackingScalingPolicyConfigurationHasBeenSet = true; m_targetTrackingScalingPolicyConfiguration = std::forward<TargetTrackingScalingPolicyConfigurationT>(value); }
246 template<typename TargetTrackingScalingPolicyConfigurationT = TargetTrackingScalingPolicyConfiguration>
247 PutScalingPolicyRequest& WithTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfigurationT&& value) { SetTargetTrackingScalingPolicyConfiguration(std::forward<TargetTrackingScalingPolicyConfigurationT>(value)); return *this;}
249
251
254 inline const PredictiveScalingPolicyConfiguration& GetPredictiveScalingPolicyConfiguration() const { return m_predictiveScalingPolicyConfiguration; }
255 inline bool PredictiveScalingPolicyConfigurationHasBeenSet() const { return m_predictiveScalingPolicyConfigurationHasBeenSet; }
256 template<typename PredictiveScalingPolicyConfigurationT = PredictiveScalingPolicyConfiguration>
257 void SetPredictiveScalingPolicyConfiguration(PredictiveScalingPolicyConfigurationT&& value) { m_predictiveScalingPolicyConfigurationHasBeenSet = true; m_predictiveScalingPolicyConfiguration = std::forward<PredictiveScalingPolicyConfigurationT>(value); }
258 template<typename PredictiveScalingPolicyConfigurationT = PredictiveScalingPolicyConfiguration>
259 PutScalingPolicyRequest& WithPredictiveScalingPolicyConfiguration(PredictiveScalingPolicyConfigurationT&& value) { SetPredictiveScalingPolicyConfiguration(std::forward<PredictiveScalingPolicyConfigurationT>(value)); return *this;}
261 private:
262
263 Aws::String m_policyName;
264 bool m_policyNameHasBeenSet = false;
265
267 bool m_serviceNamespaceHasBeenSet = false;
268
269 Aws::String m_resourceId;
270 bool m_resourceIdHasBeenSet = false;
271
273 bool m_scalableDimensionHasBeenSet = false;
274
275 PolicyType m_policyType{PolicyType::NOT_SET};
276 bool m_policyTypeHasBeenSet = false;
277
278 StepScalingPolicyConfiguration m_stepScalingPolicyConfiguration;
279 bool m_stepScalingPolicyConfigurationHasBeenSet = false;
280
281 TargetTrackingScalingPolicyConfiguration m_targetTrackingScalingPolicyConfiguration;
282 bool m_targetTrackingScalingPolicyConfigurationHasBeenSet = false;
283
284 PredictiveScalingPolicyConfiguration m_predictiveScalingPolicyConfiguration;
285 bool m_predictiveScalingPolicyConfigurationHasBeenSet = false;
286 };
287
288} // namespace Model
289} // namespace ApplicationAutoScaling
290} // namespace Aws
PutScalingPolicyRequest & WithTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfigurationT &&value)
const PredictiveScalingPolicyConfiguration & GetPredictiveScalingPolicyConfiguration() const
const StepScalingPolicyConfiguration & GetStepScalingPolicyConfiguration() const
PutScalingPolicyRequest & WithScalableDimension(ScalableDimension value)
AWS_APPLICATIONAUTOSCALING_API PutScalingPolicyRequest()=default
PutScalingPolicyRequest & WithResourceId(ResourceIdT &&value)
PutScalingPolicyRequest & WithServiceNamespace(ServiceNamespace value)
PutScalingPolicyRequest & WithPredictiveScalingPolicyConfiguration(PredictiveScalingPolicyConfigurationT &&value)
void SetPredictiveScalingPolicyConfiguration(PredictiveScalingPolicyConfigurationT &&value)
void SetTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfigurationT &&value)
AWS_APPLICATIONAUTOSCALING_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
PutScalingPolicyRequest & WithStepScalingPolicyConfiguration(StepScalingPolicyConfigurationT &&value)
PutScalingPolicyRequest & WithPolicyName(PolicyNameT &&value)
const TargetTrackingScalingPolicyConfiguration & GetTargetTrackingScalingPolicyConfiguration() const
void SetStepScalingPolicyConfiguration(StepScalingPolicyConfigurationT &&value)
AWS_APPLICATIONAUTOSCALING_API Aws::String SerializePayload() const override
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String