AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
SummaryMetricQuery.h
1
6#pragma once
7#include <aws/iotwireless/IoTWireless_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iotwireless/model/MetricName.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/iotwireless/model/AggregationPeriod.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/iotwireless/model/Dimension.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace IoTWireless
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_IOTWIRELESS_API SummaryMetricQuery() = default;
40 AWS_IOTWIRELESS_API SummaryMetricQuery(Aws::Utils::Json::JsonView jsonValue);
42 AWS_IOTWIRELESS_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::String& GetQueryId() const { return m_queryId; }
50 inline bool QueryIdHasBeenSet() const { return m_queryIdHasBeenSet; }
51 template<typename QueryIdT = Aws::String>
52 void SetQueryId(QueryIdT&& value) { m_queryIdHasBeenSet = true; m_queryId = std::forward<QueryIdT>(value); }
53 template<typename QueryIdT = Aws::String>
54 SummaryMetricQuery& WithQueryId(QueryIdT&& value) { SetQueryId(std::forward<QueryIdT>(value)); return *this;}
56
58
61 inline MetricName GetMetricName() const { return m_metricName; }
62 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
63 inline void SetMetricName(MetricName value) { m_metricNameHasBeenSet = true; m_metricName = value; }
64 inline SummaryMetricQuery& WithMetricName(MetricName value) { SetMetricName(value); return *this;}
66
68
71 inline const Aws::Vector<Dimension>& GetDimensions() const { return m_dimensions; }
72 inline bool DimensionsHasBeenSet() const { return m_dimensionsHasBeenSet; }
73 template<typename DimensionsT = Aws::Vector<Dimension>>
74 void SetDimensions(DimensionsT&& value) { m_dimensionsHasBeenSet = true; m_dimensions = std::forward<DimensionsT>(value); }
75 template<typename DimensionsT = Aws::Vector<Dimension>>
76 SummaryMetricQuery& WithDimensions(DimensionsT&& value) { SetDimensions(std::forward<DimensionsT>(value)); return *this;}
77 template<typename DimensionsT = Dimension>
78 SummaryMetricQuery& AddDimensions(DimensionsT&& value) { m_dimensionsHasBeenSet = true; m_dimensions.emplace_back(std::forward<DimensionsT>(value)); return *this; }
80
82
85 inline AggregationPeriod GetAggregationPeriod() const { return m_aggregationPeriod; }
86 inline bool AggregationPeriodHasBeenSet() const { return m_aggregationPeriodHasBeenSet; }
87 inline void SetAggregationPeriod(AggregationPeriod value) { m_aggregationPeriodHasBeenSet = true; m_aggregationPeriod = value; }
90
92
95 inline const Aws::Utils::DateTime& GetStartTimestamp() const { return m_startTimestamp; }
96 inline bool StartTimestampHasBeenSet() const { return m_startTimestampHasBeenSet; }
97 template<typename StartTimestampT = Aws::Utils::DateTime>
98 void SetStartTimestamp(StartTimestampT&& value) { m_startTimestampHasBeenSet = true; m_startTimestamp = std::forward<StartTimestampT>(value); }
99 template<typename StartTimestampT = Aws::Utils::DateTime>
100 SummaryMetricQuery& WithStartTimestamp(StartTimestampT&& value) { SetStartTimestamp(std::forward<StartTimestampT>(value)); return *this;}
102
104
107 inline const Aws::Utils::DateTime& GetEndTimestamp() const { return m_endTimestamp; }
108 inline bool EndTimestampHasBeenSet() const { return m_endTimestampHasBeenSet; }
109 template<typename EndTimestampT = Aws::Utils::DateTime>
110 void SetEndTimestamp(EndTimestampT&& value) { m_endTimestampHasBeenSet = true; m_endTimestamp = std::forward<EndTimestampT>(value); }
111 template<typename EndTimestampT = Aws::Utils::DateTime>
112 SummaryMetricQuery& WithEndTimestamp(EndTimestampT&& value) { SetEndTimestamp(std::forward<EndTimestampT>(value)); return *this;}
114 private:
115
116 Aws::String m_queryId;
117 bool m_queryIdHasBeenSet = false;
118
119 MetricName m_metricName{MetricName::NOT_SET};
120 bool m_metricNameHasBeenSet = false;
121
122 Aws::Vector<Dimension> m_dimensions;
123 bool m_dimensionsHasBeenSet = false;
124
126 bool m_aggregationPeriodHasBeenSet = false;
127
128 Aws::Utils::DateTime m_startTimestamp{};
129 bool m_startTimestampHasBeenSet = false;
130
131 Aws::Utils::DateTime m_endTimestamp{};
132 bool m_endTimestampHasBeenSet = false;
133 };
134
135} // namespace Model
136} // namespace IoTWireless
137} // namespace Aws
SummaryMetricQuery & WithMetricName(MetricName value)
const Aws::Vector< Dimension > & GetDimensions() const
void SetAggregationPeriod(AggregationPeriod value)
SummaryMetricQuery & WithQueryId(QueryIdT &&value)
const Aws::Utils::DateTime & GetStartTimestamp() const
AWS_IOTWIRELESS_API SummaryMetricQuery & operator=(Aws::Utils::Json::JsonView jsonValue)
SummaryMetricQuery & WithDimensions(DimensionsT &&value)
SummaryMetricQuery & WithStartTimestamp(StartTimestampT &&value)
AWS_IOTWIRELESS_API SummaryMetricQuery(Aws::Utils::Json::JsonView jsonValue)
AWS_IOTWIRELESS_API SummaryMetricQuery()=default
SummaryMetricQuery & WithAggregationPeriod(AggregationPeriod value)
SummaryMetricQuery & WithEndTimestamp(EndTimestampT &&value)
void SetStartTimestamp(StartTimestampT &&value)
SummaryMetricQuery & AddDimensions(DimensionsT &&value)
const Aws::Utils::DateTime & GetEndTimestamp() const
AWS_IOTWIRELESS_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue