AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CustomizedScalingMetricSpecification.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/core/utils/memory/stl/AWSVector.h>
10#include <aws/autoscaling-plans/model/MetricStatistic.h>
11#include <aws/autoscaling-plans/model/MetricDimension.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace AutoScalingPlans
25{
26namespace Model
27{
28
50 {
51 public:
52 AWS_AUTOSCALINGPLANS_API CustomizedScalingMetricSpecification();
55 AWS_AUTOSCALINGPLANS_API Aws::Utils::Json::JsonValue Jsonize() const;
56
57
59
62 inline const Aws::String& GetMetricName() const{ return m_metricName; }
63 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
64 inline void SetMetricName(const Aws::String& value) { m_metricNameHasBeenSet = true; m_metricName = value; }
65 inline void SetMetricName(Aws::String&& value) { m_metricNameHasBeenSet = true; m_metricName = std::move(value); }
66 inline void SetMetricName(const char* value) { m_metricNameHasBeenSet = true; m_metricName.assign(value); }
68 inline CustomizedScalingMetricSpecification& WithMetricName(Aws::String&& value) { SetMetricName(std::move(value)); return *this;}
69 inline CustomizedScalingMetricSpecification& WithMetricName(const char* value) { SetMetricName(value); return *this;}
71
73
76 inline const Aws::String& GetNamespace() const{ return m_namespace; }
77 inline bool NamespaceHasBeenSet() const { return m_namespaceHasBeenSet; }
78 inline void SetNamespace(const Aws::String& value) { m_namespaceHasBeenSet = true; m_namespace = value; }
79 inline void SetNamespace(Aws::String&& value) { m_namespaceHasBeenSet = true; m_namespace = std::move(value); }
80 inline void SetNamespace(const char* value) { m_namespaceHasBeenSet = true; m_namespace.assign(value); }
81 inline CustomizedScalingMetricSpecification& WithNamespace(const Aws::String& value) { SetNamespace(value); return *this;}
82 inline CustomizedScalingMetricSpecification& WithNamespace(Aws::String&& value) { SetNamespace(std::move(value)); return *this;}
83 inline CustomizedScalingMetricSpecification& WithNamespace(const char* value) { SetNamespace(value); return *this;}
85
87
92 inline const Aws::Vector<MetricDimension>& GetDimensions() const{ return m_dimensions; }
93 inline bool DimensionsHasBeenSet() const { return m_dimensionsHasBeenSet; }
94 inline void SetDimensions(const Aws::Vector<MetricDimension>& value) { m_dimensionsHasBeenSet = true; m_dimensions = value; }
95 inline void SetDimensions(Aws::Vector<MetricDimension>&& value) { m_dimensionsHasBeenSet = true; m_dimensions = std::move(value); }
98 inline CustomizedScalingMetricSpecification& AddDimensions(const MetricDimension& value) { m_dimensionsHasBeenSet = true; m_dimensions.push_back(value); return *this; }
99 inline CustomizedScalingMetricSpecification& AddDimensions(MetricDimension&& value) { m_dimensionsHasBeenSet = true; m_dimensions.push_back(std::move(value)); return *this; }
101
103
106 inline const MetricStatistic& GetStatistic() const{ return m_statistic; }
107 inline bool StatisticHasBeenSet() const { return m_statisticHasBeenSet; }
108 inline void SetStatistic(const MetricStatistic& value) { m_statisticHasBeenSet = true; m_statistic = value; }
109 inline void SetStatistic(MetricStatistic&& value) { m_statisticHasBeenSet = true; m_statistic = std::move(value); }
111 inline CustomizedScalingMetricSpecification& WithStatistic(MetricStatistic&& value) { SetStatistic(std::move(value)); return *this;}
113
115
118 inline const Aws::String& GetUnit() const{ return m_unit; }
119 inline bool UnitHasBeenSet() const { return m_unitHasBeenSet; }
120 inline void SetUnit(const Aws::String& value) { m_unitHasBeenSet = true; m_unit = value; }
121 inline void SetUnit(Aws::String&& value) { m_unitHasBeenSet = true; m_unit = std::move(value); }
122 inline void SetUnit(const char* value) { m_unitHasBeenSet = true; m_unit.assign(value); }
123 inline CustomizedScalingMetricSpecification& WithUnit(const Aws::String& value) { SetUnit(value); return *this;}
124 inline CustomizedScalingMetricSpecification& WithUnit(Aws::String&& value) { SetUnit(std::move(value)); return *this;}
125 inline CustomizedScalingMetricSpecification& WithUnit(const char* value) { SetUnit(value); return *this;}
127 private:
128
129 Aws::String m_metricName;
130 bool m_metricNameHasBeenSet = false;
131
132 Aws::String m_namespace;
133 bool m_namespaceHasBeenSet = false;
134
135 Aws::Vector<MetricDimension> m_dimensions;
136 bool m_dimensionsHasBeenSet = false;
137
138 MetricStatistic m_statistic;
139 bool m_statisticHasBeenSet = false;
140
141 Aws::String m_unit;
142 bool m_unitHasBeenSet = false;
143 };
144
145} // namespace Model
146} // namespace AutoScalingPlans
147} // namespace Aws
CustomizedScalingMetricSpecification & WithStatistic(const MetricStatistic &value)
AWS_AUTOSCALINGPLANS_API CustomizedScalingMetricSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
CustomizedScalingMetricSpecification & WithUnit(const Aws::String &value)
CustomizedScalingMetricSpecification & WithNamespace(Aws::String &&value)
CustomizedScalingMetricSpecification & WithNamespace(const char *value)
AWS_AUTOSCALINGPLANS_API CustomizedScalingMetricSpecification(Aws::Utils::Json::JsonView jsonValue)
CustomizedScalingMetricSpecification & AddDimensions(const MetricDimension &value)
AWS_AUTOSCALINGPLANS_API Aws::Utils::Json::JsonValue Jsonize() const
CustomizedScalingMetricSpecification & WithStatistic(MetricStatistic &&value)
CustomizedScalingMetricSpecification & WithMetricName(const char *value)
CustomizedScalingMetricSpecification & WithUnit(Aws::String &&value)
CustomizedScalingMetricSpecification & WithDimensions(const Aws::Vector< MetricDimension > &value)
CustomizedScalingMetricSpecification & AddDimensions(MetricDimension &&value)
CustomizedScalingMetricSpecification & WithMetricName(Aws::String &&value)
CustomizedScalingMetricSpecification & WithNamespace(const Aws::String &value)
CustomizedScalingMetricSpecification & WithDimensions(Aws::Vector< MetricDimension > &&value)
CustomizedScalingMetricSpecification & WithMetricName(const Aws::String &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