AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
EnableMetricsCollectionRequest.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/autoscaling/AutoScalingRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <utility>
12
13namespace Aws
14{
15namespace AutoScaling
16{
17namespace Model
18{
19
23 {
24 public:
25 AWS_AUTOSCALING_API EnableMetricsCollectionRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "EnableMetricsCollection"; }
32
33 AWS_AUTOSCALING_API Aws::String SerializePayload() const override;
34
35 protected:
36 AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
37
38 public:
39
41
44 inline const Aws::String& GetAutoScalingGroupName() const { return m_autoScalingGroupName; }
45 inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; }
46 template<typename AutoScalingGroupNameT = Aws::String>
47 void SetAutoScalingGroupName(AutoScalingGroupNameT&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = std::forward<AutoScalingGroupNameT>(value); }
48 template<typename AutoScalingGroupNameT = Aws::String>
49 EnableMetricsCollectionRequest& WithAutoScalingGroupName(AutoScalingGroupNameT&& value) { SetAutoScalingGroupName(std::forward<AutoScalingGroupNameT>(value)); return *this;}
51
53
81 inline const Aws::Vector<Aws::String>& GetMetrics() const { return m_metrics; }
82 inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; }
83 template<typename MetricsT = Aws::Vector<Aws::String>>
84 void SetMetrics(MetricsT&& value) { m_metricsHasBeenSet = true; m_metrics = std::forward<MetricsT>(value); }
85 template<typename MetricsT = Aws::Vector<Aws::String>>
86 EnableMetricsCollectionRequest& WithMetrics(MetricsT&& value) { SetMetrics(std::forward<MetricsT>(value)); return *this;}
87 template<typename MetricsT = Aws::String>
88 EnableMetricsCollectionRequest& AddMetrics(MetricsT&& value) { m_metricsHasBeenSet = true; m_metrics.emplace_back(std::forward<MetricsT>(value)); return *this; }
90
92
96 inline const Aws::String& GetGranularity() const { return m_granularity; }
97 inline bool GranularityHasBeenSet() const { return m_granularityHasBeenSet; }
98 template<typename GranularityT = Aws::String>
99 void SetGranularity(GranularityT&& value) { m_granularityHasBeenSet = true; m_granularity = std::forward<GranularityT>(value); }
100 template<typename GranularityT = Aws::String>
101 EnableMetricsCollectionRequest& WithGranularity(GranularityT&& value) { SetGranularity(std::forward<GranularityT>(value)); return *this;}
103 private:
104
105 Aws::String m_autoScalingGroupName;
106 bool m_autoScalingGroupNameHasBeenSet = false;
107
108 Aws::Vector<Aws::String> m_metrics;
109 bool m_metricsHasBeenSet = false;
110
111 Aws::String m_granularity;
112 bool m_granularityHasBeenSet = false;
113 };
114
115} // namespace Model
116} // namespace AutoScaling
117} // 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