AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
GetSavingsPlansUtilizationRequest.h
1
6#pragma once
7#include <aws/ce/CostExplorerRequest.h>
8#include <aws/ce/CostExplorer_EXPORTS.h>
9#include <aws/ce/model/DateInterval.h>
10#include <aws/ce/model/Expression.h>
11#include <aws/ce/model/Granularity.h>
12#include <aws/ce/model/SortDefinition.h>
13
14#include <utility>
15
16namespace Aws {
17namespace CostExplorer {
18namespace Model {
19
23 public:
24 AWS_COSTEXPLORER_API GetSavingsPlansUtilizationRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "GetSavingsPlansUtilization"; }
31
32 AWS_COSTEXPLORER_API Aws::String SerializePayload() const override;
33
34 AWS_COSTEXPLORER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
35
37
43 inline const DateInterval& GetTimePeriod() const { return m_timePeriod; }
44 inline bool TimePeriodHasBeenSet() const { return m_timePeriodHasBeenSet; }
45 template <typename TimePeriodT = DateInterval>
46 void SetTimePeriod(TimePeriodT&& value) {
47 m_timePeriodHasBeenSet = true;
48 m_timePeriod = std::forward<TimePeriodT>(value);
49 }
50 template <typename TimePeriodT = DateInterval>
52 SetTimePeriod(std::forward<TimePeriodT>(value));
53 return *this;
54 }
56
58
63 inline Granularity GetGranularity() const { return m_granularity; }
64 inline bool GranularityHasBeenSet() const { return m_granularityHasBeenSet; }
65 inline void SetGranularity(Granularity value) {
66 m_granularityHasBeenSet = true;
67 m_granularity = value;
68 }
70 SetGranularity(value);
71 return *this;
72 }
74
76
88 inline const Expression& GetFilter() const { return m_filter; }
89 inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
90 template <typename FilterT = Expression>
91 void SetFilter(FilterT&& value) {
92 m_filterHasBeenSet = true;
93 m_filter = std::forward<FilterT>(value);
94 }
95 template <typename FilterT = Expression>
97 SetFilter(std::forward<FilterT>(value));
98 return *this;
99 }
101
103
113 inline const SortDefinition& GetSortBy() const { return m_sortBy; }
114 inline bool SortByHasBeenSet() const { return m_sortByHasBeenSet; }
115 template <typename SortByT = SortDefinition>
116 void SetSortBy(SortByT&& value) {
117 m_sortByHasBeenSet = true;
118 m_sortBy = std::forward<SortByT>(value);
119 }
120 template <typename SortByT = SortDefinition>
122 SetSortBy(std::forward<SortByT>(value));
123 return *this;
124 }
126 private:
127 DateInterval m_timePeriod;
128
129 Granularity m_granularity{Granularity::NOT_SET};
130
131 Expression m_filter;
132
133 SortDefinition m_sortBy;
134 bool m_timePeriodHasBeenSet = false;
135 bool m_granularityHasBeenSet = false;
136 bool m_filterHasBeenSet = false;
137 bool m_sortByHasBeenSet = false;
138};
139
140} // namespace Model
141} // namespace CostExplorer
142} // namespace Aws
AWS_COSTEXPLORER_API GetSavingsPlansUtilizationRequest()=default
GetSavingsPlansUtilizationRequest & WithTimePeriod(TimePeriodT &&value)
AWS_COSTEXPLORER_API Aws::String SerializePayload() const override
GetSavingsPlansUtilizationRequest & WithFilter(FilterT &&value)
AWS_COSTEXPLORER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
GetSavingsPlansUtilizationRequest & WithSortBy(SortByT &&value)
GetSavingsPlansUtilizationRequest & WithGranularity(Granularity value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String