7#include <aws/billing/BillingPaginationBase.h>
8#include <aws/billing/BillingServiceClientModel.h>
9#include <aws/billing/BillingWaiter.h>
10#include <aws/billing/Billing_EXPORTS.h>
11#include <aws/core/client/AWSClient.h>
12#include <aws/core/client/AWSClientAsyncCRTP.h>
13#include <aws/core/client/ClientConfiguration.h>
14#include <aws/core/utils/json/JsonSerializer.h>
41 std::shared_ptr<BillingEndpointProviderBase> endpointProvider =
nullptr);
54 BillingClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
55 std::shared_ptr<BillingEndpointProviderBase> endpointProvider =
nullptr,
75 BillingClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
94 template <
typename AssociateSourceViewsRequestT = Model::AssociateSourceViewsRequest>
96 return SubmitCallable(&BillingClient::AssociateSourceViews, request);
103 template <
typename AssociateSourceViewsRequestT = Model::AssociateSourceViewsRequest>
105 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
106 return SubmitAsync(&BillingClient::AssociateSourceViews, request, handler, context);
121 template <
typename CreateBillingViewRequestT = Model::CreateBillingViewRequest>
123 return SubmitCallable(&BillingClient::CreateBillingView, request);
130 template <
typename CreateBillingViewRequestT = Model::CreateBillingViewRequest>
132 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
133 return SubmitAsync(&BillingClient::CreateBillingView, request, handler, context);
147 template <
typename DeleteBillingViewRequestT = Model::DeleteBillingViewRequest>
149 return SubmitCallable(&BillingClient::DeleteBillingView, request);
156 template <
typename DeleteBillingViewRequestT = Model::DeleteBillingViewRequest>
158 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
159 return SubmitAsync(&BillingClient::DeleteBillingView, request, handler, context);
175 template <
typename DisassociateSourceViewsRequestT = Model::DisassociateSourceViewsRequest>
177 return SubmitCallable(&BillingClient::DisassociateSourceViews, request);
184 template <
typename DisassociateSourceViewsRequestT = Model::DisassociateSourceViewsRequest>
187 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
188 return SubmitAsync(&BillingClient::DisassociateSourceViews, request, handler, context);
205 template <
typename GetBillingPreferencesRequestT = Model::GetBillingPreferencesRequest>
207 return SubmitCallable(&BillingClient::GetBillingPreferences, request);
214 template <
typename GetBillingPreferencesRequestT = Model::GetBillingPreferencesRequest>
216 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
217 return SubmitAsync(&BillingClient::GetBillingPreferences, request, handler, context);
231 template <
typename GetBillingViewRequestT = Model::GetBillingViewRequest>
233 return SubmitCallable(&BillingClient::GetBillingView, request);
240 template <
typename GetBillingViewRequestT = Model::GetBillingViewRequest>
242 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
243 return SubmitAsync(&BillingClient::GetBillingView, request, handler, context);
261 template <
typename GetCreditAllocationHistoryRequestT = Model::GetCreditAllocationHistoryRequest>
263 const GetCreditAllocationHistoryRequestT& request)
const {
264 return SubmitCallable(&BillingClient::GetCreditAllocationHistory, request);
271 template <
typename GetCreditAllocationHistoryRequestT = Model::GetCreditAllocationHistoryRequest>
274 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
275 return SubmitAsync(&BillingClient::GetCreditAllocationHistory, request, handler, context);
295 template <
typename GetCreditsRequestT = Model::GetCreditsRequest>
297 return SubmitCallable(&BillingClient::GetCredits, request);
304 template <
typename GetCreditsRequestT = Model::GetCreditsRequest>
306 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
307 return SubmitAsync(&BillingClient::GetCredits, request, handler, context);
322 template <
typename GetResourcePolicyRequestT = Model::GetResourcePolicyRequest>
324 return SubmitCallable(&BillingClient::GetResourcePolicy, request);
331 template <
typename GetResourcePolicyRequestT = Model::GetResourcePolicyRequest>
333 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
334 return SubmitAsync(&BillingClient::GetResourcePolicy, request, handler, context);
353 template <
typename ListBillingViewsRequestT = Model::ListBillingViewsRequest>
355 return SubmitCallable(&BillingClient::ListBillingViews, request);
362 template <
typename ListBillingViewsRequestT = Model::ListBillingViewsRequest>
364 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
365 const ListBillingViewsRequestT& request = {})
const {
366 return SubmitAsync(&BillingClient::ListBillingViews, request, handler, context);
382 template <
typename ListSourceViewsForBillingViewRequestT = Model::ListSourceViewsForBillingViewRequest>
384 const ListSourceViewsForBillingViewRequestT& request)
const {
385 return SubmitCallable(&BillingClient::ListSourceViewsForBillingView, request);
392 template <
typename ListSourceViewsForBillingViewRequestT = Model::ListSourceViewsForBillingViewRequest>
395 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
396 return SubmitAsync(&BillingClient::ListSourceViewsForBillingView, request, handler, context);
411 template <
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
413 return SubmitCallable(&BillingClient::ListTagsForResource, request);
420 template <
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
422 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
423 return SubmitAsync(&BillingClient::ListTagsForResource, request, handler, context);
441 template <
typename RedeemCreditsRequestT = Model::RedeemCreditsRequest>
443 return SubmitCallable(&BillingClient::RedeemCredits, request);
450 template <
typename RedeemCreditsRequestT = Model::RedeemCreditsRequest>
452 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
453 return SubmitAsync(&BillingClient::RedeemCredits, request, handler, context);
467 template <
typename TagResourceRequestT = Model::TagResourceRequest>
469 return SubmitCallable(&BillingClient::TagResource, request);
476 template <
typename TagResourceRequestT = Model::TagResourceRequest>
478 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
479 return SubmitAsync(&BillingClient::TagResource, request, handler, context);
493 template <
typename UntagResourceRequestT = Model::UntagResourceRequest>
495 return SubmitCallable(&BillingClient::UntagResource, request);
502 template <
typename UntagResourceRequestT = Model::UntagResourceRequest>
504 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
505 return SubmitAsync(&BillingClient::UntagResource, request, handler, context);
528 template <
typename UpdateBillingPreferencesRequestT = Model::UpdateBillingPreferencesRequest>
530 return SubmitCallable(&BillingClient::UpdateBillingPreferences, request);
537 template <
typename UpdateBillingPreferencesRequestT = Model::UpdateBillingPreferencesRequest>
540 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
541 return SubmitAsync(&BillingClient::UpdateBillingPreferences, request, handler, context);
556 template <
typename UpdateBillingViewRequestT = Model::UpdateBillingViewRequest>
558 return SubmitCallable(&BillingClient::UpdateBillingView, request);
565 template <
typename UpdateBillingViewRequestT = Model::UpdateBillingViewRequest>
567 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
568 return SubmitAsync(&BillingClient::UpdateBillingView, request, handler, context);
583 std::shared_ptr<BillingEndpointProviderBase> m_endpointProvider;
virtual std::shared_ptr< BillingEndpointProviderBase > & accessEndpointProvider()
virtual Model::GetCreditAllocationHistoryOutcome GetCreditAllocationHistory(const Model::GetCreditAllocationHistoryRequest &request) const
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::UpdateBillingPreferencesOutcomeCallable UpdateBillingPreferencesCallable(const UpdateBillingPreferencesRequestT &request) const
Model::CreateBillingViewOutcomeCallable CreateBillingViewCallable(const CreateBillingViewRequestT &request) const
Model::AssociateSourceViewsOutcomeCallable AssociateSourceViewsCallable(const AssociateSourceViewsRequestT &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
virtual Model::DisassociateSourceViewsOutcome DisassociateSourceViews(const Model::DisassociateSourceViewsRequest &request) 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
void AssociateSourceViewsAsync(const AssociateSourceViewsRequestT &request, const AssociateSourceViewsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) 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)
virtual void OverrideEndpoint(const Aws::String &endpoint)
Model::ListBillingViewsOutcomeCallable ListBillingViewsCallable(const ListBillingViewsRequestT &request={}) const
void GetBillingPreferencesAsync(const GetBillingPreferencesRequestT &request, const GetBillingPreferencesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) 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
Model::GetCreditAllocationHistoryOutcomeCallable GetCreditAllocationHistoryCallable(const GetCreditAllocationHistoryRequestT &request) const
BillingClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< BillingEndpointProviderBase > endpointProvider=nullptr, const Aws::Billing::BillingClientConfiguration &clientConfiguration=Aws::Billing::BillingClientConfiguration())
void GetCreditAllocationHistoryAsync(const GetCreditAllocationHistoryRequestT &request, const GetCreditAllocationHistoryResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
static const char * GetAllocationTag()
static const char * GetServiceName()
Model::GetResourcePolicyOutcomeCallable GetResourcePolicyCallable(const GetResourcePolicyRequestT &request) const
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
Model::GetCreditsOutcomeCallable GetCreditsCallable(const GetCreditsRequestT &request) const
void GetCreditsAsync(const GetCreditsRequestT &request, const GetCreditsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void UpdateBillingViewAsync(const UpdateBillingViewRequestT &request, const UpdateBillingViewResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
BillingClientConfiguration ClientConfigurationType
void DisassociateSourceViewsAsync(const DisassociateSourceViewsRequestT &request, const DisassociateSourceViewsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::RedeemCreditsOutcome RedeemCredits(const Model::RedeemCreditsRequest &request) const
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
virtual Model::AssociateSourceViewsOutcome AssociateSourceViews(const Model::AssociateSourceViewsRequest &request) const
virtual Model::UpdateBillingPreferencesOutcome UpdateBillingPreferences(const Model::UpdateBillingPreferencesRequest &request) const
virtual Model::GetCreditsOutcome GetCredits(const Model::GetCreditsRequest &request) const
Model::RedeemCreditsOutcomeCallable RedeemCreditsCallable(const RedeemCreditsRequestT &request) const
virtual Model::DeleteBillingViewOutcome DeleteBillingView(const Model::DeleteBillingViewRequest &request) const
Model::DisassociateSourceViewsOutcomeCallable DisassociateSourceViewsCallable(const DisassociateSourceViewsRequestT &request) const
Model::GetBillingPreferencesOutcomeCallable GetBillingPreferencesCallable(const GetBillingPreferencesRequestT &request) const
Model::UpdateBillingViewOutcomeCallable UpdateBillingViewCallable(const UpdateBillingViewRequestT &request) const
void RedeemCreditsAsync(const RedeemCreditsRequestT &request, const RedeemCreditsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void UpdateBillingPreferencesAsync(const UpdateBillingPreferencesRequestT &request, const UpdateBillingPreferencesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBillingPreferencesOutcome GetBillingPreferences(const Model::GetBillingPreferencesRequest &request) const
std::future< GetCreditsOutcome > GetCreditsOutcomeCallable
std::future< GetBillingPreferencesOutcome > GetBillingPreferencesOutcomeCallable
std::future< DisassociateSourceViewsOutcome > DisassociateSourceViewsOutcomeCallable
std::future< UpdateBillingPreferencesOutcome > UpdateBillingPreferencesOutcomeCallable
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
std::future< GetBillingViewOutcome > GetBillingViewOutcomeCallable
std::future< CreateBillingViewOutcome > CreateBillingViewOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
std::future< GetCreditAllocationHistoryOutcome > GetCreditAllocationHistoryOutcomeCallable
std::future< ListSourceViewsForBillingViewOutcome > ListSourceViewsForBillingViewOutcomeCallable
std::future< GetResourcePolicyOutcome > GetResourcePolicyOutcomeCallable
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
std::future< DeleteBillingViewOutcome > DeleteBillingViewOutcomeCallable
std::future< AssociateSourceViewsOutcome > AssociateSourceViewsOutcomeCallable
std::future< RedeemCreditsOutcome > RedeemCreditsOutcomeCallable
std::future< ListBillingViewsOutcome > ListBillingViewsOutcomeCallable
std::future< UpdateBillingViewOutcome > UpdateBillingViewOutcomeCallable
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::UpdateBillingViewRequest &, const Model::UpdateBillingViewOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateBillingViewResponseReceivedHandler
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::UpdateBillingPreferencesRequest &, const Model::UpdateBillingPreferencesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateBillingPreferencesResponseReceivedHandler
std::function< void(const BillingClient *, const Model::GetCreditsRequest &, const Model::GetCreditsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetCreditsResponseReceivedHandler
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::GetResourcePolicyRequest &, const Model::GetResourcePolicyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetResourcePolicyResponseReceivedHandler
std::function< void(const BillingClient *, const Model::GetBillingPreferencesRequest &, const Model::GetBillingPreferencesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBillingPreferencesResponseReceivedHandler
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::CreateBillingViewRequest &, const Model::CreateBillingViewOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateBillingViewResponseReceivedHandler
std::function< void(const BillingClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UntagResourceResponseReceivedHandler
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::DisassociateSourceViewsRequest &, const Model::DisassociateSourceViewsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DisassociateSourceViewsResponseReceivedHandler
std::function< void(const BillingClient *, const Model::GetCreditAllocationHistoryRequest &, const Model::GetCreditAllocationHistoryOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetCreditAllocationHistoryResponseReceivedHandler
std::function< void(const BillingClient *, const Model::RedeemCreditsRequest &, const Model::RedeemCreditsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> RedeemCreditsResponseReceivedHandler
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::AssociateSourceViewsRequest &, const Model::AssociateSourceViewsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssociateSourceViewsResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String