/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
namespace Aws
{
namespace CloudHSM
{
/**
* AWS CloudHSM Service This is documentation for AWS
* CloudHSM Classic. For more information, see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
*/
class AWS_CLOUDHSM_API CloudHSMClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods
{
public:
typedef Aws::Client::AWSJsonClient BASECLASS;
static const char* SERVICE_NAME;
static const char* ALLOCATION_TAG;
typedef CloudHSMClientConfiguration ClientConfigurationType;
typedef CloudHSMEndpointProvider EndpointProviderType;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
CloudHSMClient(const Aws::CloudHSM::CloudHSMClientConfiguration& clientConfiguration = Aws::CloudHSM::CloudHSMClientConfiguration(),
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG));
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
CloudHSMClient(const Aws::Auth::AWSCredentials& credentials,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::CloudHSM::CloudHSMClientConfiguration& clientConfiguration = Aws::CloudHSM::CloudHSMClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
CloudHSMClient(const std::shared_ptr& credentialsProvider,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::CloudHSM::CloudHSMClientConfiguration& clientConfiguration = Aws::CloudHSM::CloudHSMClientConfiguration());
/* Legacy constructors due deprecation */
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
CloudHSMClient(const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
CloudHSMClient(const Aws::Auth::AWSCredentials& credentials,
const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
CloudHSMClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration);
/* End of legacy constructors due deprecation */
virtual ~CloudHSMClient();
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Adds or overwrites one or more tags for the specified
* AWS CloudHSM resource.
Each tag consists of a key and a value. Tag keys
* must be unique to each resource.
See Also:
AWS
* API Reference
*/
virtual Model::AddTagsToResourceOutcome AddTagsToResource(const Model::AddTagsToResourceRequest& request) const;
/**
* A Callable wrapper for AddTagsToResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::AddTagsToResourceOutcomeCallable AddTagsToResourceCallable(const AddTagsToResourceRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::AddTagsToResource, request);
}
/**
* An Async wrapper for AddTagsToResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void AddTagsToResourceAsync(const AddTagsToResourceRequestT& request, const AddTagsToResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::AddTagsToResource, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Creates a high-availability partition group. A
* high-availability partition group is a group of partitions that spans multiple
* physical HSMs.
See Also:
AWS
* API Reference
*/
virtual Model::CreateHapgOutcome CreateHapg(const Model::CreateHapgRequest& request) const;
/**
* A Callable wrapper for CreateHapg that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateHapgOutcomeCallable CreateHapgCallable(const CreateHapgRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::CreateHapg, request);
}
/**
* An Async wrapper for CreateHapg that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateHapgAsync(const CreateHapgRequestT& request, const CreateHapgResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::CreateHapg, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Creates an uninitialized HSM instance.
There is
* an upfront fee charged for each HSM instance that you create with the
* CreateHsm
operation. If you accidentally provision an HSM and want
* to request a refund, delete the instance using the DeleteHsm operation,
* go to the AWS Support
* Center, create a new case, and select Account and Billing
* Support.
It can take up to 20 minutes to create and
* provision an HSM. You can monitor the status of the HSM with the
* DescribeHsm operation. The HSM is ready to be initialized when the status
* changes to RUNNING
.
See Also:
AWS
* API Reference
*/
virtual Model::CreateHsmOutcome CreateHsm(const Model::CreateHsmRequest& request) const;
/**
* A Callable wrapper for CreateHsm that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateHsmOutcomeCallable CreateHsmCallable(const CreateHsmRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::CreateHsm, request);
}
/**
* An Async wrapper for CreateHsm that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateHsmAsync(const CreateHsmRequestT& request, const CreateHsmResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::CreateHsm, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Creates an HSM client.
See Also:
AWS
* API Reference
*/
virtual Model::CreateLunaClientOutcome CreateLunaClient(const Model::CreateLunaClientRequest& request) const;
/**
* A Callable wrapper for CreateLunaClient that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateLunaClientOutcomeCallable CreateLunaClientCallable(const CreateLunaClientRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::CreateLunaClient, request);
}
/**
* An Async wrapper for CreateLunaClient that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateLunaClientAsync(const CreateLunaClientRequestT& request, const CreateLunaClientResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::CreateLunaClient, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Deletes a high-availability partition
* group.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteHapgOutcome DeleteHapg(const Model::DeleteHapgRequest& request) const;
/**
* A Callable wrapper for DeleteHapg that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteHapgOutcomeCallable DeleteHapgCallable(const DeleteHapgRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::DeleteHapg, request);
}
/**
* An Async wrapper for DeleteHapg that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteHapgAsync(const DeleteHapgRequestT& request, const DeleteHapgResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::DeleteHapg, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Deletes an HSM. After completion, this operation
* cannot be undone and your key material cannot be recovered.
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteHsmOutcome DeleteHsm(const Model::DeleteHsmRequest& request) const;
/**
* A Callable wrapper for DeleteHsm that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteHsmOutcomeCallable DeleteHsmCallable(const DeleteHsmRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::DeleteHsm, request);
}
/**
* An Async wrapper for DeleteHsm that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteHsmAsync(const DeleteHsmRequestT& request, const DeleteHsmResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::DeleteHsm, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Deletes a client.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteLunaClientOutcome DeleteLunaClient(const Model::DeleteLunaClientRequest& request) const;
/**
* A Callable wrapper for DeleteLunaClient that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteLunaClientOutcomeCallable DeleteLunaClientCallable(const DeleteLunaClientRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::DeleteLunaClient, request);
}
/**
* An Async wrapper for DeleteLunaClient that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteLunaClientAsync(const DeleteLunaClientRequestT& request, const DeleteLunaClientResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::DeleteLunaClient, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Retrieves information about a high-availability
* partition group.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeHapgOutcome DescribeHapg(const Model::DescribeHapgRequest& request) const;
/**
* A Callable wrapper for DescribeHapg that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeHapgOutcomeCallable DescribeHapgCallable(const DescribeHapgRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::DescribeHapg, request);
}
/**
* An Async wrapper for DescribeHapg that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeHapgAsync(const DescribeHapgRequestT& request, const DescribeHapgResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::DescribeHapg, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Retrieves information about an HSM. You can identify
* the HSM by its ARN or its serial number.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeHsmOutcome DescribeHsm(const Model::DescribeHsmRequest& request) const;
/**
* A Callable wrapper for DescribeHsm that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeHsmOutcomeCallable DescribeHsmCallable(const DescribeHsmRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::DescribeHsm, request);
}
/**
* An Async wrapper for DescribeHsm that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeHsmAsync(const DescribeHsmRequestT& request, const DescribeHsmResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::DescribeHsm, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Retrieves information about an HSM
* client.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeLunaClientOutcome DescribeLunaClient(const Model::DescribeLunaClientRequest& request) const;
/**
* A Callable wrapper for DescribeLunaClient that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeLunaClientOutcomeCallable DescribeLunaClientCallable(const DescribeLunaClientRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::DescribeLunaClient, request);
}
/**
* An Async wrapper for DescribeLunaClient that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeLunaClientAsync(const DescribeLunaClientRequestT& request, const DescribeLunaClientResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::DescribeLunaClient, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Gets the configuration files necessary to connect to
* all high availability partition groups the client is associated
* with.
See Also:
AWS
* API Reference
*/
virtual Model::GetConfigOutcome GetConfig(const Model::GetConfigRequest& request) const;
/**
* A Callable wrapper for GetConfig that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetConfigOutcomeCallable GetConfigCallable(const GetConfigRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::GetConfig, request);
}
/**
* An Async wrapper for GetConfig that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetConfigAsync(const GetConfigRequestT& request, const GetConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::GetConfig, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Lists the Availability Zones that have available AWS
* CloudHSM capacity.
See Also:
AWS
* API Reference
*/
virtual Model::ListAvailableZonesOutcome ListAvailableZones(const Model::ListAvailableZonesRequest& request) const;
/**
* A Callable wrapper for ListAvailableZones that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListAvailableZonesOutcomeCallable ListAvailableZonesCallable(const ListAvailableZonesRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::ListAvailableZones, request);
}
/**
* An Async wrapper for ListAvailableZones that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListAvailableZonesAsync(const ListAvailableZonesRequestT& request, const ListAvailableZonesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::ListAvailableZones, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Lists the high-availability partition groups for the
* account.
This operation supports pagination with the use of the
* NextToken
member. If more results are available, the
* NextToken
member of the response contains a token that you pass in
* the next call to ListHapgs
to retrieve the next set of
* items.
See Also:
AWS
* API Reference
*/
virtual Model::ListHapgsOutcome ListHapgs(const Model::ListHapgsRequest& request) const;
/**
* A Callable wrapper for ListHapgs that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListHapgsOutcomeCallable ListHapgsCallable(const ListHapgsRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::ListHapgs, request);
}
/**
* An Async wrapper for ListHapgs that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListHapgsAsync(const ListHapgsRequestT& request, const ListHapgsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::ListHapgs, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Retrieves the identifiers of all of the HSMs
* provisioned for the current customer.
This operation supports pagination
* with the use of the NextToken
member. If more results are
* available, the NextToken
member of the response contains a token
* that you pass in the next call to ListHsms
to retrieve the next set
* of items.
See Also:
AWS
* API Reference
*/
virtual Model::ListHsmsOutcome ListHsms(const Model::ListHsmsRequest& request) const;
/**
* A Callable wrapper for ListHsms that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListHsmsOutcomeCallable ListHsmsCallable(const ListHsmsRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::ListHsms, request);
}
/**
* An Async wrapper for ListHsms that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListHsmsAsync(const ListHsmsRequestT& request, const ListHsmsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::ListHsms, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Lists all of the clients.
This operation
* supports pagination with the use of the NextToken
member. If more
* results are available, the NextToken
member of the response
* contains a token that you pass in the next call to ListLunaClients
* to retrieve the next set of items.
See Also:
AWS
* API Reference
*/
virtual Model::ListLunaClientsOutcome ListLunaClients(const Model::ListLunaClientsRequest& request) const;
/**
* A Callable wrapper for ListLunaClients that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListLunaClientsOutcomeCallable ListLunaClientsCallable(const ListLunaClientsRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::ListLunaClients, request);
}
/**
* An Async wrapper for ListLunaClients that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListLunaClientsAsync(const ListLunaClientsRequestT& request, const ListLunaClientsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::ListLunaClients, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Returns a list of all tags for the specified AWS
* CloudHSM resource.
See Also:
AWS
* API Reference
*/
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const;
/**
* A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::ListTagsForResource, request);
}
/**
* An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::ListTagsForResource, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Modifies an existing high-availability partition
* group.
See Also:
AWS
* API Reference
*/
virtual Model::ModifyHapgOutcome ModifyHapg(const Model::ModifyHapgRequest& request) const;
/**
* A Callable wrapper for ModifyHapg that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ModifyHapgOutcomeCallable ModifyHapgCallable(const ModifyHapgRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::ModifyHapg, request);
}
/**
* An Async wrapper for ModifyHapg that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ModifyHapgAsync(const ModifyHapgRequestT& request, const ModifyHapgResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::ModifyHapg, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Modifies an HSM.
This operation can
* result in the HSM being offline for up to 15 minutes while the AWS CloudHSM
* service is reconfigured. If you are modifying a production HSM, you should
* ensure that your AWS CloudHSM service is configured for high availability, and
* consider executing this operation during a maintenance window.
* See Also:
AWS
* API Reference
*/
virtual Model::ModifyHsmOutcome ModifyHsm(const Model::ModifyHsmRequest& request) const;
/**
* A Callable wrapper for ModifyHsm that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ModifyHsmOutcomeCallable ModifyHsmCallable(const ModifyHsmRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::ModifyHsm, request);
}
/**
* An Async wrapper for ModifyHsm that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ModifyHsmAsync(const ModifyHsmRequestT& request, const ModifyHsmResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::ModifyHsm, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Modifies the certificate used by the client.
* This action can potentially start a workflow to install the new certificate
* on the client's HSMs.
See Also:
AWS
* API Reference
*/
virtual Model::ModifyLunaClientOutcome ModifyLunaClient(const Model::ModifyLunaClientRequest& request) const;
/**
* A Callable wrapper for ModifyLunaClient that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ModifyLunaClientOutcomeCallable ModifyLunaClientCallable(const ModifyLunaClientRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::ModifyLunaClient, request);
}
/**
* An Async wrapper for ModifyLunaClient that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ModifyLunaClientAsync(const ModifyLunaClientRequestT& request, const ModifyLunaClientResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::ModifyLunaClient, request, handler, context);
}
/**
* This is documentation for AWS CloudHSM Classic. For more information,
* see AWS CloudHSM Classic
* FAQs, the AWS CloudHSM
* Classic User Guide, and the AWS CloudHSM
* Classic API Reference.
For information about the current version
* of AWS CloudHSM, see AWS
* CloudHSM, the AWS CloudHSM User
* Guide, and the AWS CloudHSM
* API Reference.
Removes one or more tags from the specified AWS
* CloudHSM resource.
To remove a tag, specify only the tag key to remove
* (not the value). To overwrite the value for an existing tag, use
* AddTagsToResource.
See Also:
AWS
* API Reference
*/
virtual Model::RemoveTagsFromResourceOutcome RemoveTagsFromResource(const Model::RemoveTagsFromResourceRequest& request) const;
/**
* A Callable wrapper for RemoveTagsFromResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RemoveTagsFromResourceOutcomeCallable RemoveTagsFromResourceCallable(const RemoveTagsFromResourceRequestT& request) const
{
return SubmitCallable(&CloudHSMClient::RemoveTagsFromResource, request);
}
/**
* An Async wrapper for RemoveTagsFromResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RemoveTagsFromResourceAsync(const RemoveTagsFromResourceRequestT& request, const RemoveTagsFromResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CloudHSMClient::RemoveTagsFromResource, request, handler, context);
}
void OverrideEndpoint(const Aws::String& endpoint);
std::shared_ptr& accessEndpointProvider();
private:
friend class Aws::Client::ClientWithAsyncTemplateMethods;
void init(const CloudHSMClientConfiguration& clientConfiguration);
CloudHSMClientConfiguration m_clientConfiguration;
std::shared_ptr m_executor;
std::shared_ptr m_endpointProvider;
};
} // namespace CloudHSM
} // namespace Aws