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);
206 template<
typename CreateKeyRequestT = Model::CreateKeyRequest>
209 return SubmitCallable(&PaymentCryptographyClient::CreateKey, request);
215 template<
typename CreateKeyRequestT = Model::CreateKeyRequest>
218 return SubmitAsync(&PaymentCryptographyClient::CreateKey, request, handler, context);
251 template<
typename DeleteAliasRequestT = Model::DeleteAliasRequest>
254 return SubmitCallable(&PaymentCryptographyClient::DeleteAlias, request);
260 template<
typename DeleteAliasRequestT = Model::DeleteAliasRequest>
263 return SubmitAsync(&PaymentCryptographyClient::DeleteAlias, request, handler, context);
300 template<
typename DeleteKeyRequestT = Model::DeleteKeyRequest>
303 return SubmitCallable(&PaymentCryptographyClient::DeleteKey, request);
309 template<
typename DeleteKeyRequestT = Model::DeleteKeyRequest>
312 return SubmitAsync(&PaymentCryptographyClient::DeleteKey, request, handler, context);
475 template<
typename ExportKeyRequestT = Model::ExportKeyRequest>
478 return SubmitCallable(&PaymentCryptographyClient::ExportKey, request);
484 template<
typename ExportKeyRequestT = Model::ExportKeyRequest>
487 return SubmitAsync(&PaymentCryptographyClient::ExportKey, request, handler, context);
511 template<
typename GetAliasRequestT = Model::GetAliasRequest>
514 return SubmitCallable(&PaymentCryptographyClient::GetAlias, request);
520 template<
typename GetAliasRequestT = Model::GetAliasRequest>
523 return SubmitAsync(&PaymentCryptographyClient::GetAlias, request, handler, context);
546 template<
typename GetKeyRequestT = Model::GetKeyRequest>
549 return SubmitCallable(&PaymentCryptographyClient::GetKey, request);
555 template<
typename GetKeyRequestT = Model::GetKeyRequest>
558 return SubmitAsync(&PaymentCryptographyClient::GetKey, request, handler, context);
584 template<
typename GetParametersForExportRequestT = Model::GetParametersForExportRequest>
587 return SubmitCallable(&PaymentCryptographyClient::GetParametersForExport, request);
593 template<
typename GetParametersForExportRequestT = Model::GetParametersForExportRequest>
596 return SubmitAsync(&PaymentCryptographyClient::GetParametersForExport, request, handler, context);
622 template<
typename GetParametersForImportRequestT = Model::GetParametersForImportRequest>
625 return SubmitCallable(&PaymentCryptographyClient::GetParametersForImport, request);
631 template<
typename GetParametersForImportRequestT = Model::GetParametersForImportRequest>
634 return SubmitAsync(&PaymentCryptographyClient::GetParametersForImport, request, handler, context);
655 template<
typename GetPublicKeyCertificateRequestT = Model::GetPublicKeyCertificateRequest>
658 return SubmitCallable(&PaymentCryptographyClient::GetPublicKeyCertificate, request);
664 template<
typename GetPublicKeyCertificateRequestT = Model::GetPublicKeyCertificateRequest>
667 return SubmitAsync(&PaymentCryptographyClient::GetPublicKeyCertificate, request, handler, context);
824 template<
typename ImportKeyRequestT = Model::ImportKeyRequest>
827 return SubmitCallable(&PaymentCryptographyClient::ImportKey, request);
833 template<
typename ImportKeyRequestT = Model::ImportKeyRequest>
836 return SubmitAsync(&PaymentCryptographyClient::ImportKey, request, handler, context);
869 template<
typename ListAliasesRequestT = Model::ListAliasesRequest>
872 return SubmitCallable(&PaymentCryptographyClient::ListAliases, request);
878 template<
typename ListAliasesRequestT = Model::ListAliasesRequest>
881 return SubmitAsync(&PaymentCryptographyClient::ListAliases, request, handler, context);
909 template<
typename ListKeysRequestT = Model::ListKeysRequest>
912 return SubmitCallable(&PaymentCryptographyClient::ListKeys, request);
918 template<
typename ListKeysRequestT = Model::ListKeysRequest>
921 return SubmitAsync(&PaymentCryptographyClient::ListKeys, request, handler, context);
946 template<
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
949 return SubmitCallable(&PaymentCryptographyClient::ListTagsForResource, request);
955 template<
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
958 return SubmitAsync(&PaymentCryptographyClient::ListTagsForResource, request, handler, context);
986 template<
typename RestoreKeyRequestT = Model::RestoreKeyRequest>
989 return SubmitCallable(&PaymentCryptographyClient::RestoreKey, request);
995 template<
typename RestoreKeyRequestT = Model::RestoreKeyRequest>
998 return SubmitAsync(&PaymentCryptographyClient::RestoreKey, request, handler, context);
1017 template<
typename StartKeyUsageRequestT = Model::StartKeyUsageRequest>
1020 return SubmitCallable(&PaymentCryptographyClient::StartKeyUsage, request);
1026 template<
typename StartKeyUsageRequestT = Model::StartKeyUsageRequest>
1029 return SubmitAsync(&PaymentCryptographyClient::StartKeyUsage, request, handler, context);
1054 template<
typename StopKeyUsageRequestT = Model::StopKeyUsageRequest>
1057 return SubmitCallable(&PaymentCryptographyClient::StopKeyUsage, request);
1063 template<
typename StopKeyUsageRequestT = Model::StopKeyUsageRequest>
1066 return SubmitAsync(&PaymentCryptographyClient::StopKeyUsage, request, handler, context);
1094 template<
typename TagResourceRequestT = Model::TagResourceRequest>
1097 return SubmitCallable(&PaymentCryptographyClient::TagResource, request);
1103 template<
typename TagResourceRequestT = Model::TagResourceRequest>
1106 return SubmitAsync(&PaymentCryptographyClient::TagResource, request, handler, context);
1127 template<
typename UntagResourceRequestT = Model::UntagResourceRequest>
1130 return SubmitCallable(&PaymentCryptographyClient::UntagResource, request);
1136 template<
typename UntagResourceRequestT = Model::UntagResourceRequest>
1139 return SubmitAsync(&PaymentCryptographyClient::UntagResource, request, handler, context);
1166 template<
typename UpdateAliasRequestT = Model::UpdateAliasRequest>
1169 return SubmitCallable(&PaymentCryptographyClient::UpdateAlias, request);
1175 template<
typename UpdateAliasRequestT = Model::UpdateAliasRequest>
1178 return SubmitAsync(&PaymentCryptographyClient::UpdateAlias, request, handler, context);
1189 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