AWS SDK for C++

AWS SDK for C++ Version 1.11.787

Loading...
Searching...
No Matches
GetCostAndUsageResult.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/DimensionValuesWithAttributes.h>
9#include <aws/ce/model/GroupDefinition.h>
10#include <aws/ce/model/ResultByTime.h>
11#include <aws/core/http/HttpResponse.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18template <typename RESULT_TYPE>
19class AmazonWebServiceResult;
20
21namespace Utils {
22namespace Json {
23class JsonValue;
24} // namespace Json
25} // namespace Utils
26namespace CostExplorer {
27namespace Model {
29 public:
30 AWS_COSTEXPLORER_API GetCostAndUsageResult() = default;
33
35
40 inline const Aws::String& GetNextPageToken() const { return m_nextPageToken; }
41 template <typename NextPageTokenT = Aws::String>
42 void SetNextPageToken(NextPageTokenT&& value) {
43 m_nextPageTokenHasBeenSet = true;
44 m_nextPageToken = std::forward<NextPageTokenT>(value);
45 }
46 template <typename NextPageTokenT = Aws::String>
47 GetCostAndUsageResult& WithNextPageToken(NextPageTokenT&& value) {
48 SetNextPageToken(std::forward<NextPageTokenT>(value));
49 return *this;
50 }
52
54
58 inline const Aws::Vector<GroupDefinition>& GetGroupDefinitions() const { return m_groupDefinitions; }
59 template <typename GroupDefinitionsT = Aws::Vector<GroupDefinition>>
60 void SetGroupDefinitions(GroupDefinitionsT&& value) {
61 m_groupDefinitionsHasBeenSet = true;
62 m_groupDefinitions = std::forward<GroupDefinitionsT>(value);
63 }
64 template <typename GroupDefinitionsT = Aws::Vector<GroupDefinition>>
65 GetCostAndUsageResult& WithGroupDefinitions(GroupDefinitionsT&& value) {
66 SetGroupDefinitions(std::forward<GroupDefinitionsT>(value));
67 return *this;
68 }
69 template <typename GroupDefinitionsT = GroupDefinition>
70 GetCostAndUsageResult& AddGroupDefinitions(GroupDefinitionsT&& value) {
71 m_groupDefinitionsHasBeenSet = true;
72 m_groupDefinitions.emplace_back(std::forward<GroupDefinitionsT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::Vector<ResultByTime>& GetResultsByTime() const { return m_resultsByTime; }
82 template <typename ResultsByTimeT = Aws::Vector<ResultByTime>>
83 void SetResultsByTime(ResultsByTimeT&& value) {
84 m_resultsByTimeHasBeenSet = true;
85 m_resultsByTime = std::forward<ResultsByTimeT>(value);
86 }
87 template <typename ResultsByTimeT = Aws::Vector<ResultByTime>>
88 GetCostAndUsageResult& WithResultsByTime(ResultsByTimeT&& value) {
89 SetResultsByTime(std::forward<ResultsByTimeT>(value));
90 return *this;
91 }
92 template <typename ResultsByTimeT = ResultByTime>
93 GetCostAndUsageResult& AddResultsByTime(ResultsByTimeT&& value) {
94 m_resultsByTimeHasBeenSet = true;
95 m_resultsByTime.emplace_back(std::forward<ResultsByTimeT>(value));
96 return *this;
97 }
99
101
105 inline const Aws::Vector<DimensionValuesWithAttributes>& GetDimensionValueAttributes() const { return m_dimensionValueAttributes; }
106 template <typename DimensionValueAttributesT = Aws::Vector<DimensionValuesWithAttributes>>
107 void SetDimensionValueAttributes(DimensionValueAttributesT&& value) {
108 m_dimensionValueAttributesHasBeenSet = true;
109 m_dimensionValueAttributes = std::forward<DimensionValueAttributesT>(value);
110 }
111 template <typename DimensionValueAttributesT = Aws::Vector<DimensionValuesWithAttributes>>
112 GetCostAndUsageResult& WithDimensionValueAttributes(DimensionValueAttributesT&& value) {
113 SetDimensionValueAttributes(std::forward<DimensionValueAttributesT>(value));
114 return *this;
115 }
116 template <typename DimensionValueAttributesT = DimensionValuesWithAttributes>
117 GetCostAndUsageResult& AddDimensionValueAttributes(DimensionValueAttributesT&& value) {
118 m_dimensionValueAttributesHasBeenSet = true;
119 m_dimensionValueAttributes.emplace_back(std::forward<DimensionValueAttributesT>(value));
120 return *this;
121 }
123
125
126 inline const Aws::String& GetRequestId() const { return m_requestId; }
127 template <typename RequestIdT = Aws::String>
128 void SetRequestId(RequestIdT&& value) {
129 m_requestIdHasBeenSet = true;
130 m_requestId = std::forward<RequestIdT>(value);
131 }
132 template <typename RequestIdT = Aws::String>
134 SetRequestId(std::forward<RequestIdT>(value));
135 return *this;
136 }
138 inline Aws::Http::HttpResponseCode GetHttpResponseCode() const { return m_HttpResponseCode; }
139
140 private:
141 Aws::String m_nextPageToken;
142
143 Aws::Vector<GroupDefinition> m_groupDefinitions;
144
145 Aws::Vector<ResultByTime> m_resultsByTime;
146
147 Aws::Vector<DimensionValuesWithAttributes> m_dimensionValueAttributes;
148
149 Aws::String m_requestId;
150 Aws::Http::HttpResponseCode m_HttpResponseCode;
151 bool m_nextPageTokenHasBeenSet = false;
152 bool m_groupDefinitionsHasBeenSet = false;
153 bool m_resultsByTimeHasBeenSet = false;
154 bool m_dimensionValueAttributesHasBeenSet = false;
155 bool m_requestIdHasBeenSet = false;
156};
157
158} // namespace Model
159} // namespace CostExplorer
160} // namespace Aws
Aws::Http::HttpResponseCode GetHttpResponseCode() const
GetCostAndUsageResult & AddGroupDefinitions(GroupDefinitionsT &&value)
GetCostAndUsageResult & AddDimensionValueAttributes(DimensionValueAttributesT &&value)
GetCostAndUsageResult & WithNextPageToken(NextPageTokenT &&value)
AWS_COSTEXPLORER_API GetCostAndUsageResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
const Aws::Vector< GroupDefinition > & GetGroupDefinitions() const
GetCostAndUsageResult & WithResultsByTime(ResultsByTimeT &&value)
AWS_COSTEXPLORER_API GetCostAndUsageResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
const Aws::Vector< ResultByTime > & GetResultsByTime() const
GetCostAndUsageResult & WithGroupDefinitions(GroupDefinitionsT &&value)
void SetDimensionValueAttributes(DimensionValueAttributesT &&value)
GetCostAndUsageResult & AddResultsByTime(ResultsByTimeT &&value)
GetCostAndUsageResult & WithRequestId(RequestIdT &&value)
GetCostAndUsageResult & WithDimensionValueAttributes(DimensionValueAttributesT &&value)
AWS_COSTEXPLORER_API GetCostAndUsageResult()=default
const Aws::Vector< DimensionValuesWithAttributes > & GetDimensionValueAttributes() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue