7#include <aws/application-autoscaling/ApplicationAutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/application-autoscaling/model/ServiceNamespace.h>
10#include <aws/application-autoscaling/model/ScalableDimension.h>
11#include <aws/application-autoscaling/model/PolicyType.h>
12#include <aws/application-autoscaling/model/StepScalingPolicyConfiguration.h>
13#include <aws/application-autoscaling/model/TargetTrackingScalingPolicyConfiguration.h>
14#include <aws/application-autoscaling/model/PredictiveScalingPolicyConfiguration.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16#include <aws/core/utils/DateTime.h>
17#include <aws/application-autoscaling/model/Alarm.h>
30namespace ApplicationAutoScaling
60 template<
typename PolicyARNT = Aws::String>
61 void SetPolicyARN(PolicyARNT&& value) { m_policyARNHasBeenSet =
true; m_policyARN = std::forward<PolicyARNT>(value); }
62 template<
typename PolicyARNT = Aws::String>
72 template<
typename PolicyNameT = Aws::String>
73 void SetPolicyName(PolicyNameT&& value) { m_policyNameHasBeenSet =
true; m_policyName = std::forward<PolicyNameT>(value); }
74 template<
typename PolicyNameT = Aws::String>
156 template<
typename ResourceIdT = Aws::String>
157 void SetResourceId(ResourceIdT&& value) { m_resourceIdHasBeenSet =
true; m_resourceId = std::forward<ResourceIdT>(value); }
158 template<
typename ResourceIdT = Aws::String>
241 template<
typename StepScalingPolicyConfigurationT = StepScalingPolicyConfiguration>
242 void SetStepScalingPolicyConfiguration(StepScalingPolicyConfigurationT&& value) { m_stepScalingPolicyConfigurationHasBeenSet =
true; m_stepScalingPolicyConfiguration = std::forward<StepScalingPolicyConfigurationT>(value); }
243 template<
typename StepScalingPolicyConfigurationT = StepScalingPolicyConfiguration>
253 template<
typename TargetTrackingScalingPolicyConfigurationT = TargetTrackingScalingPolicyConfiguration>
254 void SetTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfigurationT&& value) { m_targetTrackingScalingPolicyConfigurationHasBeenSet =
true; m_targetTrackingScalingPolicyConfiguration = std::forward<TargetTrackingScalingPolicyConfigurationT>(value); }
255 template<
typename TargetTrackingScalingPolicyConfigurationT = TargetTrackingScalingPolicyConfiguration>
265 template<
typename PredictiveScalingPolicyConfigurationT = PredictiveScalingPolicyConfiguration>
266 void SetPredictiveScalingPolicyConfiguration(PredictiveScalingPolicyConfigurationT&& value) { m_predictiveScalingPolicyConfigurationHasBeenSet =
true; m_predictiveScalingPolicyConfiguration = std::forward<PredictiveScalingPolicyConfigurationT>(value); }
267 template<
typename PredictiveScalingPolicyConfigurationT = PredictiveScalingPolicyConfiguration>
277 template<
typename AlarmsT = Aws::Vector<Alarm>>
278 void SetAlarms(AlarmsT&& value) { m_alarmsHasBeenSet =
true; m_alarms = std::forward<AlarmsT>(value); }
279 template<
typename AlarmsT = Aws::Vector<Alarm>>
281 template<
typename AlarmsT = Alarm>
282 ScalingPolicy&
AddAlarms(AlarmsT&& value) { m_alarmsHasBeenSet =
true; m_alarms.emplace_back(std::forward<AlarmsT>(value));
return *
this; }
291 template<
typename CreationTimeT = Aws::Utils::DateTime>
292 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet =
true; m_creationTime = std::forward<CreationTimeT>(value); }
293 template<
typename CreationTimeT = Aws::Utils::DateTime>
299 bool m_policyARNHasBeenSet =
false;
302 bool m_policyNameHasBeenSet =
false;
305 bool m_serviceNamespaceHasBeenSet =
false;
308 bool m_resourceIdHasBeenSet =
false;
311 bool m_scalableDimensionHasBeenSet =
false;
314 bool m_policyTypeHasBeenSet =
false;
316 StepScalingPolicyConfiguration m_stepScalingPolicyConfiguration;
317 bool m_stepScalingPolicyConfigurationHasBeenSet =
false;
319 TargetTrackingScalingPolicyConfiguration m_targetTrackingScalingPolicyConfiguration;
320 bool m_targetTrackingScalingPolicyConfigurationHasBeenSet =
false;
322 PredictiveScalingPolicyConfiguration m_predictiveScalingPolicyConfiguration;
323 bool m_predictiveScalingPolicyConfigurationHasBeenSet =
false;
326 bool m_alarmsHasBeenSet =
false;
329 bool m_creationTimeHasBeenSet =
false;
void SetPolicyName(PolicyNameT &&value)
ScalingPolicy & AddAlarms(AlarmsT &&value)
ScalingPolicy & WithServiceNamespace(ServiceNamespace value)
ScalingPolicy & WithTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfigurationT &&value)
ScalingPolicy & WithPolicyType(PolicyType value)
bool PolicyARNHasBeenSet() const
const PredictiveScalingPolicyConfiguration & GetPredictiveScalingPolicyConfiguration() const
bool ResourceIdHasBeenSet() const
bool ScalableDimensionHasBeenSet() const
const Aws::String & GetPolicyARN() const
ScalingPolicy & WithStepScalingPolicyConfiguration(StepScalingPolicyConfigurationT &&value)
bool StepScalingPolicyConfigurationHasBeenSet() const
const Aws::String & GetResourceId() const
AWS_APPLICATIONAUTOSCALING_API ScalingPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetScalableDimension(ScalableDimension value)
const Aws::String & GetPolicyName() const
AWS_APPLICATIONAUTOSCALING_API ScalingPolicy(Aws::Utils::Json::JsonView jsonValue)
bool PolicyTypeHasBeenSet() const
const StepScalingPolicyConfiguration & GetStepScalingPolicyConfiguration() const
AWS_APPLICATIONAUTOSCALING_API ScalingPolicy()=default
ScalableDimension GetScalableDimension() const
void SetCreationTime(CreationTimeT &&value)
bool CreationTimeHasBeenSet() const
void SetAlarms(AlarmsT &&value)
bool AlarmsHasBeenSet() const
ScalingPolicy & WithCreationTime(CreationTimeT &&value)
const Aws::Vector< Alarm > & GetAlarms() const
ScalingPolicy & WithPredictiveScalingPolicyConfiguration(PredictiveScalingPolicyConfigurationT &&value)
void SetServiceNamespace(ServiceNamespace value)
void SetResourceId(ResourceIdT &&value)
const TargetTrackingScalingPolicyConfiguration & GetTargetTrackingScalingPolicyConfiguration() const
ScalingPolicy & WithAlarms(AlarmsT &&value)
ScalingPolicy & WithPolicyName(PolicyNameT &&value)
ScalingPolicy & WithScalableDimension(ScalableDimension value)
const Aws::Utils::DateTime & GetCreationTime() const
void SetPolicyType(PolicyType value)
ScalingPolicy & WithPolicyARN(PolicyARNT &&value)
ScalingPolicy & WithResourceId(ResourceIdT &&value)
PolicyType GetPolicyType() const
void SetPredictiveScalingPolicyConfiguration(PredictiveScalingPolicyConfigurationT &&value)
AWS_APPLICATIONAUTOSCALING_API Aws::Utils::Json::JsonValue Jsonize() const
bool TargetTrackingScalingPolicyConfigurationHasBeenSet() const
void SetPolicyARN(PolicyARNT &&value)
ServiceNamespace GetServiceNamespace() const
void SetStepScalingPolicyConfiguration(StepScalingPolicyConfigurationT &&value)
bool ServiceNamespaceHasBeenSet() const
void SetTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfigurationT &&value)
bool PolicyNameHasBeenSet() const
bool PredictiveScalingPolicyConfigurationHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue