AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Metric.h
1
6#pragma once
7#include <aws/rds/RDS_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/rds/model/MetricQuery.h>
12#include <aws/rds/model/MetricReference.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Xml
20{
21 class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace RDS
25{
26namespace Model
27{
28
34 class Metric
35 {
36 public:
37 AWS_RDS_API Metric() = default;
38 AWS_RDS_API Metric(const Aws::Utils::Xml::XmlNode& xmlNode);
39 AWS_RDS_API Metric& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
40
41 AWS_RDS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
42 AWS_RDS_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
43
44
46
49 inline const Aws::String& GetName() const { return m_name; }
50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 template<typename NameT = Aws::String>
52 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
53 template<typename NameT = Aws::String>
54 Metric& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
56
58
61 inline const Aws::Vector<MetricReference>& GetReferences() const { return m_references; }
62 inline bool ReferencesHasBeenSet() const { return m_referencesHasBeenSet; }
63 template<typename ReferencesT = Aws::Vector<MetricReference>>
64 void SetReferences(ReferencesT&& value) { m_referencesHasBeenSet = true; m_references = std::forward<ReferencesT>(value); }
65 template<typename ReferencesT = Aws::Vector<MetricReference>>
66 Metric& WithReferences(ReferencesT&& value) { SetReferences(std::forward<ReferencesT>(value)); return *this;}
67 template<typename ReferencesT = MetricReference>
68 Metric& AddReferences(ReferencesT&& value) { m_referencesHasBeenSet = true; m_references.emplace_back(std::forward<ReferencesT>(value)); return *this; }
70
72
76 inline const Aws::String& GetStatisticsDetails() const { return m_statisticsDetails; }
77 inline bool StatisticsDetailsHasBeenSet() const { return m_statisticsDetailsHasBeenSet; }
78 template<typename StatisticsDetailsT = Aws::String>
79 void SetStatisticsDetails(StatisticsDetailsT&& value) { m_statisticsDetailsHasBeenSet = true; m_statisticsDetails = std::forward<StatisticsDetailsT>(value); }
80 template<typename StatisticsDetailsT = Aws::String>
81 Metric& WithStatisticsDetails(StatisticsDetailsT&& value) { SetStatisticsDetails(std::forward<StatisticsDetailsT>(value)); return *this;}
83
85
88 inline const MetricQuery& GetMetricQuery() const { return m_metricQuery; }
89 inline bool MetricQueryHasBeenSet() const { return m_metricQueryHasBeenSet; }
90 template<typename MetricQueryT = MetricQuery>
91 void SetMetricQuery(MetricQueryT&& value) { m_metricQueryHasBeenSet = true; m_metricQuery = std::forward<MetricQueryT>(value); }
92 template<typename MetricQueryT = MetricQuery>
93 Metric& WithMetricQuery(MetricQueryT&& value) { SetMetricQuery(std::forward<MetricQueryT>(value)); return *this;}
95 private:
96
97 Aws::String m_name;
98 bool m_nameHasBeenSet = false;
99
100 Aws::Vector<MetricReference> m_references;
101 bool m_referencesHasBeenSet = false;
102
103 Aws::String m_statisticsDetails;
104 bool m_statisticsDetailsHasBeenSet = false;
105
106 MetricQuery m_metricQuery;
107 bool m_metricQueryHasBeenSet = false;
108 };
109
110} // namespace Model
111} // namespace RDS
112} // namespace Aws
Metric & WithReferences(ReferencesT &&value)
Definition Metric.h:66
bool NameHasBeenSet() const
Definition Metric.h:50
Metric & WithMetricQuery(MetricQueryT &&value)
Definition Metric.h:93
Metric & WithStatisticsDetails(StatisticsDetailsT &&value)
Definition Metric.h:81
const Aws::String & GetStatisticsDetails() const
Definition Metric.h:76
const MetricQuery & GetMetricQuery() const
Definition Metric.h:88
const Aws::Vector< MetricReference > & GetReferences() const
Definition Metric.h:61
void SetStatisticsDetails(StatisticsDetailsT &&value)
Definition Metric.h:79
Metric & AddReferences(ReferencesT &&value)
Definition Metric.h:68
const Aws::String & GetName() const
Definition Metric.h:49
void SetName(NameT &&value)
Definition Metric.h:52
bool StatisticsDetailsHasBeenSet() const
Definition Metric.h:77
AWS_RDS_API Metric & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_RDS_API Metric()=default
AWS_RDS_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool MetricQueryHasBeenSet() const
Definition Metric.h:89
AWS_RDS_API Metric(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_RDS_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetReferences(ReferencesT &&value)
Definition Metric.h:64
Metric & WithName(NameT &&value)
Definition Metric.h:54
bool ReferencesHasBeenSet() const
Definition Metric.h:62
void SetMetricQuery(MetricQueryT &&value)
Definition Metric.h:91
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