AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
Metric.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/autoscaling/model/MetricDimension.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Xml
19{
20 class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace AutoScaling
24{
25namespace Model
26{
27
33 class Metric
34 {
35 public:
36 AWS_AUTOSCALING_API Metric();
37 AWS_AUTOSCALING_API Metric(const Aws::Utils::Xml::XmlNode& xmlNode);
38 AWS_AUTOSCALING_API Metric& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
39
40 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
42
43
45
51 inline const Aws::String& GetNamespace() const{ return m_namespace; }
52 inline bool NamespaceHasBeenSet() const { return m_namespaceHasBeenSet; }
53 inline void SetNamespace(const Aws::String& value) { m_namespaceHasBeenSet = true; m_namespace = value; }
54 inline void SetNamespace(Aws::String&& value) { m_namespaceHasBeenSet = true; m_namespace = std::move(value); }
55 inline void SetNamespace(const char* value) { m_namespaceHasBeenSet = true; m_namespace.assign(value); }
56 inline Metric& WithNamespace(const Aws::String& value) { SetNamespace(value); return *this;}
57 inline Metric& WithNamespace(Aws::String&& value) { SetNamespace(std::move(value)); return *this;}
58 inline Metric& WithNamespace(const char* value) { SetNamespace(value); return *this;}
60
62
65 inline const Aws::String& GetMetricName() const{ return m_metricName; }
66 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
67 inline void SetMetricName(const Aws::String& value) { m_metricNameHasBeenSet = true; m_metricName = value; }
68 inline void SetMetricName(Aws::String&& value) { m_metricNameHasBeenSet = true; m_metricName = std::move(value); }
69 inline void SetMetricName(const char* value) { m_metricNameHasBeenSet = true; m_metricName.assign(value); }
70 inline Metric& WithMetricName(const Aws::String& value) { SetMetricName(value); return *this;}
71 inline Metric& WithMetricName(Aws::String&& value) { SetMetricName(std::move(value)); return *this;}
72 inline Metric& WithMetricName(const char* value) { SetMetricName(value); return *this;}
74
76
85 inline const Aws::Vector<MetricDimension>& GetDimensions() const{ return m_dimensions; }
86 inline bool DimensionsHasBeenSet() const { return m_dimensionsHasBeenSet; }
87 inline void SetDimensions(const Aws::Vector<MetricDimension>& value) { m_dimensionsHasBeenSet = true; m_dimensions = value; }
88 inline void SetDimensions(Aws::Vector<MetricDimension>&& value) { m_dimensionsHasBeenSet = true; m_dimensions = std::move(value); }
89 inline Metric& WithDimensions(const Aws::Vector<MetricDimension>& value) { SetDimensions(value); return *this;}
90 inline Metric& WithDimensions(Aws::Vector<MetricDimension>&& value) { SetDimensions(std::move(value)); return *this;}
91 inline Metric& AddDimensions(const MetricDimension& value) { m_dimensionsHasBeenSet = true; m_dimensions.push_back(value); return *this; }
92 inline Metric& AddDimensions(MetricDimension&& value) { m_dimensionsHasBeenSet = true; m_dimensions.push_back(std::move(value)); return *this; }
94 private:
95
96 Aws::String m_namespace;
97 bool m_namespaceHasBeenSet = false;
98
99 Aws::String m_metricName;
100 bool m_metricNameHasBeenSet = false;
101
102 Aws::Vector<MetricDimension> m_dimensions;
103 bool m_dimensionsHasBeenSet = false;
104 };
105
106} // namespace Model
107} // namespace AutoScaling
108} // namespace Aws
const Aws::String & GetNamespace() const
Definition Metric.h:51
AWS_AUTOSCALING_API Metric()
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetMetricName(const char *value)
Definition Metric.h:69
Metric & WithDimensions(Aws::Vector< MetricDimension > &&value)
Definition Metric.h:90
void SetMetricName(const Aws::String &value)
Definition Metric.h:67
Metric & WithNamespace(const Aws::String &value)
Definition Metric.h:56
Metric & AddDimensions(MetricDimension &&value)
Definition Metric.h:92
void SetNamespace(Aws::String &&value)
Definition Metric.h:54
void SetNamespace(const char *value)
Definition Metric.h:55
const Aws::Vector< MetricDimension > & GetDimensions() const
Definition Metric.h:85
void SetMetricName(Aws::String &&value)
Definition Metric.h:68
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetDimensions(const Aws::Vector< MetricDimension > &value)
Definition Metric.h:87
Metric & WithDimensions(const Aws::Vector< MetricDimension > &value)
Definition Metric.h:89
Metric & AddDimensions(const MetricDimension &value)
Definition Metric.h:91
void SetDimensions(Aws::Vector< MetricDimension > &&value)
Definition Metric.h:88
AWS_AUTOSCALING_API Metric(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetNamespace(const Aws::String &value)
Definition Metric.h:53
const Aws::String & GetMetricName() const
Definition Metric.h:65
AWS_AUTOSCALING_API Metric & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Metric & WithNamespace(const char *value)
Definition Metric.h:58
Metric & WithNamespace(Aws::String &&value)
Definition Metric.h:57
Metric & WithMetricName(const Aws::String &value)
Definition Metric.h:70
bool MetricNameHasBeenSet() const
Definition Metric.h:66
Metric & WithMetricName(Aws::String &&value)
Definition Metric.h:71
bool NamespaceHasBeenSet() const
Definition Metric.h:52
bool DimensionsHasBeenSet() const
Definition Metric.h:86
Metric & WithMetricName(const char *value)
Definition Metric.h:72
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream