AWS SDK for C++  1.9.1
AWS SDK for C++
GetCostAndUsageWithResourcesRequest.h
Go to the documentation of this file.
1 
6 #pragma once
15 #include <utility>
16 
17 namespace Aws
18 {
19 namespace CostExplorer
20 {
21 namespace Model
22 {
23 
27  {
28  public:
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 "GetCostAndUsageWithResources"; }
36 
37  Aws::String SerializePayload() const override;
38 
40 
41 
51  inline const DateInterval& GetTimePeriod() const{ return m_timePeriod; }
52 
62  inline bool TimePeriodHasBeenSet() const { return m_timePeriodHasBeenSet; }
63 
73  inline void SetTimePeriod(const DateInterval& value) { m_timePeriodHasBeenSet = true; m_timePeriod = value; }
74 
84  inline void SetTimePeriod(DateInterval&& value) { m_timePeriodHasBeenSet = true; m_timePeriod = std::move(value); }
85 
95  inline GetCostAndUsageWithResourcesRequest& WithTimePeriod(const DateInterval& value) { SetTimePeriod(value); return *this;}
96 
106  inline GetCostAndUsageWithResourcesRequest& WithTimePeriod(DateInterval&& value) { SetTimePeriod(std::move(value)); return *this;}
107 
108 
115  inline const Granularity& GetGranularity() const{ return m_granularity; }
116 
123  inline bool GranularityHasBeenSet() const { return m_granularityHasBeenSet; }
124 
131  inline void SetGranularity(const Granularity& value) { m_granularityHasBeenSet = true; m_granularity = value; }
132 
139  inline void SetGranularity(Granularity&& value) { m_granularityHasBeenSet = true; m_granularity = std::move(value); }
140 
147  inline GetCostAndUsageWithResourcesRequest& WithGranularity(const Granularity& value) { SetGranularity(value); return *this;}
148 
155  inline GetCostAndUsageWithResourcesRequest& WithGranularity(Granularity&& value) { SetGranularity(std::move(value)); return *this;}
156 
157 
171  inline const Expression& GetFilter() const{ return m_filter; }
172 
186  inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
187 
201  inline void SetFilter(const Expression& value) { m_filterHasBeenSet = true; m_filter = value; }
202 
216  inline void SetFilter(Expression&& value) { m_filterHasBeenSet = true; m_filter = std::move(value); }
217 
231  inline GetCostAndUsageWithResourcesRequest& WithFilter(const Expression& value) { SetFilter(value); return *this;}
232 
246  inline GetCostAndUsageWithResourcesRequest& WithFilter(Expression&& value) { SetFilter(std::move(value)); return *this;}
247 
248 
267  inline const Aws::Vector<Aws::String>& GetMetrics() const{ return m_metrics; }
268 
287  inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; }
288 
307  inline void SetMetrics(const Aws::Vector<Aws::String>& value) { m_metricsHasBeenSet = true; m_metrics = value; }
308 
327  inline void SetMetrics(Aws::Vector<Aws::String>&& value) { m_metricsHasBeenSet = true; m_metrics = std::move(value); }
328 
347  inline GetCostAndUsageWithResourcesRequest& WithMetrics(const Aws::Vector<Aws::String>& value) { SetMetrics(value); return *this;}
348 
367  inline GetCostAndUsageWithResourcesRequest& WithMetrics(Aws::Vector<Aws::String>&& value) { SetMetrics(std::move(value)); return *this;}
368 
387  inline GetCostAndUsageWithResourcesRequest& AddMetrics(const Aws::String& value) { m_metricsHasBeenSet = true; m_metrics.push_back(value); return *this; }
388 
407  inline GetCostAndUsageWithResourcesRequest& AddMetrics(Aws::String&& value) { m_metricsHasBeenSet = true; m_metrics.push_back(std::move(value)); return *this; }
408 
427  inline GetCostAndUsageWithResourcesRequest& AddMetrics(const char* value) { m_metricsHasBeenSet = true; m_metrics.push_back(value); return *this; }
428 
429 
434  inline const Aws::Vector<GroupDefinition>& GetGroupBy() const{ return m_groupBy; }
435 
440  inline bool GroupByHasBeenSet() const { return m_groupByHasBeenSet; }
441 
446  inline void SetGroupBy(const Aws::Vector<GroupDefinition>& value) { m_groupByHasBeenSet = true; m_groupBy = value; }
447 
452  inline void SetGroupBy(Aws::Vector<GroupDefinition>&& value) { m_groupByHasBeenSet = true; m_groupBy = std::move(value); }
453 
458  inline GetCostAndUsageWithResourcesRequest& WithGroupBy(const Aws::Vector<GroupDefinition>& value) { SetGroupBy(value); return *this;}
459 
464  inline GetCostAndUsageWithResourcesRequest& WithGroupBy(Aws::Vector<GroupDefinition>&& value) { SetGroupBy(std::move(value)); return *this;}
465 
470  inline GetCostAndUsageWithResourcesRequest& AddGroupBy(const GroupDefinition& value) { m_groupByHasBeenSet = true; m_groupBy.push_back(value); return *this; }
471 
476  inline GetCostAndUsageWithResourcesRequest& AddGroupBy(GroupDefinition&& value) { m_groupByHasBeenSet = true; m_groupBy.push_back(std::move(value)); return *this; }
477 
478 
484  inline const Aws::String& GetNextPageToken() const{ return m_nextPageToken; }
485 
491  inline bool NextPageTokenHasBeenSet() const { return m_nextPageTokenHasBeenSet; }
492 
498  inline void SetNextPageToken(const Aws::String& value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken = value; }
499 
505  inline void SetNextPageToken(Aws::String&& value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken = std::move(value); }
506 
512  inline void SetNextPageToken(const char* value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken.assign(value); }
513 
519  inline GetCostAndUsageWithResourcesRequest& WithNextPageToken(const Aws::String& value) { SetNextPageToken(value); return *this;}
520 
526  inline GetCostAndUsageWithResourcesRequest& WithNextPageToken(Aws::String&& value) { SetNextPageToken(std::move(value)); return *this;}
527 
533  inline GetCostAndUsageWithResourcesRequest& WithNextPageToken(const char* value) { SetNextPageToken(value); return *this;}
534 
535  private:
536 
537  DateInterval m_timePeriod;
538  bool m_timePeriodHasBeenSet;
539 
540  Granularity m_granularity;
541  bool m_granularityHasBeenSet;
542 
543  Expression m_filter;
544  bool m_filterHasBeenSet;
545 
546  Aws::Vector<Aws::String> m_metrics;
547  bool m_metricsHasBeenSet;
548 
550  bool m_groupByHasBeenSet;
551 
552  Aws::String m_nextPageToken;
553  bool m_nextPageTokenHasBeenSet;
554  };
555 
556 } // namespace Model
557 } // namespace CostExplorer
558 } // namespace Aws
Aws::CostExplorer::CostExplorerRequest
Definition: CostExplorerRequest.h:17
Aws::CostExplorer::Model::DateInterval
Definition: DateInterval.h:32
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetMetrics
void SetMetrics(Aws::Vector< Aws::String > &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:327
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithFilter
GetCostAndUsageWithResourcesRequest & WithFilter(const Expression &value)
Definition: GetCostAndUsageWithResourcesRequest.h:231
Aws::CostExplorer::Model::Granularity
Granularity
Definition: Granularity.h:17
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetGranularity
void SetGranularity(Granularity &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:139
Aws::Http::HeaderValueCollection
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition: HttpTypes.h:53
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetCostAndUsageWithResourcesRequest
GetCostAndUsageWithResourcesRequest()
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetRequestSpecificHeaders
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::AddMetrics
GetCostAndUsageWithResourcesRequest & AddMetrics(const char *value)
Definition: GetCostAndUsageWithResourcesRequest.h:427
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithGranularity
GetCostAndUsageWithResourcesRequest & WithGranularity(const Granularity &value)
Definition: GetCostAndUsageWithResourcesRequest.h:147
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::AddGroupBy
GetCostAndUsageWithResourcesRequest & AddGroupBy(const GroupDefinition &value)
Definition: GetCostAndUsageWithResourcesRequest.h:470
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetFilter
const Expression & GetFilter() const
Definition: GetCostAndUsageWithResourcesRequest.h:171
CostExplorerRequest.h
DateInterval.h
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetFilter
void SetFilter(const Expression &value)
Definition: GetCostAndUsageWithResourcesRequest.h:201
Aws::CostExplorer::Model::Expression
Definition: Expression.h:69
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithNextPageToken
GetCostAndUsageWithResourcesRequest & WithNextPageToken(Aws::String &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:526
AWSVector.h
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithGranularity
GetCostAndUsageWithResourcesRequest & WithGranularity(Granularity &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:155
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest
Definition: GetCostAndUsageWithResourcesRequest.h:27
Aws::CostExplorer::Model::GroupDefinition
Definition: GroupDefinition.h:34
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::AddGroupBy
GetCostAndUsageWithResourcesRequest & AddGroupBy(GroupDefinition &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:476
CostExplorer_EXPORTS.h
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::MetricsHasBeenSet
bool MetricsHasBeenSet() const
Definition: GetCostAndUsageWithResourcesRequest.h:287
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::AddMetrics
GetCostAndUsageWithResourcesRequest & AddMetrics(const Aws::String &value)
Definition: GetCostAndUsageWithResourcesRequest.h:387
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithTimePeriod
GetCostAndUsageWithResourcesRequest & WithTimePeriod(DateInterval &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:106
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GranularityHasBeenSet
bool GranularityHasBeenSet() const
Definition: GetCostAndUsageWithResourcesRequest.h:123
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithNextPageToken
GetCostAndUsageWithResourcesRequest & WithNextPageToken(const Aws::String &value)
Definition: GetCostAndUsageWithResourcesRequest.h:519
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetGroupBy
void SetGroupBy(Aws::Vector< GroupDefinition > &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:452
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetTimePeriod
void SetTimePeriod(const DateInterval &value)
Definition: GetCostAndUsageWithResourcesRequest.h:73
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithGroupBy
GetCostAndUsageWithResourcesRequest & WithGroupBy(Aws::Vector< GroupDefinition > &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:464
AWSString.h
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetMetrics
const Aws::Vector< Aws::String > & GetMetrics() const
Definition: GetCostAndUsageWithResourcesRequest.h:267
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GroupByHasBeenSet
bool GroupByHasBeenSet() const
Definition: GetCostAndUsageWithResourcesRequest.h:440
AWS_COSTEXPLORER_API
#define AWS_COSTEXPLORER_API
Definition: CostExplorer_EXPORTS.h:28
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithMetrics
GetCostAndUsageWithResourcesRequest & WithMetrics(Aws::Vector< Aws::String > &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:367
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithNextPageToken
GetCostAndUsageWithResourcesRequest & WithNextPageToken(const char *value)
Definition: GetCostAndUsageWithResourcesRequest.h:533
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithFilter
GetCostAndUsageWithResourcesRequest & WithFilter(Expression &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:246
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetNextPageToken
void SetNextPageToken(const Aws::String &value)
Definition: GetCostAndUsageWithResourcesRequest.h:498
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithMetrics
GetCostAndUsageWithResourcesRequest & WithMetrics(const Aws::Vector< Aws::String > &value)
Definition: GetCostAndUsageWithResourcesRequest.h:347
Aws
Definition: AccessManagementClient.h:15
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetGranularity
void SetGranularity(const Granularity &value)
Definition: GetCostAndUsageWithResourcesRequest.h:131
GroupDefinition.h
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetNextPageToken
const Aws::String & GetNextPageToken() const
Definition: GetCostAndUsageWithResourcesRequest.h:484
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: GetCostAndUsageWithResourcesRequest.h:35
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetNextPageToken
void SetNextPageToken(Aws::String &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:505
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetFilter
void SetFilter(Expression &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:216
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::FilterHasBeenSet
bool FilterHasBeenSet() const
Definition: GetCostAndUsageWithResourcesRequest.h:186
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::TimePeriodHasBeenSet
bool TimePeriodHasBeenSet() const
Definition: GetCostAndUsageWithResourcesRequest.h:62
Expression.h
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetNextPageToken
void SetNextPageToken(const char *value)
Definition: GetCostAndUsageWithResourcesRequest.h:512
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithGroupBy
GetCostAndUsageWithResourcesRequest & WithGroupBy(const Aws::Vector< GroupDefinition > &value)
Definition: GetCostAndUsageWithResourcesRequest.h:458
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetTimePeriod
void SetTimePeriod(DateInterval &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:84
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetMetrics
void SetMetrics(const Aws::Vector< Aws::String > &value)
Definition: GetCostAndUsageWithResourcesRequest.h:307
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetGranularity
const Granularity & GetGranularity() const
Definition: GetCostAndUsageWithResourcesRequest.h:115
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetTimePeriod
const DateInterval & GetTimePeriod() const
Definition: GetCostAndUsageWithResourcesRequest.h:51
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::GetGroupBy
const Aws::Vector< GroupDefinition > & GetGroupBy() const
Definition: GetCostAndUsageWithResourcesRequest.h:434
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::SetGroupBy
void SetGroupBy(const Aws::Vector< GroupDefinition > &value)
Definition: GetCostAndUsageWithResourcesRequest.h:446
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::WithTimePeriod
GetCostAndUsageWithResourcesRequest & WithTimePeriod(const DateInterval &value)
Definition: GetCostAndUsageWithResourcesRequest.h:95
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::AddMetrics
GetCostAndUsageWithResourcesRequest & AddMetrics(Aws::String &&value)
Definition: GetCostAndUsageWithResourcesRequest.h:407
Aws::CostExplorer::Model::GetCostAndUsageWithResourcesRequest::NextPageTokenHasBeenSet
bool NextPageTokenHasBeenSet() const
Definition: GetCostAndUsageWithResourcesRequest.h:491
Granularity.h