7#include <aws/payment-cryptography/PaymentCryptography_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/payment-cryptography/PaymentCryptographyServiceClientModel.h>
16namespace PaymentCryptography
58 std::shared_ptr<PaymentCryptographyEndpointProviderBase> endpointProvider =
nullptr);
65 std::shared_ptr<PaymentCryptographyEndpointProviderBase> endpointProvider =
nullptr,
73 std::shared_ptr<PaymentCryptographyEndpointProviderBase> endpointProvider =
nullptr,
139 template<
typename CreateAliasRequestT = Model::CreateAliasRequest>
142 return SubmitCallable(&PaymentCryptographyClient::CreateAlias, request);
148 template<
typename CreateAliasRequestT = Model::CreateAliasRequest>
151 return SubmitAsync(&PaymentCryptographyClient::CreateAlias, request, handler, context);
192 template<
typename CreateKeyRequestT = Model::CreateKeyRequest>
195 return SubmitCallable(&PaymentCryptographyClient::CreateKey, request);
201 template<
typename CreateKeyRequestT = Model::CreateKeyRequest>
204 return SubmitAsync(&PaymentCryptographyClient::CreateKey, request, handler, context);
237 template<
typename DeleteAliasRequestT = Model::DeleteAliasRequest>
240 return SubmitCallable(&PaymentCryptographyClient::DeleteAlias, request);
246 template<
typename DeleteAliasRequestT = Model::DeleteAliasRequest>
249 return SubmitAsync(&PaymentCryptographyClient::DeleteAlias, request, handler, context);
286 template<
typename DeleteKeyRequestT = Model::DeleteKeyRequest>
289 return SubmitCallable(&PaymentCryptographyClient::DeleteKey, request);
295 template<
typename DeleteKeyRequestT = Model::DeleteKeyRequest>
298 return SubmitAsync(&PaymentCryptographyClient::DeleteKey, request, handler, context);
436 template<
typename ExportKeyRequestT = Model::ExportKeyRequest>
439 return SubmitCallable(&PaymentCryptographyClient::ExportKey, request);
445 template<
typename ExportKeyRequestT = Model::ExportKeyRequest>
448 return SubmitAsync(&PaymentCryptographyClient::ExportKey, request, handler, context);
472 template<
typename GetAliasRequestT = Model::GetAliasRequest>
475 return SubmitCallable(&PaymentCryptographyClient::GetAlias, request);
481 template<
typename GetAliasRequestT = Model::GetAliasRequest>
484 return SubmitAsync(&PaymentCryptographyClient::GetAlias, request, handler, context);
507 template<
typename GetKeyRequestT = Model::GetKeyRequest>
510 return SubmitCallable(&PaymentCryptographyClient::GetKey, request);
516 template<
typename GetKeyRequestT = Model::GetKeyRequest>
519 return SubmitAsync(&PaymentCryptographyClient::GetKey, request, handler, context);
545 template<
typename GetParametersForExportRequestT = Model::GetParametersForExportRequest>
548 return SubmitCallable(&PaymentCryptographyClient::GetParametersForExport, request);
554 template<
typename GetParametersForExportRequestT = Model::GetParametersForExportRequest>
557 return SubmitAsync(&PaymentCryptographyClient::GetParametersForExport, request, handler, context);
583 template<
typename GetParametersForImportRequestT = Model::GetParametersForImportRequest>
586 return SubmitCallable(&PaymentCryptographyClient::GetParametersForImport, request);
592 template<
typename GetParametersForImportRequestT = Model::GetParametersForImportRequest>
595 return SubmitAsync(&PaymentCryptographyClient::GetParametersForImport, request, handler, context);
616 template<
typename GetPublicKeyCertificateRequestT = Model::GetPublicKeyCertificateRequest>
619 return SubmitCallable(&PaymentCryptographyClient::GetPublicKeyCertificate, request);
625 template<
typename GetPublicKeyCertificateRequestT = Model::GetPublicKeyCertificateRequest>
628 return SubmitAsync(&PaymentCryptographyClient::GetPublicKeyCertificate, request, handler, context);
759 template<
typename ImportKeyRequestT = Model::ImportKeyRequest>
762 return SubmitCallable(&PaymentCryptographyClient::ImportKey, request);
768 template<
typename ImportKeyRequestT = Model::ImportKeyRequest>
771 return SubmitAsync(&PaymentCryptographyClient::ImportKey, request, handler, context);
804 template<
typename ListAliasesRequestT = Model::ListAliasesRequest>
807 return SubmitCallable(&PaymentCryptographyClient::ListAliases, request);
813 template<
typename ListAliasesRequestT = Model::ListAliasesRequest>
816 return SubmitAsync(&PaymentCryptographyClient::ListAliases, request, handler, context);
844 template<
typename ListKeysRequestT = Model::ListKeysRequest>
847 return SubmitCallable(&PaymentCryptographyClient::ListKeys, request);
853 template<
typename ListKeysRequestT = Model::ListKeysRequest>
856 return SubmitAsync(&PaymentCryptographyClient::ListKeys, request, handler, context);
881 template<
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
884 return SubmitCallable(&PaymentCryptographyClient::ListTagsForResource, request);
890 template<
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
893 return SubmitAsync(&PaymentCryptographyClient::ListTagsForResource, request, handler, context);
921 template<
typename RestoreKeyRequestT = Model::RestoreKeyRequest>
924 return SubmitCallable(&PaymentCryptographyClient::RestoreKey, request);
930 template<
typename RestoreKeyRequestT = Model::RestoreKeyRequest>
933 return SubmitAsync(&PaymentCryptographyClient::RestoreKey, request, handler, context);
952 template<
typename StartKeyUsageRequestT = Model::StartKeyUsageRequest>
955 return SubmitCallable(&PaymentCryptographyClient::StartKeyUsage, request);
961 template<
typename StartKeyUsageRequestT = Model::StartKeyUsageRequest>
964 return SubmitAsync(&PaymentCryptographyClient::StartKeyUsage, request, handler, context);
989 template<
typename StopKeyUsageRequestT = Model::StopKeyUsageRequest>
992 return SubmitCallable(&PaymentCryptographyClient::StopKeyUsage, request);
998 template<
typename StopKeyUsageRequestT = Model::StopKeyUsageRequest>
1001 return SubmitAsync(&PaymentCryptographyClient::StopKeyUsage, request, handler, context);
1029 template<
typename TagResourceRequestT = Model::TagResourceRequest>
1032 return SubmitCallable(&PaymentCryptographyClient::TagResource, request);
1038 template<
typename TagResourceRequestT = Model::TagResourceRequest>
1041 return SubmitAsync(&PaymentCryptographyClient::TagResource, request, handler, context);
1062 template<
typename UntagResourceRequestT = Model::UntagResourceRequest>
1065 return SubmitCallable(&PaymentCryptographyClient::UntagResource, request);
1071 template<
typename UntagResourceRequestT = Model::UntagResourceRequest>
1074 return SubmitAsync(&PaymentCryptographyClient::UntagResource, request, handler, context);
1101 template<
typename UpdateAliasRequestT = Model::UpdateAliasRequest>
1104 return SubmitCallable(&PaymentCryptographyClient::UpdateAlias, request);
1110 template<
typename UpdateAliasRequestT = Model::UpdateAliasRequest>
1113 return SubmitAsync(&PaymentCryptographyClient::UpdateAlias, request, handler, context);
1124 std::shared_ptr<PaymentCryptographyEndpointProviderBase> m_endpointProvider;
Model::RestoreKeyOutcomeCallable RestoreKeyCallable(const RestoreKeyRequestT &request) const
void OverrideEndpoint(const Aws::String &endpoint)
void UpdateAliasAsync(const UpdateAliasRequestT &request, const UpdateAliasResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
static const char * GetAllocationTag()
virtual Model::ImportKeyOutcome ImportKey(const Model::ImportKeyRequest &request) const
virtual Model::GetKeyOutcome GetKey(const Model::GetKeyRequest &request) const
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT &request) const
Model::StopKeyUsageOutcomeCallable StopKeyUsageCallable(const StopKeyUsageRequestT &request) const
void GetKeyAsync(const GetKeyRequestT &request, const GetKeyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetAliasAsync(const GetAliasRequestT &request, const GetAliasResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT &request) const
PaymentCryptographyClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::GetAliasOutcomeCallable GetAliasCallable(const GetAliasRequestT &request) const
Model::DeleteAliasOutcomeCallable DeleteAliasCallable(const DeleteAliasRequestT &request) const
virtual ~PaymentCryptographyClient()
void CreateKeyAsync(const CreateKeyRequestT &request, const CreateKeyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetParametersForImportAsync(const GetParametersForImportRequestT &request, const GetParametersForImportResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListKeysAsync(const ListKeysResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListKeysRequestT &request={}) const
void ListTagsForResourceAsync(const ListTagsForResourceRequestT &request, const ListTagsForResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::StartKeyUsageOutcomeCallable StartKeyUsageCallable(const StartKeyUsageRequestT &request) const
virtual Model::CreateKeyOutcome CreateKey(const Model::CreateKeyRequest &request) const
virtual Model::ListAliasesOutcome ListAliases(const Model::ListAliasesRequest &request={}) const
Model::DeleteKeyOutcomeCallable DeleteKeyCallable(const DeleteKeyRequestT &request) const
virtual Model::GetParametersForExportOutcome GetParametersForExport(const Model::GetParametersForExportRequest &request) const
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest &request) const
void ListAliasesAsync(const ListAliasesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListAliasesRequestT &request={}) const
void DeleteAliasAsync(const DeleteAliasRequestT &request, const DeleteAliasResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::ExportKeyOutcomeCallable ExportKeyCallable(const ExportKeyRequestT &request) const
Model::UpdateAliasOutcomeCallable UpdateAliasCallable(const UpdateAliasRequestT &request) const
void GetParametersForExportAsync(const GetParametersForExportRequestT &request, const GetParametersForExportResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest &request) const
virtual Model::GetPublicKeyCertificateOutcome GetPublicKeyCertificate(const Model::GetPublicKeyCertificateRequest &request) const
virtual Model::GetParametersForImportOutcome GetParametersForImport(const Model::GetParametersForImportRequest &request) const
virtual Model::CreateAliasOutcome CreateAlias(const Model::CreateAliasRequest &request) const
Model::GetParametersForExportOutcomeCallable GetParametersForExportCallable(const GetParametersForExportRequestT &request) const
PaymentCryptographyClientConfiguration ClientConfigurationType
virtual Model::RestoreKeyOutcome RestoreKey(const Model::RestoreKeyRequest &request) const
void GetPublicKeyCertificateAsync(const GetPublicKeyCertificateRequestT &request, const GetPublicKeyCertificateResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
PaymentCryptographyClient(const Aws::Client::ClientConfiguration &clientConfiguration)
void StartKeyUsageAsync(const StartKeyUsageRequestT &request, const StartKeyUsageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
PaymentCryptographyEndpointProvider EndpointProviderType
Model::ListKeysOutcomeCallable ListKeysCallable(const ListKeysRequestT &request={}) const
void StopKeyUsageAsync(const StopKeyUsageRequestT &request, const StopKeyUsageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::StartKeyUsageOutcome StartKeyUsage(const Model::StartKeyUsageRequest &request) const
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
virtual Model::DeleteKeyOutcome DeleteKey(const Model::DeleteKeyRequest &request) const
PaymentCryptographyClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< PaymentCryptographyEndpointProviderBase > endpointProvider=nullptr, const Aws::PaymentCryptography::PaymentCryptographyClientConfiguration &clientConfiguration=Aws::PaymentCryptography::PaymentCryptographyClientConfiguration())
Model::ListAliasesOutcomeCallable ListAliasesCallable(const ListAliasesRequestT &request={}) const
Model::CreateKeyOutcomeCallable CreateKeyCallable(const CreateKeyRequestT &request) const
void ExportKeyAsync(const ExportKeyRequestT &request, const ExportKeyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetParametersForImportOutcomeCallable GetParametersForImportCallable(const GetParametersForImportRequestT &request) const
Model::GetPublicKeyCertificateOutcomeCallable GetPublicKeyCertificateCallable(const GetPublicKeyCertificateRequestT &request) const
void ImportKeyAsync(const ImportKeyRequestT &request, const ImportKeyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void RestoreKeyAsync(const RestoreKeyRequestT &request, const RestoreKeyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::DeleteAliasOutcome DeleteAlias(const Model::DeleteAliasRequest &request) const
Model::ImportKeyOutcomeCallable ImportKeyCallable(const ImportKeyRequestT &request) const
virtual Model::StopKeyUsageOutcome StopKeyUsage(const Model::StopKeyUsageRequest &request) const
virtual Model::ListKeysOutcome ListKeys(const Model::ListKeysRequest &request={}) const
std::shared_ptr< PaymentCryptographyEndpointProviderBase > & accessEndpointProvider()
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest &request) const
PaymentCryptographyClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
void UntagResourceAsync(const UntagResourceRequestT &request, const UntagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetAliasOutcome GetAlias(const Model::GetAliasRequest &request) const
Model::GetKeyOutcomeCallable GetKeyCallable(const GetKeyRequestT &request) const
void CreateAliasAsync(const CreateAliasRequestT &request, const CreateAliasResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::CreateAliasOutcomeCallable CreateAliasCallable(const CreateAliasRequestT &request) const
PaymentCryptographyClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< PaymentCryptographyEndpointProviderBase > endpointProvider=nullptr, const Aws::PaymentCryptography::PaymentCryptographyClientConfiguration &clientConfiguration=Aws::PaymentCryptography::PaymentCryptographyClientConfiguration())
virtual Model::UpdateAliasOutcome UpdateAlias(const Model::UpdateAliasRequest &request) const
PaymentCryptographyClient(const Aws::PaymentCryptography::PaymentCryptographyClientConfiguration &clientConfiguration=Aws::PaymentCryptography::PaymentCryptographyClientConfiguration(), std::shared_ptr< PaymentCryptographyEndpointProviderBase > endpointProvider=nullptr)
void DeleteKeyAsync(const DeleteKeyRequestT &request, const DeleteKeyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ExportKeyOutcome ExportKey(const Model::ExportKeyRequest &request) const
static const char * GetServiceName()
Aws::Client::AWSJsonClient BASECLASS
std::future< ImportKeyOutcome > ImportKeyOutcomeCallable
std::future< GetPublicKeyCertificateOutcome > GetPublicKeyCertificateOutcomeCallable
std::future< GetParametersForImportOutcome > GetParametersForImportOutcomeCallable
std::future< DeleteAliasOutcome > DeleteAliasOutcomeCallable
std::future< UpdateAliasOutcome > UpdateAliasOutcomeCallable
std::future< ListAliasesOutcome > ListAliasesOutcomeCallable
std::future< GetParametersForExportOutcome > GetParametersForExportOutcomeCallable
std::future< RestoreKeyOutcome > RestoreKeyOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
std::future< ExportKeyOutcome > ExportKeyOutcomeCallable
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
std::future< CreateKeyOutcome > CreateKeyOutcomeCallable
std::future< GetKeyOutcome > GetKeyOutcomeCallable
std::future< DeleteKeyOutcome > DeleteKeyOutcomeCallable
std::future< StartKeyUsageOutcome > StartKeyUsageOutcomeCallable
std::future< ListKeysOutcome > ListKeysOutcomeCallable
std::future< StopKeyUsageOutcome > StopKeyUsageOutcomeCallable
std::future< CreateAliasOutcome > CreateAliasOutcomeCallable
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
std::future< GetAliasOutcome > GetAliasOutcomeCallable
std::function< void(const PaymentCryptographyClient *, const Model::GetPublicKeyCertificateRequest &, const Model::GetPublicKeyCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetPublicKeyCertificateResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::ListKeysRequest &, const Model::ListKeysOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListKeysResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::GetParametersForExportRequest &, const Model::GetParametersForExportOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetParametersForExportResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::RestoreKeyRequest &, const Model::RestoreKeyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RestoreKeyResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::CreateKeyRequest &, const Model::CreateKeyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateKeyResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::ImportKeyRequest &, const Model::ImportKeyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ImportKeyResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::StopKeyUsageRequest &, const Model::StopKeyUsageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > StopKeyUsageResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::DeleteAliasRequest &, const Model::DeleteAliasOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteAliasResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::StartKeyUsageRequest &, const Model::StartKeyUsageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > StartKeyUsageResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::UpdateAliasRequest &, const Model::UpdateAliasOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateAliasResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::TagResourceRequest &, const Model::TagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > TagResourceResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::ListAliasesRequest &, const Model::ListAliasesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListAliasesResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::GetParametersForImportRequest &, const Model::GetParametersForImportOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetParametersForImportResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::DeleteKeyRequest &, const Model::DeleteKeyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteKeyResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::GetAliasRequest &, const Model::GetAliasOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetAliasResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::GetKeyRequest &, const Model::GetKeyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetKeyResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::ExportKeyRequest &, const Model::ExportKeyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ExportKeyResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::CreateAliasRequest &, const Model::CreateAliasOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateAliasResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UntagResourceResponseReceivedHandler
std::function< void(const PaymentCryptographyClient *, const Model::ListTagsForResourceRequest &, const Model::ListTagsForResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTagsForResourceResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String