AWS SDK for C++

AWS SDK for C++ Version 1.11.752

Loading...
Searching...
No Matches
CreateFleetMetricRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/iot/IoTRequest.h>
10#include <aws/iot/IoT_EXPORTS.h>
11#include <aws/iot/model/AggregationType.h>
12#include <aws/iot/model/FleetMetricUnit.h>
13#include <aws/iot/model/Tag.h>
14
15#include <utility>
16
17namespace Aws {
18namespace IoT {
19namespace Model {
20
24 public:
25 AWS_IOT_API CreateFleetMetricRequest() = 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 "CreateFleetMetric"; }
32
33 AWS_IOT_API Aws::String SerializePayload() const override;
34
36
39 inline const Aws::String& GetMetricName() const { return m_metricName; }
40 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
41 template <typename MetricNameT = Aws::String>
42 void SetMetricName(MetricNameT&& value) {
43 m_metricNameHasBeenSet = true;
44 m_metricName = std::forward<MetricNameT>(value);
45 }
46 template <typename MetricNameT = Aws::String>
48 SetMetricName(std::forward<MetricNameT>(value));
49 return *this;
50 }
52
54
57 inline const Aws::String& GetQueryString() const { return m_queryString; }
58 inline bool QueryStringHasBeenSet() const { return m_queryStringHasBeenSet; }
59 template <typename QueryStringT = Aws::String>
60 void SetQueryString(QueryStringT&& value) {
61 m_queryStringHasBeenSet = true;
62 m_queryString = std::forward<QueryStringT>(value);
63 }
64 template <typename QueryStringT = Aws::String>
66 SetQueryString(std::forward<QueryStringT>(value));
67 return *this;
68 }
70
72
75 inline const AggregationType& GetAggregationType() const { return m_aggregationType; }
76 inline bool AggregationTypeHasBeenSet() const { return m_aggregationTypeHasBeenSet; }
77 template <typename AggregationTypeT = AggregationType>
78 void SetAggregationType(AggregationTypeT&& value) {
79 m_aggregationTypeHasBeenSet = true;
80 m_aggregationType = std::forward<AggregationTypeT>(value);
81 }
82 template <typename AggregationTypeT = AggregationType>
83 CreateFleetMetricRequest& WithAggregationType(AggregationTypeT&& value) {
84 SetAggregationType(std::forward<AggregationTypeT>(value));
85 return *this;
86 }
88
90
94 inline int GetPeriod() const { return m_period; }
95 inline bool PeriodHasBeenSet() const { return m_periodHasBeenSet; }
96 inline void SetPeriod(int value) {
97 m_periodHasBeenSet = true;
98 m_period = value;
99 }
101 SetPeriod(value);
102 return *this;
103 }
105
107
110 inline const Aws::String& GetAggregationField() const { return m_aggregationField; }
111 inline bool AggregationFieldHasBeenSet() const { return m_aggregationFieldHasBeenSet; }
112 template <typename AggregationFieldT = Aws::String>
113 void SetAggregationField(AggregationFieldT&& value) {
114 m_aggregationFieldHasBeenSet = true;
115 m_aggregationField = std::forward<AggregationFieldT>(value);
116 }
117 template <typename AggregationFieldT = Aws::String>
118 CreateFleetMetricRequest& WithAggregationField(AggregationFieldT&& value) {
119 SetAggregationField(std::forward<AggregationFieldT>(value));
120 return *this;
121 }
123
125
128 inline const Aws::String& GetDescription() const { return m_description; }
129 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
130 template <typename DescriptionT = Aws::String>
131 void SetDescription(DescriptionT&& value) {
132 m_descriptionHasBeenSet = true;
133 m_description = std::forward<DescriptionT>(value);
134 }
135 template <typename DescriptionT = Aws::String>
137 SetDescription(std::forward<DescriptionT>(value));
138 return *this;
139 }
141
143
146 inline const Aws::String& GetQueryVersion() const { return m_queryVersion; }
147 inline bool QueryVersionHasBeenSet() const { return m_queryVersionHasBeenSet; }
148 template <typename QueryVersionT = Aws::String>
149 void SetQueryVersion(QueryVersionT&& value) {
150 m_queryVersionHasBeenSet = true;
151 m_queryVersion = std::forward<QueryVersionT>(value);
152 }
153 template <typename QueryVersionT = Aws::String>
155 SetQueryVersion(std::forward<QueryVersionT>(value));
156 return *this;
157 }
159
161
164 inline const Aws::String& GetIndexName() const { return m_indexName; }
165 inline bool IndexNameHasBeenSet() const { return m_indexNameHasBeenSet; }
166 template <typename IndexNameT = Aws::String>
167 void SetIndexName(IndexNameT&& value) {
168 m_indexNameHasBeenSet = true;
169 m_indexName = std::forward<IndexNameT>(value);
170 }
171 template <typename IndexNameT = Aws::String>
173 SetIndexName(std::forward<IndexNameT>(value));
174 return *this;
175 }
177
179
185 inline FleetMetricUnit GetUnit() const { return m_unit; }
186 inline bool UnitHasBeenSet() const { return m_unitHasBeenSet; }
187 inline void SetUnit(FleetMetricUnit value) {
188 m_unitHasBeenSet = true;
189 m_unit = value;
190 }
192 SetUnit(value);
193 return *this;
194 }
196
198
201 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
202 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
203 template <typename TagsT = Aws::Vector<Tag>>
204 void SetTags(TagsT&& value) {
205 m_tagsHasBeenSet = true;
206 m_tags = std::forward<TagsT>(value);
207 }
208 template <typename TagsT = Aws::Vector<Tag>>
210 SetTags(std::forward<TagsT>(value));
211 return *this;
212 }
213 template <typename TagsT = Tag>
215 m_tagsHasBeenSet = true;
216 m_tags.emplace_back(std::forward<TagsT>(value));
217 return *this;
218 }
220 private:
221 Aws::String m_metricName;
222
223 Aws::String m_queryString;
224
225 AggregationType m_aggregationType;
226
227 int m_period{0};
228
229 Aws::String m_aggregationField;
230
231 Aws::String m_description;
232
233 Aws::String m_queryVersion;
234
235 Aws::String m_indexName;
236
238
239 Aws::Vector<Tag> m_tags;
240 bool m_metricNameHasBeenSet = false;
241 bool m_queryStringHasBeenSet = false;
242 bool m_aggregationTypeHasBeenSet = false;
243 bool m_periodHasBeenSet = false;
244 bool m_aggregationFieldHasBeenSet = false;
245 bool m_descriptionHasBeenSet = false;
246 bool m_queryVersionHasBeenSet = false;
247 bool m_indexNameHasBeenSet = false;
248 bool m_unitHasBeenSet = false;
249 bool m_tagsHasBeenSet = false;
250};
251
252} // namespace Model
253} // namespace IoT
254} // namespace Aws
CreateFleetMetricRequest & WithIndexName(IndexNameT &&value)
CreateFleetMetricRequest & WithMetricName(MetricNameT &&value)
AWS_IOT_API CreateFleetMetricRequest()=default
CreateFleetMetricRequest & AddTags(TagsT &&value)
CreateFleetMetricRequest & WithQueryString(QueryStringT &&value)
void SetAggregationField(AggregationFieldT &&value)
CreateFleetMetricRequest & WithPeriod(int value)
CreateFleetMetricRequest & WithQueryVersion(QueryVersionT &&value)
CreateFleetMetricRequest & WithTags(TagsT &&value)
CreateFleetMetricRequest & WithDescription(DescriptionT &&value)
void SetAggregationType(AggregationTypeT &&value)
CreateFleetMetricRequest & WithAggregationField(AggregationFieldT &&value)
const AggregationType & GetAggregationType() const
AWS_IOT_API Aws::String SerializePayload() const override
CreateFleetMetricRequest & WithUnit(FleetMetricUnit value)
virtual const char * GetServiceRequestName() const override
CreateFleetMetricRequest & WithAggregationType(AggregationTypeT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector