AWS SDK for C++

AWS SDK for C++ Version 1.11.786

Loading...
Searching...
No Matches
PricingClient.h
1
6#pragma once
7#include <aws/core/client/AWSClient.h>
8#include <aws/core/client/AWSClientAsyncCRTP.h>
9#include <aws/core/client/ClientConfiguration.h>
10#include <aws/core/utils/json/JsonSerializer.h>
11#include <aws/pricing/PricingPaginationBase.h>
12#include <aws/pricing/PricingServiceClientModel.h>
13#include <aws/pricing/PricingWaiter.h>
14#include <aws/pricing/Pricing_EXPORTS.h>
15
16namespace Aws {
17namespace Pricing {
40class AWS_PRICING_API PricingClient : public Aws::Client::AWSJsonClient,
42 public PricingPaginationBase<PricingClient>,
43 public PricingWaiter<PricingClient> {
44 public:
46 static const char* GetServiceName();
47 static const char* GetAllocationTag();
48
51
57 std::shared_ptr<PricingEndpointProviderBase> endpointProvider = nullptr);
58
63 PricingClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<PricingEndpointProviderBase> endpointProvider = nullptr,
65
70 PricingClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
71 std::shared_ptr<PricingEndpointProviderBase> endpointProvider = nullptr,
73
74 /* Legacy constructors due deprecation */
80
85 PricingClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration);
86
91 PricingClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
92 const Aws::Client::ClientConfiguration& clientConfiguration);
93
94 /* End of legacy constructors due deprecation */
95 virtual ~PricingClient();
96
110
115 template <typename DescribeServicesRequestT = Model::DescribeServicesRequest>
116 Model::DescribeServicesOutcomeCallable DescribeServicesCallable(const DescribeServicesRequestT& request = {}) const {
117 return SubmitCallable(&PricingClient::DescribeServices, request);
118 }
119
124 template <typename DescribeServicesRequestT = Model::DescribeServicesRequest>
126 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
127 const DescribeServicesRequestT& request = {}) const {
128 return SubmitAsync(&PricingClient::DescribeServices, request, handler, context);
129 }
130
142
147 template <typename GetAttributeValuesRequestT = Model::GetAttributeValuesRequest>
148 Model::GetAttributeValuesOutcomeCallable GetAttributeValuesCallable(const GetAttributeValuesRequestT& request) const {
149 return SubmitCallable(&PricingClient::GetAttributeValues, request);
150 }
151
156 template <typename GetAttributeValuesRequestT = Model::GetAttributeValuesRequest>
157 void GetAttributeValuesAsync(const GetAttributeValuesRequestT& request, const GetAttributeValuesResponseReceivedHandler& handler,
158 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
159 return SubmitAsync(&PricingClient::GetAttributeValues, request, handler, context);
160 }
161
177
182 template <typename GetPriceListFileUrlRequestT = Model::GetPriceListFileUrlRequest>
183 Model::GetPriceListFileUrlOutcomeCallable GetPriceListFileUrlCallable(const GetPriceListFileUrlRequestT& request) const {
184 return SubmitCallable(&PricingClient::GetPriceListFileUrl, request);
185 }
186
191 template <typename GetPriceListFileUrlRequestT = Model::GetPriceListFileUrlRequest>
192 void GetPriceListFileUrlAsync(const GetPriceListFileUrlRequestT& request, const GetPriceListFileUrlResponseReceivedHandler& handler,
193 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
194 return SubmitAsync(&PricingClient::GetPriceListFileUrl, request, handler, context);
195 }
196
204
208 template <typename GetProductsRequestT = Model::GetProductsRequest>
209 Model::GetProductsOutcomeCallable GetProductsCallable(const GetProductsRequestT& request) const {
210 return SubmitCallable(&PricingClient::GetProducts, request);
211 }
212
217 template <typename GetProductsRequestT = Model::GetProductsRequest>
218 void GetProductsAsync(const GetProductsRequestT& request, const GetProductsResponseReceivedHandler& handler,
219 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
220 return SubmitAsync(&PricingClient::GetProducts, request, handler, context);
221 }
222
243
247 template <typename ListPriceListsRequestT = Model::ListPriceListsRequest>
248 Model::ListPriceListsOutcomeCallable ListPriceListsCallable(const ListPriceListsRequestT& request) const {
249 return SubmitCallable(&PricingClient::ListPriceLists, request);
250 }
251
256 template <typename ListPriceListsRequestT = Model::ListPriceListsRequest>
257 void ListPriceListsAsync(const ListPriceListsRequestT& request, const ListPriceListsResponseReceivedHandler& handler,
258 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
259 return SubmitAsync(&PricingClient::ListPriceLists, request, handler, context);
260 }
261
262 virtual void OverrideEndpoint(const Aws::String& endpoint);
263 virtual std::shared_ptr<PricingEndpointProviderBase>& accessEndpointProvider();
264
265 private:
267 void init(const PricingClientConfiguration& clientConfiguration);
268
270
271 InvokeOperationOutcome InvokeServiceOperation(const AmazonWebServiceRequest& request, Aws::Http::HttpMethod httpMethod) const;
272
273 PricingClientConfiguration m_clientConfiguration;
274 std::shared_ptr<PricingEndpointProviderBase> m_endpointProvider;
275};
276
277} // namespace Pricing
278} // namespace Aws
Model::DescribeServicesOutcomeCallable DescribeServicesCallable(const DescribeServicesRequestT &request={}) const
virtual Model::GetAttributeValuesOutcome GetAttributeValues(const Model::GetAttributeValuesRequest &request) const
Aws::Client::AWSJsonClient BASECLASS
void ListPriceListsAsync(const ListPriceListsRequestT &request, const ListPriceListsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual std::shared_ptr< PricingEndpointProviderBase > & accessEndpointProvider()
Model::GetProductsOutcomeCallable GetProductsCallable(const GetProductsRequestT &request) const
PricingClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
PricingClientConfiguration ClientConfigurationType
PricingClient(const Aws::Client::ClientConfiguration &clientConfiguration)
PricingClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< PricingEndpointProviderBase > endpointProvider=nullptr, const Aws::Pricing::PricingClientConfiguration &clientConfiguration=Aws::Pricing::PricingClientConfiguration())
PricingEndpointProvider EndpointProviderType
static const char * GetAllocationTag()
PricingClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< PricingEndpointProviderBase > endpointProvider=nullptr, const Aws::Pricing::PricingClientConfiguration &clientConfiguration=Aws::Pricing::PricingClientConfiguration())
Model::ListPriceListsOutcomeCallable ListPriceListsCallable(const ListPriceListsRequestT &request) const
void GetProductsAsync(const GetProductsRequestT &request, const GetProductsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetPriceListFileUrlOutcome GetPriceListFileUrl(const Model::GetPriceListFileUrlRequest &request) const
void DescribeServicesAsync(const DescribeServicesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const DescribeServicesRequestT &request={}) const
PricingClient(const Aws::Pricing::PricingClientConfiguration &clientConfiguration=Aws::Pricing::PricingClientConfiguration(), std::shared_ptr< PricingEndpointProviderBase > endpointProvider=nullptr)
void GetAttributeValuesAsync(const GetAttributeValuesRequestT &request, const GetAttributeValuesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::DescribeServicesOutcome DescribeServices(const Model::DescribeServicesRequest &request={}) const
static const char * GetServiceName()
virtual Model::GetProductsOutcome GetProducts(const Model::GetProductsRequest &request) const
void GetPriceListFileUrlAsync(const GetPriceListFileUrlRequestT &request, const GetPriceListFileUrlResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListPriceListsOutcome ListPriceLists(const Model::ListPriceListsRequest &request) const
PricingClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
virtual void OverrideEndpoint(const Aws::String &endpoint)
Model::GetAttributeValuesOutcomeCallable GetAttributeValuesCallable(const GetAttributeValuesRequestT &request) const
Model::GetPriceListFileUrlOutcomeCallable GetPriceListFileUrlCallable(const GetPriceListFileUrlRequestT &request) const
std::future< GetProductsOutcome > GetProductsOutcomeCallable
std::future< DescribeServicesOutcome > DescribeServicesOutcomeCallable
std::future< GetAttributeValuesOutcome > GetAttributeValuesOutcomeCallable
std::future< GetPriceListFileUrlOutcome > GetPriceListFileUrlOutcomeCallable
std::future< ListPriceListsOutcome > ListPriceListsOutcomeCallable
std::function< void(const PricingClient *, const Model::GetProductsRequest &, const Model::GetProductsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetProductsResponseReceivedHandler
std::function< void(const PricingClient *, const Model::DescribeServicesRequest &, const Model::DescribeServicesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DescribeServicesResponseReceivedHandler
std::function< void(const PricingClient *, const Model::GetPriceListFileUrlRequest &, const Model::GetPriceListFileUrlOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetPriceListFileUrlResponseReceivedHandler
std::function< void(const PricingClient *, const Model::ListPriceListsRequest &, const Model::ListPriceListsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListPriceListsResponseReceivedHandler
std::function< void(const PricingClient *, const Model::GetAttributeValuesRequest &, const Model::GetAttributeValuesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetAttributeValuesResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String