7#include <aws/pi/PI_EXPORTS.h>
8#include <aws/pi/PIRequest.h>
9#include <aws/pi/model/ServiceType.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/pi/model/DimensionGroup.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
63 template<
typename IdentifierT = Aws::String>
64 void SetIdentifier(IdentifierT&& value) { m_identifierHasBeenSet =
true; m_identifier = std::forward<IdentifierT>(value); }
65 template<
typename IdentifierT = Aws::String>
80 template<
typename StartTimeT = Aws::Utils::DateTime>
81 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet =
true; m_startTime = std::forward<StartTimeT>(value); }
82 template<
typename StartTimeT = Aws::Utils::DateTime>
96 template<
typename EndTimeT = Aws::Utils::DateTime>
97 void SetEndTime(EndTimeT&& value) { m_endTimeHasBeenSet =
true; m_endTime = std::forward<EndTimeT>(value); }
98 template<
typename EndTimeT = Aws::Utils::DateTime>
119 template<
typename MetricT = Aws::String>
120 void SetMetric(MetricT&& value) { m_metricHasBeenSet =
true; m_metric = std::forward<MetricT>(value); }
121 template<
typename MetricT = Aws::String>
139 inline void SetPeriodInSeconds(
int value) { m_periodInSecondsHasBeenSet =
true; m_periodInSeconds = value; }
153 template<
typename GroupByT = DimensionGroup>
154 void SetGroupBy(GroupByT&& value) { m_groupByHasBeenSet =
true; m_groupBy = std::forward<GroupByT>(value); }
155 template<
typename GroupByT = DimensionGroup>
170 template<
typename AdditionalMetricsT = Aws::Vector<Aws::String>>
171 void SetAdditionalMetrics(AdditionalMetricsT&& value) { m_additionalMetricsHasBeenSet =
true; m_additionalMetrics = std::forward<AdditionalMetricsT>(value); }
172 template<
typename AdditionalMetricsT = Aws::Vector<Aws::String>>
174 template<
typename AdditionalMetricsT = Aws::String>
185 template<
typename PartitionByT = DimensionGroup>
186 void SetPartitionBy(PartitionByT&& value) { m_partitionByHasBeenSet =
true; m_partitionBy = std::forward<PartitionByT>(value); }
187 template<
typename PartitionByT = DimensionGroup>
202 template<
typename FilterT = Aws::Map<Aws::String, Aws::String>>
203 void SetFilter(FilterT&& value) { m_filterHasBeenSet =
true; m_filter = std::forward<FilterT>(value); }
204 template<
typename FilterT = Aws::Map<Aws::String, Aws::String>>
206 template<
typename FilterKeyT = Aws::String,
typename FilterValueT = Aws::String>
208 m_filterHasBeenSet =
true; m_filter.emplace(std::forward<FilterKeyT>(key), std::forward<FilterValueT>(value));
return *
this;
220 inline void SetMaxResults(
int value) { m_maxResultsHasBeenSet =
true; m_maxResults = value; }
232 template<
typename NextTokenT = Aws::String>
233 void SetNextToken(NextTokenT&& value) { m_nextTokenHasBeenSet =
true; m_nextToken = std::forward<NextTokenT>(value); }
234 template<
typename NextTokenT = Aws::String>
240 bool m_serviceTypeHasBeenSet =
false;
243 bool m_identifierHasBeenSet =
false;
246 bool m_startTimeHasBeenSet =
false;
249 bool m_endTimeHasBeenSet =
false;
252 bool m_metricHasBeenSet =
false;
254 int m_periodInSeconds{0};
255 bool m_periodInSecondsHasBeenSet =
false;
257 DimensionGroup m_groupBy;
258 bool m_groupByHasBeenSet =
false;
261 bool m_additionalMetricsHasBeenSet =
false;
263 DimensionGroup m_partitionBy;
264 bool m_partitionByHasBeenSet =
false;
267 bool m_filterHasBeenSet =
false;
270 bool m_maxResultsHasBeenSet =
false;
273 bool m_nextTokenHasBeenSet =
false;
DescribeDimensionKeysRequest & WithPartitionBy(PartitionByT &&value)
DescribeDimensionKeysRequest & AddAdditionalMetrics(AdditionalMetricsT &&value)
bool EndTimeHasBeenSet() const
bool NextTokenHasBeenSet() const
const Aws::String & GetMetric() const
bool MaxResultsHasBeenSet() const
void SetNextToken(NextTokenT &&value)
virtual const char * GetServiceRequestName() const override
bool FilterHasBeenSet() const
const Aws::Vector< Aws::String > & GetAdditionalMetrics() const
DescribeDimensionKeysRequest & WithMetric(MetricT &&value)
DescribeDimensionKeysRequest & WithEndTime(EndTimeT &&value)
void SetPeriodInSeconds(int value)
bool PartitionByHasBeenSet() const
DescribeDimensionKeysRequest & WithStartTime(StartTimeT &&value)
DescribeDimensionKeysRequest & WithIdentifier(IdentifierT &&value)
bool IdentifierHasBeenSet() const
bool PeriodInSecondsHasBeenSet() const
const DimensionGroup & GetPartitionBy() const
void SetMetric(MetricT &&value)
int GetMaxResults() const
AWS_PI_API DescribeDimensionKeysRequest()=default
DescribeDimensionKeysRequest & AddFilter(FilterKeyT &&key, FilterValueT &&value)
DescribeDimensionKeysRequest & WithPeriodInSeconds(int value)
DescribeDimensionKeysRequest & WithMaxResults(int value)
const Aws::Utils::DateTime & GetEndTime() const
DescribeDimensionKeysRequest & WithGroupBy(GroupByT &&value)
bool StartTimeHasBeenSet() const
ServiceType GetServiceType() const
void SetServiceType(ServiceType value)
void SetStartTime(StartTimeT &&value)
const Aws::Utils::DateTime & GetStartTime() const
DescribeDimensionKeysRequest & WithNextToken(NextTokenT &&value)
const Aws::Map< Aws::String, Aws::String > & GetFilter() const
DescribeDimensionKeysRequest & WithServiceType(ServiceType value)
DescribeDimensionKeysRequest & WithFilter(FilterT &&value)
void SetIdentifier(IdentifierT &&value)
void SetGroupBy(GroupByT &&value)
void SetFilter(FilterT &&value)
void SetMaxResults(int value)
void SetEndTime(EndTimeT &&value)
AWS_PI_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::String & GetIdentifier() const
bool ServiceTypeHasBeenSet() const
int GetPeriodInSeconds() const
bool AdditionalMetricsHasBeenSet() const
bool GroupByHasBeenSet() const
AWS_PI_API Aws::String SerializePayload() const override
const Aws::String & GetNextToken() const
DescribeDimensionKeysRequest & WithAdditionalMetrics(AdditionalMetricsT &&value)
void SetPartitionBy(PartitionByT &&value)
const DimensionGroup & GetGroupBy() const
void SetAdditionalMetrics(AdditionalMetricsT &&value)
bool MetricHasBeenSet() const
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector