AWS SDK for C++

AWS SDK for C++ Version 1.11.752

Loading...
Searching...
No Matches
EnableMetricsCollectionRequest.h
1
6#pragma once
7#include <aws/autoscaling/AutoScalingRequest.h>
8#include <aws/autoscaling/AutoScaling_EXPORTS.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace AutoScaling {
16namespace Model {
17
21 public:
22 AWS_AUTOSCALING_API EnableMetricsCollectionRequest() = default;
23
24 // Service request name is the Operation name which will send this request out,
25 // each operation should has unique request name, so that we can get operation's name from this request.
26 // Note: this is not true for response, multiple operations may have the same response name,
27 // so we can not get operation's name from response.
28 inline virtual const char* GetServiceRequestName() const override { return "EnableMetricsCollection"; }
29
30 AWS_AUTOSCALING_API Aws::String SerializePayload() const override;
31
32 protected:
33 AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
34
35 public:
37
40 inline const Aws::String& GetAutoScalingGroupName() const { return m_autoScalingGroupName; }
41 inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; }
42 template <typename AutoScalingGroupNameT = Aws::String>
43 void SetAutoScalingGroupName(AutoScalingGroupNameT&& value) {
44 m_autoScalingGroupNameHasBeenSet = true;
45 m_autoScalingGroupName = std::forward<AutoScalingGroupNameT>(value);
46 }
47 template <typename AutoScalingGroupNameT = Aws::String>
49 SetAutoScalingGroupName(std::forward<AutoScalingGroupNameT>(value));
50 return *this;
51 }
53
55
83 inline const Aws::Vector<Aws::String>& GetMetrics() const { return m_metrics; }
84 inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; }
85 template <typename MetricsT = Aws::Vector<Aws::String>>
86 void SetMetrics(MetricsT&& value) {
87 m_metricsHasBeenSet = true;
88 m_metrics = std::forward<MetricsT>(value);
89 }
90 template <typename MetricsT = Aws::Vector<Aws::String>>
92 SetMetrics(std::forward<MetricsT>(value));
93 return *this;
94 }
95 template <typename MetricsT = Aws::String>
97 m_metricsHasBeenSet = true;
98 m_metrics.emplace_back(std::forward<MetricsT>(value));
99 return *this;
100 }
102
104
108 inline const Aws::String& GetGranularity() const { return m_granularity; }
109 inline bool GranularityHasBeenSet() const { return m_granularityHasBeenSet; }
110 template <typename GranularityT = Aws::String>
111 void SetGranularity(GranularityT&& value) {
112 m_granularityHasBeenSet = true;
113 m_granularity = std::forward<GranularityT>(value);
114 }
115 template <typename GranularityT = Aws::String>
117 SetGranularity(std::forward<GranularityT>(value));
118 return *this;
119 }
121 private:
122 Aws::String m_autoScalingGroupName;
123
124 Aws::Vector<Aws::String> m_metrics;
125
126 Aws::String m_granularity;
127 bool m_autoScalingGroupNameHasBeenSet = false;
128 bool m_metricsHasBeenSet = false;
129 bool m_granularityHasBeenSet = false;
130};
131
132} // namespace Model
133} // namespace AutoScaling
134} // namespace Aws
AWS_AUTOSCALING_API Aws::String SerializePayload() const override
AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
EnableMetricsCollectionRequest & AddMetrics(MetricsT &&value)
EnableMetricsCollectionRequest & WithGranularity(GranularityT &&value)
EnableMetricsCollectionRequest & WithAutoScalingGroupName(AutoScalingGroupNameT &&value)
AWS_AUTOSCALING_API EnableMetricsCollectionRequest()=default
EnableMetricsCollectionRequest & WithMetrics(MetricsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector