7#include <aws/applicationcostprofiler/ApplicationCostProfilerServiceClientModel.h>
8#include <aws/applicationcostprofiler/ApplicationCostProfiler_EXPORTS.h>
9#include <aws/core/client/AWSClient.h>
10#include <aws/core/client/AWSClientAsyncCRTP.h>
11#include <aws/core/client/ClientConfiguration.h>
12#include <aws/core/utils/json/JsonSerializer.h>
15namespace ApplicationCostProfiler {
42 std::shared_ptr<ApplicationCostProfilerEndpointProviderBase> endpointProvider =
nullptr);
49 std::shared_ptr<ApplicationCostProfilerEndpointProviderBase> endpointProvider =
nullptr,
58 std::shared_ptr<ApplicationCostProfilerEndpointProviderBase> endpointProvider =
nullptr,
97 template <
typename DeleteReportDefinitionRequestT = Model::DeleteReportDefinitionRequest>
99 return SubmitCallable(&ApplicationCostProfilerClient::DeleteReportDefinition, request);
106 template <
typename DeleteReportDefinitionRequestT = Model::DeleteReportDefinitionRequest>
109 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
110 return SubmitAsync(&ApplicationCostProfilerClient::DeleteReportDefinition, request, handler, context);
125 template <
typename GetReportDefinitionRequestT = Model::GetReportDefinitionRequest>
127 return SubmitCallable(&ApplicationCostProfilerClient::GetReportDefinition, request);
134 template <
typename GetReportDefinitionRequestT = Model::GetReportDefinitionRequest>
136 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
137 return SubmitAsync(&ApplicationCostProfilerClient::GetReportDefinition, request, handler, context);
155 template <
typename ImportApplicationUsageRequestT = Model::ImportApplicationUsageRequest>
157 return SubmitCallable(&ApplicationCostProfilerClient::ImportApplicationUsage, request);
164 template <
typename ImportApplicationUsageRequestT = Model::ImportApplicationUsageRequest>
167 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
168 return SubmitAsync(&ApplicationCostProfilerClient::ImportApplicationUsage, request, handler, context);
184 template <
typename ListReportDefinitionsRequestT = Model::ListReportDefinitionsRequest>
186 return SubmitCallable(&ApplicationCostProfilerClient::ListReportDefinitions, request);
193 template <
typename ListReportDefinitionsRequestT = Model::ListReportDefinitionsRequest>
195 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
196 const ListReportDefinitionsRequestT& request = {})
const {
197 return SubmitAsync(&ApplicationCostProfilerClient::ListReportDefinitions, request, handler, context);
212 template <
typename PutReportDefinitionRequestT = Model::PutReportDefinitionRequest>
214 return SubmitCallable(&ApplicationCostProfilerClient::PutReportDefinition, request);
221 template <
typename PutReportDefinitionRequestT = Model::PutReportDefinitionRequest>
223 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
224 return SubmitAsync(&ApplicationCostProfilerClient::PutReportDefinition, request, handler, context);
239 template <
typename UpdateReportDefinitionRequestT = Model::UpdateReportDefinitionRequest>
241 return SubmitCallable(&ApplicationCostProfilerClient::UpdateReportDefinition, request);
248 template <
typename UpdateReportDefinitionRequestT = Model::UpdateReportDefinitionRequest>
251 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
252 return SubmitAsync(&ApplicationCostProfilerClient::UpdateReportDefinition, request, handler, context);
263 std::shared_ptr<ApplicationCostProfilerEndpointProviderBase> m_endpointProvider;
void GetReportDefinitionAsync(const GetReportDefinitionRequestT &request, const GetReportDefinitionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
static const char * GetServiceName()
virtual Model::ListReportDefinitionsOutcome ListReportDefinitions(const Model::ListReportDefinitionsRequest &request={}) const
Model::UpdateReportDefinitionOutcomeCallable UpdateReportDefinitionCallable(const UpdateReportDefinitionRequestT &request) const
virtual Model::UpdateReportDefinitionOutcome UpdateReportDefinition(const Model::UpdateReportDefinitionRequest &request) const
ApplicationCostProfilerEndpointProvider EndpointProviderType
ApplicationCostProfilerClientConfiguration ClientConfigurationType
virtual Model::PutReportDefinitionOutcome PutReportDefinition(const Model::PutReportDefinitionRequest &request) const
ApplicationCostProfilerClient(const Aws::Client::ClientConfiguration &clientConfiguration)
Model::GetReportDefinitionOutcomeCallable GetReportDefinitionCallable(const GetReportDefinitionRequestT &request) const
Model::ListReportDefinitionsOutcomeCallable ListReportDefinitionsCallable(const ListReportDefinitionsRequestT &request={}) const
void UpdateReportDefinitionAsync(const UpdateReportDefinitionRequestT &request, const UpdateReportDefinitionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutReportDefinitionAsync(const PutReportDefinitionRequestT &request, const PutReportDefinitionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual ~ApplicationCostProfilerClient()
void ListReportDefinitionsAsync(const ListReportDefinitionsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListReportDefinitionsRequestT &request={}) const
ApplicationCostProfilerClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
static const char * GetAllocationTag()
Model::DeleteReportDefinitionOutcomeCallable DeleteReportDefinitionCallable(const DeleteReportDefinitionRequestT &request) const
ApplicationCostProfilerClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< ApplicationCostProfilerEndpointProviderBase > endpointProvider=nullptr, const Aws::ApplicationCostProfiler::ApplicationCostProfilerClientConfiguration &clientConfiguration=Aws::ApplicationCostProfiler::ApplicationCostProfilerClientConfiguration())
ApplicationCostProfilerClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
std::shared_ptr< ApplicationCostProfilerEndpointProviderBase > & accessEndpointProvider()
virtual Model::GetReportDefinitionOutcome GetReportDefinition(const Model::GetReportDefinitionRequest &request) const
ApplicationCostProfilerClient(const Aws::ApplicationCostProfiler::ApplicationCostProfilerClientConfiguration &clientConfiguration=Aws::ApplicationCostProfiler::ApplicationCostProfilerClientConfiguration(), std::shared_ptr< ApplicationCostProfilerEndpointProviderBase > endpointProvider=nullptr)
virtual Model::DeleteReportDefinitionOutcome DeleteReportDefinition(const Model::DeleteReportDefinitionRequest &request) const
virtual Model::ImportApplicationUsageOutcome ImportApplicationUsage(const Model::ImportApplicationUsageRequest &request) const
void DeleteReportDefinitionAsync(const DeleteReportDefinitionRequestT &request, const DeleteReportDefinitionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void OverrideEndpoint(const Aws::String &endpoint)
Model::ImportApplicationUsageOutcomeCallable ImportApplicationUsageCallable(const ImportApplicationUsageRequestT &request) const
ApplicationCostProfilerClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< ApplicationCostProfilerEndpointProviderBase > endpointProvider=nullptr, const Aws::ApplicationCostProfiler::ApplicationCostProfilerClientConfiguration &clientConfiguration=Aws::ApplicationCostProfiler::ApplicationCostProfilerClientConfiguration())
void ImportApplicationUsageAsync(const ImportApplicationUsageRequestT &request, const ImportApplicationUsageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::Client::AWSJsonClient BASECLASS
Model::PutReportDefinitionOutcomeCallable PutReportDefinitionCallable(const PutReportDefinitionRequestT &request) const
std::future< ListReportDefinitionsOutcome > ListReportDefinitionsOutcomeCallable
std::future< UpdateReportDefinitionOutcome > UpdateReportDefinitionOutcomeCallable
std::future< GetReportDefinitionOutcome > GetReportDefinitionOutcomeCallable
std::future< ImportApplicationUsageOutcome > ImportApplicationUsageOutcomeCallable
std::future< DeleteReportDefinitionOutcome > DeleteReportDefinitionOutcomeCallable
std::future< PutReportDefinitionOutcome > PutReportDefinitionOutcomeCallable
std::function< void(const ApplicationCostProfilerClient *, const Model::UpdateReportDefinitionRequest &, const Model::UpdateReportDefinitionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateReportDefinitionResponseReceivedHandler
std::function< void(const ApplicationCostProfilerClient *, const Model::ListReportDefinitionsRequest &, const Model::ListReportDefinitionsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListReportDefinitionsResponseReceivedHandler
std::function< void(const ApplicationCostProfilerClient *, const Model::PutReportDefinitionRequest &, const Model::PutReportDefinitionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutReportDefinitionResponseReceivedHandler
std::function< void(const ApplicationCostProfilerClient *, const Model::DeleteReportDefinitionRequest &, const Model::DeleteReportDefinitionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteReportDefinitionResponseReceivedHandler
std::function< void(const ApplicationCostProfilerClient *, const Model::ImportApplicationUsageRequest &, const Model::ImportApplicationUsageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ImportApplicationUsageResponseReceivedHandler
std::function< void(const ApplicationCostProfilerClient *, const Model::GetReportDefinitionRequest &, const Model::GetReportDefinitionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetReportDefinitionResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String