/** * 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 ElasticsearchService { /** * Amazon Elasticsearch Configuration Service

Use the * Amazon Elasticsearch Configuration API to create, configure, and manage * Elasticsearch domains.

For sample code that uses the Configuration API, * see the Amazon * Elasticsearch Service Developer Guide. The guide also contains sample * code for sending signed HTTP requests to the Elasticsearch APIs.

The * endpoint for configuration service requests is region-specific: * es.region.amazonaws.com. For example, es.us-east-1.amazonaws.com. For a * current list of supported regions and endpoints, see Regions and Endpoints.

*/ class AWS_ELASTICSEARCHSERVICE_API ElasticsearchServiceClient : 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 ElasticsearchServiceClientConfiguration ClientConfigurationType; typedef ElasticsearchServiceEndpointProvider 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. */ ElasticsearchServiceClient(const Aws::ElasticsearchService::ElasticsearchServiceClientConfiguration& clientConfiguration = Aws::ElasticsearchService::ElasticsearchServiceClientConfiguration(), 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. */ ElasticsearchServiceClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::ElasticsearchService::ElasticsearchServiceClientConfiguration& clientConfiguration = Aws::ElasticsearchService::ElasticsearchServiceClientConfiguration()); /** * 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 */ ElasticsearchServiceClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::ElasticsearchService::ElasticsearchServiceClientConfiguration& clientConfiguration = Aws::ElasticsearchService::ElasticsearchServiceClientConfiguration()); /* 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. */ ElasticsearchServiceClient(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. */ ElasticsearchServiceClient(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 */ ElasticsearchServiceClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~ElasticsearchServiceClient(); /** *

Allows the destination domain owner to accept an inbound cross-cluster search * connection request.

See Also:

AWS * API Reference

*/ virtual Model::AcceptInboundCrossClusterSearchConnectionOutcome AcceptInboundCrossClusterSearchConnection(const Model::AcceptInboundCrossClusterSearchConnectionRequest& request) const; /** * A Callable wrapper for AcceptInboundCrossClusterSearchConnection that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AcceptInboundCrossClusterSearchConnectionOutcomeCallable AcceptInboundCrossClusterSearchConnectionCallable(const AcceptInboundCrossClusterSearchConnectionRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::AcceptInboundCrossClusterSearchConnection, request); } /** * An Async wrapper for AcceptInboundCrossClusterSearchConnection that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AcceptInboundCrossClusterSearchConnectionAsync(const AcceptInboundCrossClusterSearchConnectionRequestT& request, const AcceptInboundCrossClusterSearchConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::AcceptInboundCrossClusterSearchConnection, request, handler, context); } /** *

Attaches tags to an existing Elasticsearch domain. Tags are a set of * case-sensitive key value pairs. An Elasticsearch domain may have up to 10 tags. * See Tagging Amazon Elasticsearch Service Domains for more * information.

See Also:

AWS API * Reference

*/ virtual Model::AddTagsOutcome AddTags(const Model::AddTagsRequest& request) const; /** * A Callable wrapper for AddTags that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AddTagsOutcomeCallable AddTagsCallable(const AddTagsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::AddTags, request); } /** * An Async wrapper for AddTags that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AddTagsAsync(const AddTagsRequestT& request, const AddTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::AddTags, request, handler, context); } /** *

Associates a package with an Amazon ES domain.

See Also:

AWS * API Reference

*/ virtual Model::AssociatePackageOutcome AssociatePackage(const Model::AssociatePackageRequest& request) const; /** * A Callable wrapper for AssociatePackage that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AssociatePackageOutcomeCallable AssociatePackageCallable(const AssociatePackageRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::AssociatePackage, request); } /** * An Async wrapper for AssociatePackage that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AssociatePackageAsync(const AssociatePackageRequestT& request, const AssociatePackageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::AssociatePackage, request, handler, context); } /** *

Provides access to an Amazon OpenSearch Service domain through the use of an * interface VPC endpoint.

See Also:

AWS * API Reference

*/ virtual Model::AuthorizeVpcEndpointAccessOutcome AuthorizeVpcEndpointAccess(const Model::AuthorizeVpcEndpointAccessRequest& request) const; /** * A Callable wrapper for AuthorizeVpcEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AuthorizeVpcEndpointAccessOutcomeCallable AuthorizeVpcEndpointAccessCallable(const AuthorizeVpcEndpointAccessRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::AuthorizeVpcEndpointAccess, request); } /** * An Async wrapper for AuthorizeVpcEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AuthorizeVpcEndpointAccessAsync(const AuthorizeVpcEndpointAccessRequestT& request, const AuthorizeVpcEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::AuthorizeVpcEndpointAccess, request, handler, context); } /** *

Cancels a scheduled service software update for an Amazon ES domain. You can * only perform this operation before the AutomatedUpdateDate and when * the UpdateStatus is in the PENDING_UPDATE * state.

See Also:

AWS * API Reference

*/ virtual Model::CancelElasticsearchServiceSoftwareUpdateOutcome CancelElasticsearchServiceSoftwareUpdate(const Model::CancelElasticsearchServiceSoftwareUpdateRequest& request) const; /** * A Callable wrapper for CancelElasticsearchServiceSoftwareUpdate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CancelElasticsearchServiceSoftwareUpdateOutcomeCallable CancelElasticsearchServiceSoftwareUpdateCallable(const CancelElasticsearchServiceSoftwareUpdateRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::CancelElasticsearchServiceSoftwareUpdate, request); } /** * An Async wrapper for CancelElasticsearchServiceSoftwareUpdate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CancelElasticsearchServiceSoftwareUpdateAsync(const CancelElasticsearchServiceSoftwareUpdateRequestT& request, const CancelElasticsearchServiceSoftwareUpdateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::CancelElasticsearchServiceSoftwareUpdate, request, handler, context); } /** *

Creates a new Elasticsearch domain. For more information, see Creating Elasticsearch Domains in the Amazon * Elasticsearch Service Developer Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateElasticsearchDomainOutcome CreateElasticsearchDomain(const Model::CreateElasticsearchDomainRequest& request) const; /** * A Callable wrapper for CreateElasticsearchDomain that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateElasticsearchDomainOutcomeCallable CreateElasticsearchDomainCallable(const CreateElasticsearchDomainRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::CreateElasticsearchDomain, request); } /** * An Async wrapper for CreateElasticsearchDomain that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateElasticsearchDomainAsync(const CreateElasticsearchDomainRequestT& request, const CreateElasticsearchDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::CreateElasticsearchDomain, request, handler, context); } /** *

Creates a new cross-cluster search connection from a source domain to a * destination domain.

See Also:

AWS * API Reference

*/ virtual Model::CreateOutboundCrossClusterSearchConnectionOutcome CreateOutboundCrossClusterSearchConnection(const Model::CreateOutboundCrossClusterSearchConnectionRequest& request) const; /** * A Callable wrapper for CreateOutboundCrossClusterSearchConnection that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateOutboundCrossClusterSearchConnectionOutcomeCallable CreateOutboundCrossClusterSearchConnectionCallable(const CreateOutboundCrossClusterSearchConnectionRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::CreateOutboundCrossClusterSearchConnection, request); } /** * An Async wrapper for CreateOutboundCrossClusterSearchConnection that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateOutboundCrossClusterSearchConnectionAsync(const CreateOutboundCrossClusterSearchConnectionRequestT& request, const CreateOutboundCrossClusterSearchConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::CreateOutboundCrossClusterSearchConnection, request, handler, context); } /** *

Create a package for use with Amazon ES domains.

See Also:

* AWS * API Reference

*/ virtual Model::CreatePackageOutcome CreatePackage(const Model::CreatePackageRequest& request) const; /** * A Callable wrapper for CreatePackage that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreatePackageOutcomeCallable CreatePackageCallable(const CreatePackageRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::CreatePackage, request); } /** * An Async wrapper for CreatePackage that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreatePackageAsync(const CreatePackageRequestT& request, const CreatePackageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::CreatePackage, request, handler, context); } /** *

Creates an Amazon OpenSearch Service-managed VPC endpoint.

See * Also:

AWS * API Reference

*/ virtual Model::CreateVpcEndpointOutcome CreateVpcEndpoint(const Model::CreateVpcEndpointRequest& request) const; /** * A Callable wrapper for CreateVpcEndpoint that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateVpcEndpointOutcomeCallable CreateVpcEndpointCallable(const CreateVpcEndpointRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::CreateVpcEndpoint, request); } /** * An Async wrapper for CreateVpcEndpoint that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateVpcEndpointAsync(const CreateVpcEndpointRequestT& request, const CreateVpcEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::CreateVpcEndpoint, request, handler, context); } /** *

Permanently deletes the specified Elasticsearch domain and all of its data. * Once a domain is deleted, it cannot be recovered.

See Also:

AWS * API Reference

*/ virtual Model::DeleteElasticsearchDomainOutcome DeleteElasticsearchDomain(const Model::DeleteElasticsearchDomainRequest& request) const; /** * A Callable wrapper for DeleteElasticsearchDomain that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteElasticsearchDomainOutcomeCallable DeleteElasticsearchDomainCallable(const DeleteElasticsearchDomainRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DeleteElasticsearchDomain, request); } /** * An Async wrapper for DeleteElasticsearchDomain that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteElasticsearchDomainAsync(const DeleteElasticsearchDomainRequestT& request, const DeleteElasticsearchDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DeleteElasticsearchDomain, request, handler, context); } /** *

Deletes the service-linked role that Elasticsearch Service uses to manage and * maintain VPC domains. Role deletion will fail if any existing VPC domains use * the role. You must delete any such Elasticsearch domains before deleting the * role. See Deleting Elasticsearch Service Role in VPC Endpoints for * Amazon Elasticsearch Service Domains.

See Also:

AWS * API Reference

*/ virtual Model::DeleteElasticsearchServiceRoleOutcome DeleteElasticsearchServiceRole() const; /** * A Callable wrapper for DeleteElasticsearchServiceRole that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteElasticsearchServiceRoleOutcomeCallable DeleteElasticsearchServiceRoleCallable() const { return SubmitCallable(&ElasticsearchServiceClient::DeleteElasticsearchServiceRole); } /** * An Async wrapper for DeleteElasticsearchServiceRole that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteElasticsearchServiceRoleAsync(const DeleteElasticsearchServiceRoleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DeleteElasticsearchServiceRole, handler, context); } /** *

Allows the destination domain owner to delete an existing inbound * cross-cluster search connection.

See Also:

AWS * API Reference

*/ virtual Model::DeleteInboundCrossClusterSearchConnectionOutcome DeleteInboundCrossClusterSearchConnection(const Model::DeleteInboundCrossClusterSearchConnectionRequest& request) const; /** * A Callable wrapper for DeleteInboundCrossClusterSearchConnection that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteInboundCrossClusterSearchConnectionOutcomeCallable DeleteInboundCrossClusterSearchConnectionCallable(const DeleteInboundCrossClusterSearchConnectionRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DeleteInboundCrossClusterSearchConnection, request); } /** * An Async wrapper for DeleteInboundCrossClusterSearchConnection that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteInboundCrossClusterSearchConnectionAsync(const DeleteInboundCrossClusterSearchConnectionRequestT& request, const DeleteInboundCrossClusterSearchConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DeleteInboundCrossClusterSearchConnection, request, handler, context); } /** *

Allows the source domain owner to delete an existing outbound cross-cluster * search connection.

See Also:

AWS * API Reference

*/ virtual Model::DeleteOutboundCrossClusterSearchConnectionOutcome DeleteOutboundCrossClusterSearchConnection(const Model::DeleteOutboundCrossClusterSearchConnectionRequest& request) const; /** * A Callable wrapper for DeleteOutboundCrossClusterSearchConnection that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteOutboundCrossClusterSearchConnectionOutcomeCallable DeleteOutboundCrossClusterSearchConnectionCallable(const DeleteOutboundCrossClusterSearchConnectionRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DeleteOutboundCrossClusterSearchConnection, request); } /** * An Async wrapper for DeleteOutboundCrossClusterSearchConnection that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteOutboundCrossClusterSearchConnectionAsync(const DeleteOutboundCrossClusterSearchConnectionRequestT& request, const DeleteOutboundCrossClusterSearchConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DeleteOutboundCrossClusterSearchConnection, request, handler, context); } /** *

Delete the package.

See Also:

AWS * API Reference

*/ virtual Model::DeletePackageOutcome DeletePackage(const Model::DeletePackageRequest& request) const; /** * A Callable wrapper for DeletePackage that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeletePackageOutcomeCallable DeletePackageCallable(const DeletePackageRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DeletePackage, request); } /** * An Async wrapper for DeletePackage that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeletePackageAsync(const DeletePackageRequestT& request, const DeletePackageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DeletePackage, request, handler, context); } /** *

Deletes an Amazon OpenSearch Service-managed interface VPC * endpoint.

See Also:

AWS * API Reference

*/ virtual Model::DeleteVpcEndpointOutcome DeleteVpcEndpoint(const Model::DeleteVpcEndpointRequest& request) const; /** * A Callable wrapper for DeleteVpcEndpoint that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteVpcEndpointOutcomeCallable DeleteVpcEndpointCallable(const DeleteVpcEndpointRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DeleteVpcEndpoint, request); } /** * An Async wrapper for DeleteVpcEndpoint that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteVpcEndpointAsync(const DeleteVpcEndpointRequestT& request, const DeleteVpcEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DeleteVpcEndpoint, request, handler, context); } /** *

Provides scheduled Auto-Tune action details for the Elasticsearch domain, * such as Auto-Tune action type, description, severity, and scheduled * date.

See Also:

AWS * API Reference

*/ virtual Model::DescribeDomainAutoTunesOutcome DescribeDomainAutoTunes(const Model::DescribeDomainAutoTunesRequest& request) const; /** * A Callable wrapper for DescribeDomainAutoTunes that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeDomainAutoTunesOutcomeCallable DescribeDomainAutoTunesCallable(const DescribeDomainAutoTunesRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeDomainAutoTunes, request); } /** * An Async wrapper for DescribeDomainAutoTunes that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeDomainAutoTunesAsync(const DescribeDomainAutoTunesRequestT& request, const DescribeDomainAutoTunesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeDomainAutoTunes, request, handler, context); } /** *

Returns information about the current blue/green deployment happening on a * domain, including a change ID, status, and progress stages.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeDomainChangeProgressOutcome DescribeDomainChangeProgress(const Model::DescribeDomainChangeProgressRequest& request) const; /** * A Callable wrapper for DescribeDomainChangeProgress that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeDomainChangeProgressOutcomeCallable DescribeDomainChangeProgressCallable(const DescribeDomainChangeProgressRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeDomainChangeProgress, request); } /** * An Async wrapper for DescribeDomainChangeProgress that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeDomainChangeProgressAsync(const DescribeDomainChangeProgressRequestT& request, const DescribeDomainChangeProgressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeDomainChangeProgress, request, handler, context); } /** *

Returns domain configuration information about the specified Elasticsearch * domain, including the domain ID, domain endpoint, and domain ARN.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeElasticsearchDomainOutcome DescribeElasticsearchDomain(const Model::DescribeElasticsearchDomainRequest& request) const; /** * A Callable wrapper for DescribeElasticsearchDomain that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeElasticsearchDomainOutcomeCallable DescribeElasticsearchDomainCallable(const DescribeElasticsearchDomainRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeElasticsearchDomain, request); } /** * An Async wrapper for DescribeElasticsearchDomain that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeElasticsearchDomainAsync(const DescribeElasticsearchDomainRequestT& request, const DescribeElasticsearchDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeElasticsearchDomain, request, handler, context); } /** *

Provides cluster configuration information about the specified Elasticsearch * domain, such as the state, creation date, update version, and update date for * cluster options.

See Also:

AWS * API Reference

*/ virtual Model::DescribeElasticsearchDomainConfigOutcome DescribeElasticsearchDomainConfig(const Model::DescribeElasticsearchDomainConfigRequest& request) const; /** * A Callable wrapper for DescribeElasticsearchDomainConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeElasticsearchDomainConfigOutcomeCallable DescribeElasticsearchDomainConfigCallable(const DescribeElasticsearchDomainConfigRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeElasticsearchDomainConfig, request); } /** * An Async wrapper for DescribeElasticsearchDomainConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeElasticsearchDomainConfigAsync(const DescribeElasticsearchDomainConfigRequestT& request, const DescribeElasticsearchDomainConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeElasticsearchDomainConfig, request, handler, context); } /** *

Returns domain configuration information about the specified Elasticsearch * domains, including the domain ID, domain endpoint, and domain ARN.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeElasticsearchDomainsOutcome DescribeElasticsearchDomains(const Model::DescribeElasticsearchDomainsRequest& request) const; /** * A Callable wrapper for DescribeElasticsearchDomains that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeElasticsearchDomainsOutcomeCallable DescribeElasticsearchDomainsCallable(const DescribeElasticsearchDomainsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeElasticsearchDomains, request); } /** * An Async wrapper for DescribeElasticsearchDomains that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeElasticsearchDomainsAsync(const DescribeElasticsearchDomainsRequestT& request, const DescribeElasticsearchDomainsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeElasticsearchDomains, request, handler, context); } /** *

Describe Elasticsearch Limits for a given InstanceType and * ElasticsearchVersion. When modifying existing Domain, specify the * DomainName to know what Limits are supported for modifying. *

See Also:

AWS * API Reference

*/ virtual Model::DescribeElasticsearchInstanceTypeLimitsOutcome DescribeElasticsearchInstanceTypeLimits(const Model::DescribeElasticsearchInstanceTypeLimitsRequest& request) const; /** * A Callable wrapper for DescribeElasticsearchInstanceTypeLimits that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeElasticsearchInstanceTypeLimitsOutcomeCallable DescribeElasticsearchInstanceTypeLimitsCallable(const DescribeElasticsearchInstanceTypeLimitsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeElasticsearchInstanceTypeLimits, request); } /** * An Async wrapper for DescribeElasticsearchInstanceTypeLimits that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeElasticsearchInstanceTypeLimitsAsync(const DescribeElasticsearchInstanceTypeLimitsRequestT& request, const DescribeElasticsearchInstanceTypeLimitsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeElasticsearchInstanceTypeLimits, request, handler, context); } /** *

Lists all the inbound cross-cluster search connections for a destination * domain.

See Also:

AWS * API Reference

*/ virtual Model::DescribeInboundCrossClusterSearchConnectionsOutcome DescribeInboundCrossClusterSearchConnections(const Model::DescribeInboundCrossClusterSearchConnectionsRequest& request) const; /** * A Callable wrapper for DescribeInboundCrossClusterSearchConnections that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeInboundCrossClusterSearchConnectionsOutcomeCallable DescribeInboundCrossClusterSearchConnectionsCallable(const DescribeInboundCrossClusterSearchConnectionsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeInboundCrossClusterSearchConnections, request); } /** * An Async wrapper for DescribeInboundCrossClusterSearchConnections that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeInboundCrossClusterSearchConnectionsAsync(const DescribeInboundCrossClusterSearchConnectionsRequestT& request, const DescribeInboundCrossClusterSearchConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeInboundCrossClusterSearchConnections, request, handler, context); } /** *

Lists all the outbound cross-cluster search connections for a source * domain.

See Also:

AWS * API Reference

*/ virtual Model::DescribeOutboundCrossClusterSearchConnectionsOutcome DescribeOutboundCrossClusterSearchConnections(const Model::DescribeOutboundCrossClusterSearchConnectionsRequest& request) const; /** * A Callable wrapper for DescribeOutboundCrossClusterSearchConnections that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeOutboundCrossClusterSearchConnectionsOutcomeCallable DescribeOutboundCrossClusterSearchConnectionsCallable(const DescribeOutboundCrossClusterSearchConnectionsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeOutboundCrossClusterSearchConnections, request); } /** * An Async wrapper for DescribeOutboundCrossClusterSearchConnections that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeOutboundCrossClusterSearchConnectionsAsync(const DescribeOutboundCrossClusterSearchConnectionsRequestT& request, const DescribeOutboundCrossClusterSearchConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeOutboundCrossClusterSearchConnections, request, handler, context); } /** *

Describes all packages available to Amazon ES. Includes options for * filtering, limiting the number of results, and pagination.

See * Also:

AWS * API Reference

*/ virtual Model::DescribePackagesOutcome DescribePackages(const Model::DescribePackagesRequest& request) const; /** * A Callable wrapper for DescribePackages that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribePackagesOutcomeCallable DescribePackagesCallable(const DescribePackagesRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribePackages, request); } /** * An Async wrapper for DescribePackages that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribePackagesAsync(const DescribePackagesRequestT& request, const DescribePackagesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribePackages, request, handler, context); } /** *

Lists available reserved Elasticsearch instance offerings.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeReservedElasticsearchInstanceOfferingsOutcome DescribeReservedElasticsearchInstanceOfferings(const Model::DescribeReservedElasticsearchInstanceOfferingsRequest& request) const; /** * A Callable wrapper for DescribeReservedElasticsearchInstanceOfferings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeReservedElasticsearchInstanceOfferingsOutcomeCallable DescribeReservedElasticsearchInstanceOfferingsCallable(const DescribeReservedElasticsearchInstanceOfferingsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeReservedElasticsearchInstanceOfferings, request); } /** * An Async wrapper for DescribeReservedElasticsearchInstanceOfferings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeReservedElasticsearchInstanceOfferingsAsync(const DescribeReservedElasticsearchInstanceOfferingsRequestT& request, const DescribeReservedElasticsearchInstanceOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeReservedElasticsearchInstanceOfferings, request, handler, context); } /** *

Returns information about reserved Elasticsearch instances for this * account.

See Also:

AWS * API Reference

*/ virtual Model::DescribeReservedElasticsearchInstancesOutcome DescribeReservedElasticsearchInstances(const Model::DescribeReservedElasticsearchInstancesRequest& request) const; /** * A Callable wrapper for DescribeReservedElasticsearchInstances that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeReservedElasticsearchInstancesOutcomeCallable DescribeReservedElasticsearchInstancesCallable(const DescribeReservedElasticsearchInstancesRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeReservedElasticsearchInstances, request); } /** * An Async wrapper for DescribeReservedElasticsearchInstances that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeReservedElasticsearchInstancesAsync(const DescribeReservedElasticsearchInstancesRequestT& request, const DescribeReservedElasticsearchInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeReservedElasticsearchInstances, request, handler, context); } /** *

Describes one or more Amazon OpenSearch Service-managed VPC * endpoints.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpcEndpointsOutcome DescribeVpcEndpoints(const Model::DescribeVpcEndpointsRequest& request) const; /** * A Callable wrapper for DescribeVpcEndpoints that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeVpcEndpointsOutcomeCallable DescribeVpcEndpointsCallable(const DescribeVpcEndpointsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DescribeVpcEndpoints, request); } /** * An Async wrapper for DescribeVpcEndpoints that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeVpcEndpointsAsync(const DescribeVpcEndpointsRequestT& request, const DescribeVpcEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DescribeVpcEndpoints, request, handler, context); } /** *

Dissociates a package from the Amazon ES domain.

See Also:

* AWS * API Reference

*/ virtual Model::DissociatePackageOutcome DissociatePackage(const Model::DissociatePackageRequest& request) const; /** * A Callable wrapper for DissociatePackage that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DissociatePackageOutcomeCallable DissociatePackageCallable(const DissociatePackageRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::DissociatePackage, request); } /** * An Async wrapper for DissociatePackage that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DissociatePackageAsync(const DissociatePackageRequestT& request, const DissociatePackageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::DissociatePackage, request, handler, context); } /** *

Returns a list of upgrade compatible Elastisearch versions. You can * optionally pass a DomainName to get all upgrade compatible * Elasticsearch versions for that specific domain.

See Also:

AWS * API Reference

*/ virtual Model::GetCompatibleElasticsearchVersionsOutcome GetCompatibleElasticsearchVersions(const Model::GetCompatibleElasticsearchVersionsRequest& request) const; /** * A Callable wrapper for GetCompatibleElasticsearchVersions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetCompatibleElasticsearchVersionsOutcomeCallable GetCompatibleElasticsearchVersionsCallable(const GetCompatibleElasticsearchVersionsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::GetCompatibleElasticsearchVersions, request); } /** * An Async wrapper for GetCompatibleElasticsearchVersions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetCompatibleElasticsearchVersionsAsync(const GetCompatibleElasticsearchVersionsRequestT& request, const GetCompatibleElasticsearchVersionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::GetCompatibleElasticsearchVersions, request, handler, context); } /** *

Returns a list of versions of the package, along with their creation time and * commit message.

See Also:

AWS * API Reference

*/ virtual Model::GetPackageVersionHistoryOutcome GetPackageVersionHistory(const Model::GetPackageVersionHistoryRequest& request) const; /** * A Callable wrapper for GetPackageVersionHistory that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetPackageVersionHistoryOutcomeCallable GetPackageVersionHistoryCallable(const GetPackageVersionHistoryRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::GetPackageVersionHistory, request); } /** * An Async wrapper for GetPackageVersionHistory that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetPackageVersionHistoryAsync(const GetPackageVersionHistoryRequestT& request, const GetPackageVersionHistoryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::GetPackageVersionHistory, request, handler, context); } /** *

Retrieves the complete history of the last 10 upgrades that were performed on * the domain.

See Also:

AWS * API Reference

*/ virtual Model::GetUpgradeHistoryOutcome GetUpgradeHistory(const Model::GetUpgradeHistoryRequest& request) const; /** * A Callable wrapper for GetUpgradeHistory that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetUpgradeHistoryOutcomeCallable GetUpgradeHistoryCallable(const GetUpgradeHistoryRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::GetUpgradeHistory, request); } /** * An Async wrapper for GetUpgradeHistory that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetUpgradeHistoryAsync(const GetUpgradeHistoryRequestT& request, const GetUpgradeHistoryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::GetUpgradeHistory, request, handler, context); } /** *

Retrieves the latest status of the last upgrade or upgrade eligibility check * that was performed on the domain.

See Also:

AWS * API Reference

*/ virtual Model::GetUpgradeStatusOutcome GetUpgradeStatus(const Model::GetUpgradeStatusRequest& request) const; /** * A Callable wrapper for GetUpgradeStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetUpgradeStatusOutcomeCallable GetUpgradeStatusCallable(const GetUpgradeStatusRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::GetUpgradeStatus, request); } /** * An Async wrapper for GetUpgradeStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetUpgradeStatusAsync(const GetUpgradeStatusRequestT& request, const GetUpgradeStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::GetUpgradeStatus, request, handler, context); } /** *

Returns the name of all Elasticsearch domains owned by the current user's * account.

See Also:

AWS * API Reference

*/ virtual Model::ListDomainNamesOutcome ListDomainNames(const Model::ListDomainNamesRequest& request) const; /** * A Callable wrapper for ListDomainNames that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListDomainNamesOutcomeCallable ListDomainNamesCallable(const ListDomainNamesRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListDomainNames, request); } /** * An Async wrapper for ListDomainNames that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListDomainNamesAsync(const ListDomainNamesRequestT& request, const ListDomainNamesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListDomainNames, request, handler, context); } /** *

Lists all Amazon ES domains associated with the package.

See * Also:

AWS * API Reference

*/ virtual Model::ListDomainsForPackageOutcome ListDomainsForPackage(const Model::ListDomainsForPackageRequest& request) const; /** * A Callable wrapper for ListDomainsForPackage that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListDomainsForPackageOutcomeCallable ListDomainsForPackageCallable(const ListDomainsForPackageRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListDomainsForPackage, request); } /** * An Async wrapper for ListDomainsForPackage that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListDomainsForPackageAsync(const ListDomainsForPackageRequestT& request, const ListDomainsForPackageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListDomainsForPackage, request, handler, context); } /** *

List all Elasticsearch instance types that are supported for given * ElasticsearchVersion

See Also:

AWS * API Reference

*/ virtual Model::ListElasticsearchInstanceTypesOutcome ListElasticsearchInstanceTypes(const Model::ListElasticsearchInstanceTypesRequest& request) const; /** * A Callable wrapper for ListElasticsearchInstanceTypes that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListElasticsearchInstanceTypesOutcomeCallable ListElasticsearchInstanceTypesCallable(const ListElasticsearchInstanceTypesRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListElasticsearchInstanceTypes, request); } /** * An Async wrapper for ListElasticsearchInstanceTypes that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListElasticsearchInstanceTypesAsync(const ListElasticsearchInstanceTypesRequestT& request, const ListElasticsearchInstanceTypesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListElasticsearchInstanceTypes, request, handler, context); } /** *

List all supported Elasticsearch versions

See Also:

AWS * API Reference

*/ virtual Model::ListElasticsearchVersionsOutcome ListElasticsearchVersions(const Model::ListElasticsearchVersionsRequest& request) const; /** * A Callable wrapper for ListElasticsearchVersions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListElasticsearchVersionsOutcomeCallable ListElasticsearchVersionsCallable(const ListElasticsearchVersionsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListElasticsearchVersions, request); } /** * An Async wrapper for ListElasticsearchVersions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListElasticsearchVersionsAsync(const ListElasticsearchVersionsRequestT& request, const ListElasticsearchVersionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListElasticsearchVersions, request, handler, context); } /** *

Lists all packages associated with the Amazon ES domain.

See * Also:

AWS * API Reference

*/ virtual Model::ListPackagesForDomainOutcome ListPackagesForDomain(const Model::ListPackagesForDomainRequest& request) const; /** * A Callable wrapper for ListPackagesForDomain that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListPackagesForDomainOutcomeCallable ListPackagesForDomainCallable(const ListPackagesForDomainRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListPackagesForDomain, request); } /** * An Async wrapper for ListPackagesForDomain that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListPackagesForDomainAsync(const ListPackagesForDomainRequestT& request, const ListPackagesForDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListPackagesForDomain, request, handler, context); } /** *

Returns all tags for the given Elasticsearch domain.

See Also:

* AWS API * Reference

*/ virtual Model::ListTagsOutcome ListTags(const Model::ListTagsRequest& request) const; /** * A Callable wrapper for ListTags that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTagsOutcomeCallable ListTagsCallable(const ListTagsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListTags, request); } /** * An Async wrapper for ListTags that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTagsAsync(const ListTagsRequestT& request, const ListTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListTags, request, handler, context); } /** *

Retrieves information about each principal that is allowed to access a given * Amazon OpenSearch Service domain through the use of an interface VPC * endpoint.

See Also:

AWS * API Reference

*/ virtual Model::ListVpcEndpointAccessOutcome ListVpcEndpointAccess(const Model::ListVpcEndpointAccessRequest& request) const; /** * A Callable wrapper for ListVpcEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListVpcEndpointAccessOutcomeCallable ListVpcEndpointAccessCallable(const ListVpcEndpointAccessRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListVpcEndpointAccess, request); } /** * An Async wrapper for ListVpcEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListVpcEndpointAccessAsync(const ListVpcEndpointAccessRequestT& request, const ListVpcEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListVpcEndpointAccess, request, handler, context); } /** *

Retrieves all Amazon OpenSearch Service-managed VPC endpoints in the current * account and Region.

See Also:

AWS * API Reference

*/ virtual Model::ListVpcEndpointsOutcome ListVpcEndpoints(const Model::ListVpcEndpointsRequest& request) const; /** * A Callable wrapper for ListVpcEndpoints that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListVpcEndpointsOutcomeCallable ListVpcEndpointsCallable(const ListVpcEndpointsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListVpcEndpoints, request); } /** * An Async wrapper for ListVpcEndpoints that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListVpcEndpointsAsync(const ListVpcEndpointsRequestT& request, const ListVpcEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListVpcEndpoints, request, handler, context); } /** *

Retrieves all Amazon OpenSearch Service-managed VPC endpoints associated with * a particular domain.

See Also:

AWS * API Reference

*/ virtual Model::ListVpcEndpointsForDomainOutcome ListVpcEndpointsForDomain(const Model::ListVpcEndpointsForDomainRequest& request) const; /** * A Callable wrapper for ListVpcEndpointsForDomain that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListVpcEndpointsForDomainOutcomeCallable ListVpcEndpointsForDomainCallable(const ListVpcEndpointsForDomainRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::ListVpcEndpointsForDomain, request); } /** * An Async wrapper for ListVpcEndpointsForDomain that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListVpcEndpointsForDomainAsync(const ListVpcEndpointsForDomainRequestT& request, const ListVpcEndpointsForDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::ListVpcEndpointsForDomain, request, handler, context); } /** *

Allows you to purchase reserved Elasticsearch instances.

See * Also:

AWS * API Reference

*/ virtual Model::PurchaseReservedElasticsearchInstanceOfferingOutcome PurchaseReservedElasticsearchInstanceOffering(const Model::PurchaseReservedElasticsearchInstanceOfferingRequest& request) const; /** * A Callable wrapper for PurchaseReservedElasticsearchInstanceOffering that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PurchaseReservedElasticsearchInstanceOfferingOutcomeCallable PurchaseReservedElasticsearchInstanceOfferingCallable(const PurchaseReservedElasticsearchInstanceOfferingRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::PurchaseReservedElasticsearchInstanceOffering, request); } /** * An Async wrapper for PurchaseReservedElasticsearchInstanceOffering that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PurchaseReservedElasticsearchInstanceOfferingAsync(const PurchaseReservedElasticsearchInstanceOfferingRequestT& request, const PurchaseReservedElasticsearchInstanceOfferingResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::PurchaseReservedElasticsearchInstanceOffering, request, handler, context); } /** *

Allows the destination domain owner to reject an inbound cross-cluster search * connection request.

See Also:

AWS * API Reference

*/ virtual Model::RejectInboundCrossClusterSearchConnectionOutcome RejectInboundCrossClusterSearchConnection(const Model::RejectInboundCrossClusterSearchConnectionRequest& request) const; /** * A Callable wrapper for RejectInboundCrossClusterSearchConnection that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RejectInboundCrossClusterSearchConnectionOutcomeCallable RejectInboundCrossClusterSearchConnectionCallable(const RejectInboundCrossClusterSearchConnectionRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::RejectInboundCrossClusterSearchConnection, request); } /** * An Async wrapper for RejectInboundCrossClusterSearchConnection that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RejectInboundCrossClusterSearchConnectionAsync(const RejectInboundCrossClusterSearchConnectionRequestT& request, const RejectInboundCrossClusterSearchConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::RejectInboundCrossClusterSearchConnection, request, handler, context); } /** *

Removes the specified set of tags from the specified Elasticsearch * domain.

See Also:

AWS API * Reference

*/ virtual Model::RemoveTagsOutcome RemoveTags(const Model::RemoveTagsRequest& request) const; /** * A Callable wrapper for RemoveTags that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RemoveTagsOutcomeCallable RemoveTagsCallable(const RemoveTagsRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::RemoveTags, request); } /** * An Async wrapper for RemoveTags that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RemoveTagsAsync(const RemoveTagsRequestT& request, const RemoveTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::RemoveTags, request, handler, context); } /** *

Revokes access to an Amazon OpenSearch Service domain that was provided * through an interface VPC endpoint.

See Also:

AWS * API Reference

*/ virtual Model::RevokeVpcEndpointAccessOutcome RevokeVpcEndpointAccess(const Model::RevokeVpcEndpointAccessRequest& request) const; /** * A Callable wrapper for RevokeVpcEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RevokeVpcEndpointAccessOutcomeCallable RevokeVpcEndpointAccessCallable(const RevokeVpcEndpointAccessRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::RevokeVpcEndpointAccess, request); } /** * An Async wrapper for RevokeVpcEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RevokeVpcEndpointAccessAsync(const RevokeVpcEndpointAccessRequestT& request, const RevokeVpcEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::RevokeVpcEndpointAccess, request, handler, context); } /** *

Schedules a service software update for an Amazon ES domain.

See * Also:

AWS * API Reference

*/ virtual Model::StartElasticsearchServiceSoftwareUpdateOutcome StartElasticsearchServiceSoftwareUpdate(const Model::StartElasticsearchServiceSoftwareUpdateRequest& request) const; /** * A Callable wrapper for StartElasticsearchServiceSoftwareUpdate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartElasticsearchServiceSoftwareUpdateOutcomeCallable StartElasticsearchServiceSoftwareUpdateCallable(const StartElasticsearchServiceSoftwareUpdateRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::StartElasticsearchServiceSoftwareUpdate, request); } /** * An Async wrapper for StartElasticsearchServiceSoftwareUpdate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartElasticsearchServiceSoftwareUpdateAsync(const StartElasticsearchServiceSoftwareUpdateRequestT& request, const StartElasticsearchServiceSoftwareUpdateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::StartElasticsearchServiceSoftwareUpdate, request, handler, context); } /** *

Modifies the cluster configuration of the specified Elasticsearch domain, * setting as setting the instance type and the number of instances.

See * Also:

AWS * API Reference

*/ virtual Model::UpdateElasticsearchDomainConfigOutcome UpdateElasticsearchDomainConfig(const Model::UpdateElasticsearchDomainConfigRequest& request) const; /** * A Callable wrapper for UpdateElasticsearchDomainConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateElasticsearchDomainConfigOutcomeCallable UpdateElasticsearchDomainConfigCallable(const UpdateElasticsearchDomainConfigRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::UpdateElasticsearchDomainConfig, request); } /** * An Async wrapper for UpdateElasticsearchDomainConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateElasticsearchDomainConfigAsync(const UpdateElasticsearchDomainConfigRequestT& request, const UpdateElasticsearchDomainConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::UpdateElasticsearchDomainConfig, request, handler, context); } /** *

Updates a package for use with Amazon ES domains.

See Also:

* AWS * API Reference

*/ virtual Model::UpdatePackageOutcome UpdatePackage(const Model::UpdatePackageRequest& request) const; /** * A Callable wrapper for UpdatePackage that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdatePackageOutcomeCallable UpdatePackageCallable(const UpdatePackageRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::UpdatePackage, request); } /** * An Async wrapper for UpdatePackage that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdatePackageAsync(const UpdatePackageRequestT& request, const UpdatePackageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::UpdatePackage, request, handler, context); } /** *

Modifies an Amazon OpenSearch Service-managed interface VPC * endpoint.

See Also:

AWS * API Reference

*/ virtual Model::UpdateVpcEndpointOutcome UpdateVpcEndpoint(const Model::UpdateVpcEndpointRequest& request) const; /** * A Callable wrapper for UpdateVpcEndpoint that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateVpcEndpointOutcomeCallable UpdateVpcEndpointCallable(const UpdateVpcEndpointRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::UpdateVpcEndpoint, request); } /** * An Async wrapper for UpdateVpcEndpoint that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateVpcEndpointAsync(const UpdateVpcEndpointRequestT& request, const UpdateVpcEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::UpdateVpcEndpoint, request, handler, context); } /** *

Allows you to either upgrade your domain or perform an Upgrade eligibility * check to a compatible Elasticsearch version.

See Also:

AWS * API Reference

*/ virtual Model::UpgradeElasticsearchDomainOutcome UpgradeElasticsearchDomain(const Model::UpgradeElasticsearchDomainRequest& request) const; /** * A Callable wrapper for UpgradeElasticsearchDomain that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpgradeElasticsearchDomainOutcomeCallable UpgradeElasticsearchDomainCallable(const UpgradeElasticsearchDomainRequestT& request) const { return SubmitCallable(&ElasticsearchServiceClient::UpgradeElasticsearchDomain, request); } /** * An Async wrapper for UpgradeElasticsearchDomain that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpgradeElasticsearchDomainAsync(const UpgradeElasticsearchDomainRequestT& request, const UpgradeElasticsearchDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ElasticsearchServiceClient::UpgradeElasticsearchDomain, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const ElasticsearchServiceClientConfiguration& clientConfiguration); ElasticsearchServiceClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace ElasticsearchService } // namespace Aws