AWS SDK for C++

AWS SDK for C++ Version 1.11.850

Loading...
Searching...
No Matches
GetEstimatedWaterAllocationRequest.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/sustainability/SustainabilityRequest.h>
10#include <aws/sustainability/Sustainability_EXPORTS.h>
11#include <aws/sustainability/model/Dimension.h>
12#include <aws/sustainability/model/FilterExpression.h>
13#include <aws/sustainability/model/TimeGranularity.h>
14#include <aws/sustainability/model/TimePeriod.h>
15#include <aws/sustainability/model/WaterAllocationType.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Sustainability {
21namespace Model {
22
26 public:
27 AWS_SUSTAINABILITY_API GetEstimatedWaterAllocationRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "GetEstimatedWaterAllocation"; }
34
35 AWS_SUSTAINABILITY_API Aws::String SerializePayload() const override;
36
38
43 inline const TimePeriod& GetTimePeriod() const { return m_timePeriod; }
44 inline bool TimePeriodHasBeenSet() const { return m_timePeriodHasBeenSet; }
45 template <typename TimePeriodT = TimePeriod>
46 void SetTimePeriod(TimePeriodT&& value) {
47 m_timePeriodHasBeenSet = true;
48 m_timePeriod = std::forward<TimePeriodT>(value);
49 }
50 template <typename TimePeriodT = TimePeriod>
52 SetTimePeriod(std::forward<TimePeriodT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::Vector<Dimension>& GetGroupBy() const { return m_groupBy; }
62 inline bool GroupByHasBeenSet() const { return m_groupByHasBeenSet; }
63 template <typename GroupByT = Aws::Vector<Dimension>>
64 void SetGroupBy(GroupByT&& value) {
65 m_groupByHasBeenSet = true;
66 m_groupBy = std::forward<GroupByT>(value);
67 }
68 template <typename GroupByT = Aws::Vector<Dimension>>
70 SetGroupBy(std::forward<GroupByT>(value));
71 return *this;
72 }
74 m_groupByHasBeenSet = true;
75 m_groupBy.push_back(value);
76 return *this;
77 }
79
81
86 inline const FilterExpression& GetFilterBy() const { return m_filterBy; }
87 inline bool FilterByHasBeenSet() const { return m_filterByHasBeenSet; }
88 template <typename FilterByT = FilterExpression>
89 void SetFilterBy(FilterByT&& value) {
90 m_filterByHasBeenSet = true;
91 m_filterBy = std::forward<FilterByT>(value);
92 }
93 template <typename FilterByT = FilterExpression>
95 SetFilterBy(std::forward<FilterByT>(value));
96 return *this;
97 }
99
101
105 inline const Aws::Vector<WaterAllocationType>& GetAllocationTypes() const { return m_allocationTypes; }
106 inline bool AllocationTypesHasBeenSet() const { return m_allocationTypesHasBeenSet; }
107 template <typename AllocationTypesT = Aws::Vector<WaterAllocationType>>
108 void SetAllocationTypes(AllocationTypesT&& value) {
109 m_allocationTypesHasBeenSet = true;
110 m_allocationTypes = std::forward<AllocationTypesT>(value);
111 }
112 template <typename AllocationTypesT = Aws::Vector<WaterAllocationType>>
114 SetAllocationTypes(std::forward<AllocationTypesT>(value));
115 return *this;
116 }
118 m_allocationTypesHasBeenSet = true;
119 m_allocationTypes.push_back(value);
120 return *this;
121 }
123
125
134 inline TimeGranularity GetGranularity() const { return m_granularity; }
135 inline bool GranularityHasBeenSet() const { return m_granularityHasBeenSet; }
136 inline void SetGranularity(TimeGranularity value) {
137 m_granularityHasBeenSet = true;
138 m_granularity = value;
139 }
141 SetGranularity(value);
142 return *this;
143 }
145
147
151 inline int GetMaxResults() const { return m_maxResults; }
152 inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
153 inline void SetMaxResults(int value) {
154 m_maxResultsHasBeenSet = true;
155 m_maxResults = value;
156 }
158 SetMaxResults(value);
159 return *this;
160 }
162
164
168 inline const Aws::String& GetNextToken() const { return m_nextToken; }
169 inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
170 template <typename NextTokenT = Aws::String>
171 void SetNextToken(NextTokenT&& value) {
172 m_nextTokenHasBeenSet = true;
173 m_nextToken = std::forward<NextTokenT>(value);
174 }
175 template <typename NextTokenT = Aws::String>
177 SetNextToken(std::forward<NextTokenT>(value));
178 return *this;
179 }
181 private:
182 TimePeriod m_timePeriod;
183
184 Aws::Vector<Dimension> m_groupBy;
185
186 FilterExpression m_filterBy;
187
188 Aws::Vector<WaterAllocationType> m_allocationTypes;
189
191
192 int m_maxResults{0};
193
194 Aws::String m_nextToken;
195 bool m_timePeriodHasBeenSet = false;
196 bool m_groupByHasBeenSet = false;
197 bool m_filterByHasBeenSet = false;
198 bool m_allocationTypesHasBeenSet = false;
199 bool m_granularityHasBeenSet = false;
200 bool m_maxResultsHasBeenSet = false;
201 bool m_nextTokenHasBeenSet = false;
202};
203
204} // namespace Model
205} // namespace Sustainability
206} // namespace Aws
GetEstimatedWaterAllocationRequest & WithNextToken(NextTokenT &&value)
GetEstimatedWaterAllocationRequest & WithAllocationTypes(AllocationTypesT &&value)
GetEstimatedWaterAllocationRequest & AddAllocationTypes(WaterAllocationType value)
GetEstimatedWaterAllocationRequest & WithGroupBy(GroupByT &&value)
GetEstimatedWaterAllocationRequest & WithTimePeriod(TimePeriodT &&value)
AWS_SUSTAINABILITY_API GetEstimatedWaterAllocationRequest()=default
AWS_SUSTAINABILITY_API Aws::String SerializePayload() const override
GetEstimatedWaterAllocationRequest & WithGranularity(TimeGranularity value)
GetEstimatedWaterAllocationRequest & WithFilterBy(FilterByT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector