AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
MarketplaceMeteringClient.h
1
6#pragma once
7#include <aws/meteringmarketplace/MarketplaceMetering_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/meteringmarketplace/MarketplaceMeteringServiceClientModel.h>
13
14namespace Aws
15{
16namespace MarketplaceMetering
17{
55 class AWS_MARKETPLACEMETERING_API MarketplaceMeteringClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods<MarketplaceMeteringClient>
56 {
57 public:
59 static const char* GetServiceName();
60 static const char* GetAllocationTag();
61
64
70 std::shared_ptr<MarketplaceMeteringEndpointProviderBase> endpointProvider = nullptr);
71
77 std::shared_ptr<MarketplaceMeteringEndpointProviderBase> endpointProvider = nullptr,
79
84 MarketplaceMeteringClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
85 std::shared_ptr<MarketplaceMeteringEndpointProviderBase> endpointProvider = nullptr,
87
88
89 /* Legacy constructors due deprecation */
95
101 const Aws::Client::ClientConfiguration& clientConfiguration);
102
107 MarketplaceMeteringClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
108 const Aws::Client::ClientConfiguration& clientConfiguration);
109
110 /* End of legacy constructors due deprecation */
112
139
143 template<typename BatchMeterUsageRequestT = Model::BatchMeterUsageRequest>
144 Model::BatchMeterUsageOutcomeCallable BatchMeterUsageCallable(const BatchMeterUsageRequestT& request) const
145 {
146 return SubmitCallable(&MarketplaceMeteringClient::BatchMeterUsage, request);
147 }
148
152 template<typename BatchMeterUsageRequestT = Model::BatchMeterUsageRequest>
153 void BatchMeterUsageAsync(const BatchMeterUsageRequestT& request, const BatchMeterUsageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
154 {
155 return SubmitAsync(&MarketplaceMeteringClient::BatchMeterUsage, request, handler, context);
156 }
157
172
176 template<typename MeterUsageRequestT = Model::MeterUsageRequest>
177 Model::MeterUsageOutcomeCallable MeterUsageCallable(const MeterUsageRequestT& request) const
178 {
179 return SubmitCallable(&MarketplaceMeteringClient::MeterUsage, request);
180 }
181
185 template<typename MeterUsageRequestT = Model::MeterUsageRequest>
186 void MeterUsageAsync(const MeterUsageRequestT& request, const MeterUsageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
187 {
188 return SubmitAsync(&MarketplaceMeteringClient::MeterUsage, request, handler, context);
189 }
190
228
232 template<typename RegisterUsageRequestT = Model::RegisterUsageRequest>
233 Model::RegisterUsageOutcomeCallable RegisterUsageCallable(const RegisterUsageRequestT& request) const
234 {
235 return SubmitCallable(&MarketplaceMeteringClient::RegisterUsage, request);
236 }
237
241 template<typename RegisterUsageRequestT = Model::RegisterUsageRequest>
242 void RegisterUsageAsync(const RegisterUsageRequestT& request, const RegisterUsageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
243 {
244 return SubmitAsync(&MarketplaceMeteringClient::RegisterUsage, request, handler, context);
245 }
246
263
267 template<typename ResolveCustomerRequestT = Model::ResolveCustomerRequest>
268 Model::ResolveCustomerOutcomeCallable ResolveCustomerCallable(const ResolveCustomerRequestT& request) const
269 {
270 return SubmitCallable(&MarketplaceMeteringClient::ResolveCustomer, request);
271 }
272
276 template<typename ResolveCustomerRequestT = Model::ResolveCustomerRequest>
277 void ResolveCustomerAsync(const ResolveCustomerRequestT& request, const ResolveCustomerResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
278 {
279 return SubmitAsync(&MarketplaceMeteringClient::ResolveCustomer, request, handler, context);
280 }
281
282
283 void OverrideEndpoint(const Aws::String& endpoint);
284 std::shared_ptr<MarketplaceMeteringEndpointProviderBase>& accessEndpointProvider();
285 private:
287 void init(const MarketplaceMeteringClientConfiguration& clientConfiguration);
288
289 MarketplaceMeteringClientConfiguration m_clientConfiguration;
290 std::shared_ptr<MarketplaceMeteringEndpointProviderBase> m_endpointProvider;
291 };
292
293} // namespace MarketplaceMetering
294} // namespace Aws
MarketplaceMeteringClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< MarketplaceMeteringEndpointProviderBase > endpointProvider=nullptr, const Aws::MarketplaceMetering::MarketplaceMeteringClientConfiguration &clientConfiguration=Aws::MarketplaceMetering::MarketplaceMeteringClientConfiguration())
MarketplaceMeteringClientConfiguration ClientConfigurationType
MarketplaceMeteringClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< MarketplaceMeteringEndpointProviderBase > endpointProvider=nullptr, const Aws::MarketplaceMetering::MarketplaceMeteringClientConfiguration &clientConfiguration=Aws::MarketplaceMetering::MarketplaceMeteringClientConfiguration())
virtual Model::MeterUsageOutcome MeterUsage(const Model::MeterUsageRequest &request) const
void RegisterUsageAsync(const RegisterUsageRequestT &request, const RegisterUsageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ResolveCustomerAsync(const ResolveCustomerRequestT &request, const ResolveCustomerResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void OverrideEndpoint(const Aws::String &endpoint)
Model::ResolveCustomerOutcomeCallable ResolveCustomerCallable(const ResolveCustomerRequestT &request) const
MarketplaceMeteringClient(const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::BatchMeterUsageOutcome BatchMeterUsage(const Model::BatchMeterUsageRequest &request) const
void BatchMeterUsageAsync(const BatchMeterUsageRequestT &request, const BatchMeterUsageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ResolveCustomerOutcome ResolveCustomer(const Model::ResolveCustomerRequest &request) const
void MeterUsageAsync(const MeterUsageRequestT &request, const MeterUsageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::RegisterUsageOutcome RegisterUsage(const Model::RegisterUsageRequest &request) const
MarketplaceMeteringClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::BatchMeterUsageOutcomeCallable BatchMeterUsageCallable(const BatchMeterUsageRequestT &request) const
std::shared_ptr< MarketplaceMeteringEndpointProviderBase > & accessEndpointProvider()
MarketplaceMeteringClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
MarketplaceMeteringClient(const Aws::MarketplaceMetering::MarketplaceMeteringClientConfiguration &clientConfiguration=Aws::MarketplaceMetering::MarketplaceMeteringClientConfiguration(), std::shared_ptr< MarketplaceMeteringEndpointProviderBase > endpointProvider=nullptr)
Model::RegisterUsageOutcomeCallable RegisterUsageCallable(const RegisterUsageRequestT &request) const
Model::MeterUsageOutcomeCallable MeterUsageCallable(const MeterUsageRequestT &request) const
std::future< ResolveCustomerOutcome > ResolveCustomerOutcomeCallable
std::future< MeterUsageOutcome > MeterUsageOutcomeCallable
std::future< BatchMeterUsageOutcome > BatchMeterUsageOutcomeCallable
std::future< RegisterUsageOutcome > RegisterUsageOutcomeCallable
std::function< void(const MarketplaceMeteringClient *, const Model::ResolveCustomerRequest &, const Model::ResolveCustomerOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ResolveCustomerResponseReceivedHandler
std::function< void(const MarketplaceMeteringClient *, const Model::BatchMeterUsageRequest &, const Model::BatchMeterUsageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > BatchMeterUsageResponseReceivedHandler
std::function< void(const MarketplaceMeteringClient *, const Model::MeterUsageRequest &, const Model::MeterUsageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > MeterUsageResponseReceivedHandler
std::function< void(const MarketplaceMeteringClient *, const Model::RegisterUsageRequest &, const Model::RegisterUsageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RegisterUsageResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String