AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
GetLoadBalancerMetricDataRequest.h
1
6#pragma once
7#include <aws/lightsail/Lightsail_EXPORTS.h>
8#include <aws/lightsail/LightsailRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/lightsail/model/LoadBalancerMetricName.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/lightsail/model/MetricUnit.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/lightsail/model/MetricStatistic.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Lightsail
20{
21namespace Model
22{
23
27 {
28 public:
29 AWS_LIGHTSAIL_API GetLoadBalancerMetricDataRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "GetLoadBalancerMetricData"; }
36
37 AWS_LIGHTSAIL_API Aws::String SerializePayload() const override;
38
40
41
43
46 inline const Aws::String& GetLoadBalancerName() const { return m_loadBalancerName; }
47 inline bool LoadBalancerNameHasBeenSet() const { return m_loadBalancerNameHasBeenSet; }
48 template<typename LoadBalancerNameT = Aws::String>
49 void SetLoadBalancerName(LoadBalancerNameT&& value) { m_loadBalancerNameHasBeenSet = true; m_loadBalancerName = std::forward<LoadBalancerNameT>(value); }
50 template<typename LoadBalancerNameT = Aws::String>
51 GetLoadBalancerMetricDataRequest& WithLoadBalancerName(LoadBalancerNameT&& value) { SetLoadBalancerName(std::forward<LoadBalancerNameT>(value)); return *this;}
53
55
131 inline LoadBalancerMetricName GetMetricName() const { return m_metricName; }
132 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
133 inline void SetMetricName(LoadBalancerMetricName value) { m_metricNameHasBeenSet = true; m_metricName = value; }
136
138
141 inline int GetPeriod() const { return m_period; }
142 inline bool PeriodHasBeenSet() const { return m_periodHasBeenSet; }
143 inline void SetPeriod(int value) { m_periodHasBeenSet = true; m_period = value; }
144 inline GetLoadBalancerMetricDataRequest& WithPeriod(int value) { SetPeriod(value); return *this;}
146
148
151 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
152 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
153 template<typename StartTimeT = Aws::Utils::DateTime>
154 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet = true; m_startTime = std::forward<StartTimeT>(value); }
155 template<typename StartTimeT = Aws::Utils::DateTime>
156 GetLoadBalancerMetricDataRequest& WithStartTime(StartTimeT&& value) { SetStartTime(std::forward<StartTimeT>(value)); return *this;}
158
160
163 inline const Aws::Utils::DateTime& GetEndTime() const { return m_endTime; }
164 inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; }
165 template<typename EndTimeT = Aws::Utils::DateTime>
166 void SetEndTime(EndTimeT&& value) { m_endTimeHasBeenSet = true; m_endTime = std::forward<EndTimeT>(value); }
167 template<typename EndTimeT = Aws::Utils::DateTime>
168 GetLoadBalancerMetricDataRequest& WithEndTime(EndTimeT&& value) { SetEndTime(std::forward<EndTimeT>(value)); return *this;}
170
172
177 inline MetricUnit GetUnit() const { return m_unit; }
178 inline bool UnitHasBeenSet() const { return m_unitHasBeenSet; }
179 inline void SetUnit(MetricUnit value) { m_unitHasBeenSet = true; m_unit = value; }
180 inline GetLoadBalancerMetricDataRequest& WithUnit(MetricUnit value) { SetUnit(value); return *this;}
182
184
201 inline const Aws::Vector<MetricStatistic>& GetStatistics() const { return m_statistics; }
202 inline bool StatisticsHasBeenSet() const { return m_statisticsHasBeenSet; }
203 template<typename StatisticsT = Aws::Vector<MetricStatistic>>
204 void SetStatistics(StatisticsT&& value) { m_statisticsHasBeenSet = true; m_statistics = std::forward<StatisticsT>(value); }
205 template<typename StatisticsT = Aws::Vector<MetricStatistic>>
206 GetLoadBalancerMetricDataRequest& WithStatistics(StatisticsT&& value) { SetStatistics(std::forward<StatisticsT>(value)); return *this;}
207 inline GetLoadBalancerMetricDataRequest& AddStatistics(MetricStatistic value) { m_statisticsHasBeenSet = true; m_statistics.push_back(value); return *this; }
209 private:
210
211 Aws::String m_loadBalancerName;
212 bool m_loadBalancerNameHasBeenSet = false;
213
215 bool m_metricNameHasBeenSet = false;
216
217 int m_period{0};
218 bool m_periodHasBeenSet = false;
219
220 Aws::Utils::DateTime m_startTime{};
221 bool m_startTimeHasBeenSet = false;
222
223 Aws::Utils::DateTime m_endTime{};
224 bool m_endTimeHasBeenSet = false;
225
227 bool m_unitHasBeenSet = false;
228
229 Aws::Vector<MetricStatistic> m_statistics;
230 bool m_statisticsHasBeenSet = false;
231 };
232
233} // namespace Model
234} // namespace Lightsail
235} // namespace Aws
AWS_LIGHTSAIL_API GetLoadBalancerMetricDataRequest()=default
GetLoadBalancerMetricDataRequest & WithLoadBalancerName(LoadBalancerNameT &&value)
GetLoadBalancerMetricDataRequest & WithStartTime(StartTimeT &&value)
GetLoadBalancerMetricDataRequest & WithEndTime(EndTimeT &&value)
GetLoadBalancerMetricDataRequest & WithMetricName(LoadBalancerMetricName value)
GetLoadBalancerMetricDataRequest & WithUnit(MetricUnit value)
GetLoadBalancerMetricDataRequest & AddStatistics(MetricStatistic value)
AWS_LIGHTSAIL_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
AWS_LIGHTSAIL_API Aws::String SerializePayload() const override
GetLoadBalancerMetricDataRequest & WithStatistics(StatisticsT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector