AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
BillingClient.h
1
6#pragma once
7#include <aws/billing/Billing_EXPORTS.h>
8#include <aws/core/client/ClientConfiguration.h>
9#include <aws/core/client/AWSClient.h>
10#include <aws/core/client/AWSClientAsyncCRTP.h>
11#include <aws/core/utils/json/JsonSerializer.h>
12#include <aws/billing/BillingServiceClientModel.h>
13
14namespace Aws
15{
16namespace Billing
17{
24 class AWS_BILLING_API BillingClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods<BillingClient>
25 {
26 public:
28 static const char* GetServiceName();
29 static const char* GetAllocationTag();
30
33
39 std::shared_ptr<BillingEndpointProviderBase> endpointProvider = nullptr);
40
46 std::shared_ptr<BillingEndpointProviderBase> endpointProvider = nullptr,
48
53 BillingClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
54 std::shared_ptr<BillingEndpointProviderBase> endpointProvider = nullptr,
56
57
58 /* Legacy constructors due deprecation */
64
70 const Aws::Client::ClientConfiguration& clientConfiguration);
71
76 BillingClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
77 const Aws::Client::ClientConfiguration& clientConfiguration);
78
79 /* End of legacy constructors due deprecation */
80 virtual ~BillingClient();
81
89
93 template<typename CreateBillingViewRequestT = Model::CreateBillingViewRequest>
94 Model::CreateBillingViewOutcomeCallable CreateBillingViewCallable(const CreateBillingViewRequestT& request) const
95 {
96 return SubmitCallable(&BillingClient::CreateBillingView, request);
97 }
98
102 template<typename CreateBillingViewRequestT = Model::CreateBillingViewRequest>
103 void CreateBillingViewAsync(const CreateBillingViewRequestT& request, const CreateBillingViewResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
104 {
105 return SubmitAsync(&BillingClient::CreateBillingView, request, handler, context);
106 }
107
114
118 template<typename DeleteBillingViewRequestT = Model::DeleteBillingViewRequest>
119 Model::DeleteBillingViewOutcomeCallable DeleteBillingViewCallable(const DeleteBillingViewRequestT& request) const
120 {
121 return SubmitCallable(&BillingClient::DeleteBillingView, request);
122 }
123
127 template<typename DeleteBillingViewRequestT = Model::DeleteBillingViewRequest>
128 void DeleteBillingViewAsync(const DeleteBillingViewRequestT& request, const DeleteBillingViewResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
129 {
130 return SubmitAsync(&BillingClient::DeleteBillingView, request, handler, context);
131 }
132
140
144 template<typename GetBillingViewRequestT = Model::GetBillingViewRequest>
145 Model::GetBillingViewOutcomeCallable GetBillingViewCallable(const GetBillingViewRequestT& request) const
146 {
147 return SubmitCallable(&BillingClient::GetBillingView, request);
148 }
149
153 template<typename GetBillingViewRequestT = Model::GetBillingViewRequest>
154 void GetBillingViewAsync(const GetBillingViewRequestT& request, const GetBillingViewResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
155 {
156 return SubmitAsync(&BillingClient::GetBillingView, request, handler, context);
157 }
158
166
170 template<typename GetResourcePolicyRequestT = Model::GetResourcePolicyRequest>
171 Model::GetResourcePolicyOutcomeCallable GetResourcePolicyCallable(const GetResourcePolicyRequestT& request) const
172 {
173 return SubmitCallable(&BillingClient::GetResourcePolicy, request);
174 }
175
179 template<typename GetResourcePolicyRequestT = Model::GetResourcePolicyRequest>
180 void GetResourcePolicyAsync(const GetResourcePolicyRequestT& request, const GetResourcePolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
181 {
182 return SubmitAsync(&BillingClient::GetResourcePolicy, request, handler, context);
183 }
184
196
200 template<typename ListBillingViewsRequestT = Model::ListBillingViewsRequest>
201 Model::ListBillingViewsOutcomeCallable ListBillingViewsCallable(const ListBillingViewsRequestT& request = {}) const
202 {
203 return SubmitCallable(&BillingClient::ListBillingViews, request);
204 }
205
209 template<typename ListBillingViewsRequestT = Model::ListBillingViewsRequest>
210 void ListBillingViewsAsync(const ListBillingViewsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr, const ListBillingViewsRequestT& request = {}) const
211 {
212 return SubmitAsync(&BillingClient::ListBillingViews, request, handler, context);
213 }
214
222
226 template<typename ListSourceViewsForBillingViewRequestT = Model::ListSourceViewsForBillingViewRequest>
227 Model::ListSourceViewsForBillingViewOutcomeCallable ListSourceViewsForBillingViewCallable(const ListSourceViewsForBillingViewRequestT& request) const
228 {
229 return SubmitCallable(&BillingClient::ListSourceViewsForBillingView, request);
230 }
231
235 template<typename ListSourceViewsForBillingViewRequestT = Model::ListSourceViewsForBillingViewRequest>
236 void ListSourceViewsForBillingViewAsync(const ListSourceViewsForBillingViewRequestT& request, const ListSourceViewsForBillingViewResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
237 {
238 return SubmitAsync(&BillingClient::ListSourceViewsForBillingView, request, handler, context);
239 }
240
248
252 template<typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
253 Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const
254 {
255 return SubmitCallable(&BillingClient::ListTagsForResource, request);
256 }
257
261 template<typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
262 void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
263 {
264 return SubmitAsync(&BillingClient::ListTagsForResource, request, handler, context);
265 }
266
274
278 template<typename TagResourceRequestT = Model::TagResourceRequest>
279 Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const
280 {
281 return SubmitCallable(&BillingClient::TagResource, request);
282 }
283
287 template<typename TagResourceRequestT = Model::TagResourceRequest>
288 void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
289 {
290 return SubmitAsync(&BillingClient::TagResource, request, handler, context);
291 }
292
300
304 template<typename UntagResourceRequestT = Model::UntagResourceRequest>
305 Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const
306 {
307 return SubmitCallable(&BillingClient::UntagResource, request);
308 }
309
313 template<typename UntagResourceRequestT = Model::UntagResourceRequest>
314 void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
315 {
316 return SubmitAsync(&BillingClient::UntagResource, request, handler, context);
317 }
318
326
330 template<typename UpdateBillingViewRequestT = Model::UpdateBillingViewRequest>
331 Model::UpdateBillingViewOutcomeCallable UpdateBillingViewCallable(const UpdateBillingViewRequestT& request) const
332 {
333 return SubmitCallable(&BillingClient::UpdateBillingView, request);
334 }
335
339 template<typename UpdateBillingViewRequestT = Model::UpdateBillingViewRequest>
340 void UpdateBillingViewAsync(const UpdateBillingViewRequestT& request, const UpdateBillingViewResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
341 {
342 return SubmitAsync(&BillingClient::UpdateBillingView, request, handler, context);
343 }
344
345
346 void OverrideEndpoint(const Aws::String& endpoint);
347 std::shared_ptr<BillingEndpointProviderBase>& accessEndpointProvider();
348 private:
350 void init(const BillingClientConfiguration& clientConfiguration);
351
352 BillingClientConfiguration m_clientConfiguration;
353 std::shared_ptr<BillingEndpointProviderBase> m_endpointProvider;
354 };
355
356} // namespace Billing
357} // namespace Aws
virtual Model::GetBillingViewOutcome GetBillingView(const Model::GetBillingViewRequest &request) const
BillingClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::ListSourceViewsForBillingViewOutcomeCallable ListSourceViewsForBillingViewCallable(const ListSourceViewsForBillingViewRequestT &request) const
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT &request) const
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT &request) const
void ListBillingViewsAsync(const ListBillingViewsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListBillingViewsRequestT &request={}) const
BillingEndpointProvider EndpointProviderType
void TagResourceAsync(const TagResourceRequestT &request, const TagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT &request) const
Model::GetBillingViewOutcomeCallable GetBillingViewCallable(const GetBillingViewRequestT &request) const
void DeleteBillingViewAsync(const DeleteBillingViewRequestT &request, const DeleteBillingViewResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::CreateBillingViewOutcomeCallable CreateBillingViewCallable(const CreateBillingViewRequestT &request) const
virtual Model::ListBillingViewsOutcome ListBillingViews(const Model::ListBillingViewsRequest &request={}) const
Model::DeleteBillingViewOutcomeCallable DeleteBillingViewCallable(const DeleteBillingViewRequestT &request) const
void GetBillingViewAsync(const GetBillingViewRequestT &request, const GetBillingViewResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListSourceViewsForBillingViewAsync(const ListSourceViewsForBillingViewRequestT &request, const ListSourceViewsForBillingViewResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::Client::AWSJsonClient BASECLASS
void ListTagsForResourceAsync(const ListTagsForResourceRequestT &request, const ListTagsForResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest &request) const
virtual Model::GetResourcePolicyOutcome GetResourcePolicy(const Model::GetResourcePolicyRequest &request) const
virtual Model::UpdateBillingViewOutcome UpdateBillingView(const Model::UpdateBillingViewRequest &request) const
BillingClient(const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest &request) const
BillingClient(const Aws::Billing::BillingClientConfiguration &clientConfiguration=Aws::Billing::BillingClientConfiguration(), std::shared_ptr< BillingEndpointProviderBase > endpointProvider=nullptr)
Model::ListBillingViewsOutcomeCallable ListBillingViewsCallable(const ListBillingViewsRequestT &request={}) const
BillingClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< BillingEndpointProviderBase > endpointProvider=nullptr, const Aws::Billing::BillingClientConfiguration &clientConfiguration=Aws::Billing::BillingClientConfiguration())
BillingClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::ListSourceViewsForBillingViewOutcome ListSourceViewsForBillingView(const Model::ListSourceViewsForBillingViewRequest &request) const
void CreateBillingViewAsync(const CreateBillingViewRequestT &request, const CreateBillingViewResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
BillingClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< BillingEndpointProviderBase > endpointProvider=nullptr, const Aws::Billing::BillingClientConfiguration &clientConfiguration=Aws::Billing::BillingClientConfiguration())
static const char * GetAllocationTag()
static const char * GetServiceName()
Model::GetResourcePolicyOutcomeCallable GetResourcePolicyCallable(const GetResourcePolicyRequestT &request) const
std::shared_ptr< BillingEndpointProviderBase > & accessEndpointProvider()
void UntagResourceAsync(const UntagResourceRequestT &request, const UntagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest &request) const
void UpdateBillingViewAsync(const UpdateBillingViewRequestT &request, const UpdateBillingViewResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
BillingClientConfiguration ClientConfigurationType
virtual Model::CreateBillingViewOutcome CreateBillingView(const Model::CreateBillingViewRequest &request) const
void GetResourcePolicyAsync(const GetResourcePolicyRequestT &request, const GetResourcePolicyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void OverrideEndpoint(const Aws::String &endpoint)
virtual Model::DeleteBillingViewOutcome DeleteBillingView(const Model::DeleteBillingViewRequest &request) const
Model::UpdateBillingViewOutcomeCallable UpdateBillingViewCallable(const UpdateBillingViewRequestT &request) const
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
std::future< GetBillingViewOutcome > GetBillingViewOutcomeCallable
std::future< CreateBillingViewOutcome > CreateBillingViewOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
std::future< ListSourceViewsForBillingViewOutcome > ListSourceViewsForBillingViewOutcomeCallable
std::future< GetResourcePolicyOutcome > GetResourcePolicyOutcomeCallable
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
std::future< DeleteBillingViewOutcome > DeleteBillingViewOutcomeCallable
std::future< ListBillingViewsOutcome > ListBillingViewsOutcomeCallable
std::future< UpdateBillingViewOutcome > UpdateBillingViewOutcomeCallable
std::function< void(const BillingClient *, const Model::ListTagsForResourceRequest &, const Model::ListTagsForResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTagsForResourceResponseReceivedHandler
std::function< void(const BillingClient *, const Model::TagResourceRequest &, const Model::TagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > TagResourceResponseReceivedHandler
std::function< void(const BillingClient *, const Model::DeleteBillingViewRequest &, const Model::DeleteBillingViewOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBillingViewResponseReceivedHandler
std::function< void(const BillingClient *, const Model::ListBillingViewsRequest &, const Model::ListBillingViewsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListBillingViewsResponseReceivedHandler
std::function< void(const BillingClient *, const Model::ListSourceViewsForBillingViewRequest &, const Model::ListSourceViewsForBillingViewOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListSourceViewsForBillingViewResponseReceivedHandler
std::function< void(const BillingClient *, const Model::GetResourcePolicyRequest &, const Model::GetResourcePolicyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetResourcePolicyResponseReceivedHandler
std::function< void(const BillingClient *, const Model::CreateBillingViewRequest &, const Model::CreateBillingViewOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateBillingViewResponseReceivedHandler
std::function< void(const BillingClient *, const Model::UpdateBillingViewRequest &, const Model::UpdateBillingViewOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateBillingViewResponseReceivedHandler
std::function< void(const BillingClient *, const Model::GetBillingViewRequest &, const Model::GetBillingViewOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBillingViewResponseReceivedHandler
std::function< void(const BillingClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UntagResourceResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String