/**
* 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 VPCLattice
{
/**
* Amazon VPC Lattice is a fully managed application networking service that you
* use to connect, secure, and monitor all of your services across multiple
* accounts and virtual private clouds (VPCs). Amazon VPC Lattice interconnects
* your microservices and legacy services within a logical boundary, so that you
* can discover and manage them more efficiently. For more information, see the Amazon VPC Lattice
* User Guide
*/
class AWS_VPCLATTICE_API VPCLatticeClient : 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 VPCLatticeClientConfiguration ClientConfigurationType;
typedef VPCLatticeEndpointProvider 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.
*/
VPCLatticeClient(const Aws::VPCLattice::VPCLatticeClientConfiguration& clientConfiguration = Aws::VPCLattice::VPCLatticeClientConfiguration(),
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.
*/
VPCLatticeClient(const Aws::Auth::AWSCredentials& credentials,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::VPCLattice::VPCLatticeClientConfiguration& clientConfiguration = Aws::VPCLattice::VPCLatticeClientConfiguration());
/**
* 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
*/
VPCLatticeClient(const std::shared_ptr& credentialsProvider,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::VPCLattice::VPCLatticeClientConfiguration& clientConfiguration = Aws::VPCLattice::VPCLatticeClientConfiguration());
/* 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.
*/
VPCLatticeClient(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.
*/
VPCLatticeClient(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
*/
VPCLatticeClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration);
/* End of legacy constructors due deprecation */
virtual ~VPCLatticeClient();
/**
* Updates the listener rules in a batch. You can use this operation to change
* the priority of listener rules. This can be useful when bulk updating or
* swapping rule priority.
See Also:
AWS
* API Reference
*/
virtual Model::BatchUpdateRuleOutcome BatchUpdateRule(const Model::BatchUpdateRuleRequest& request) const;
/**
* A Callable wrapper for BatchUpdateRule that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::BatchUpdateRuleOutcomeCallable BatchUpdateRuleCallable(const BatchUpdateRuleRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::BatchUpdateRule, request);
}
/**
* An Async wrapper for BatchUpdateRule that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void BatchUpdateRuleAsync(const BatchUpdateRuleRequestT& request, const BatchUpdateRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::BatchUpdateRule, request, handler, context);
}
/**
* Enables access logs to be sent to Amazon CloudWatch, Amazon S3, and Amazon
* Kinesis Data Firehose. The service network owner can use the access logs to
* audit the services in the network. The service network owner will only see
* access logs from clients and services that are associated with their service
* network. Access log entries represent traffic originated from VPCs associated
* with that network. For more information, see Access
* logs in the Amazon VPC Lattice User Guide.
See Also:
* AWS
* API Reference
*/
virtual Model::CreateAccessLogSubscriptionOutcome CreateAccessLogSubscription(const Model::CreateAccessLogSubscriptionRequest& request) const;
/**
* A Callable wrapper for CreateAccessLogSubscription that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateAccessLogSubscriptionOutcomeCallable CreateAccessLogSubscriptionCallable(const CreateAccessLogSubscriptionRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::CreateAccessLogSubscription, request);
}
/**
* An Async wrapper for CreateAccessLogSubscription that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateAccessLogSubscriptionAsync(const CreateAccessLogSubscriptionRequestT& request, const CreateAccessLogSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::CreateAccessLogSubscription, request, handler, context);
}
/**
* Creates a listener for a service. Before you start using your Amazon VPC
* Lattice service, you must add one or more listeners. A listener is a process
* that checks for connection requests to your services. For more information, see
* Listeners
* in the Amazon VPC Lattice User Guide.
See Also:
AWS
* API Reference
*/
virtual Model::CreateListenerOutcome CreateListener(const Model::CreateListenerRequest& request) const;
/**
* A Callable wrapper for CreateListener that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateListenerOutcomeCallable CreateListenerCallable(const CreateListenerRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::CreateListener, request);
}
/**
* An Async wrapper for CreateListener that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateListenerAsync(const CreateListenerRequestT& request, const CreateListenerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::CreateListener, request, handler, context);
}
/**
* Creates a listener rule. Each listener has a default rule for checking
* connection requests, but you can define additional rules. Each rule consists of
* a priority, one or more actions, and one or more conditions. For more
* information, see Listener
* rules in the Amazon VPC Lattice User Guide.
See Also:
* AWS
* API Reference
*/
virtual Model::CreateRuleOutcome CreateRule(const Model::CreateRuleRequest& request) const;
/**
* A Callable wrapper for CreateRule that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateRuleOutcomeCallable CreateRuleCallable(const CreateRuleRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::CreateRule, request);
}
/**
* An Async wrapper for CreateRule that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateRuleAsync(const CreateRuleRequestT& request, const CreateRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::CreateRule, request, handler, context);
}
/**
* Creates a service. A service is any software application that can run on
* instances containers, or serverless functions within an account or virtual
* private cloud (VPC).
For more information, see Services
* in the Amazon VPC Lattice User Guide.
See Also:
AWS
* API Reference
*/
virtual Model::CreateServiceOutcome CreateService(const Model::CreateServiceRequest& request) const;
/**
* A Callable wrapper for CreateService that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateServiceOutcomeCallable CreateServiceCallable(const CreateServiceRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::CreateService, request);
}
/**
* An Async wrapper for CreateService that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateServiceAsync(const CreateServiceRequestT& request, const CreateServiceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::CreateService, request, handler, context);
}
/**
* Creates a service network. A service network is a logical boundary for a
* collection of services. You can associate services and VPCs with a service
* network.
For more information, see Service
* networks in the Amazon VPC Lattice User Guide.
See
* Also:
AWS
* API Reference
*/
virtual Model::CreateServiceNetworkOutcome CreateServiceNetwork(const Model::CreateServiceNetworkRequest& request) const;
/**
* A Callable wrapper for CreateServiceNetwork that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateServiceNetworkOutcomeCallable CreateServiceNetworkCallable(const CreateServiceNetworkRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::CreateServiceNetwork, request);
}
/**
* An Async wrapper for CreateServiceNetwork that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateServiceNetworkAsync(const CreateServiceNetworkRequestT& request, const CreateServiceNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::CreateServiceNetwork, request, handler, context);
}
/**
* Associates a service with a service network.
You can't use this
* operation if the service and service network are already associated or if there
* is a disassociation or deletion in progress. If the association fails, you can
* retry the operation by deleting the association and recreating it.
You
* cannot associate a service and service network that are shared with a caller.
* The caller must own either the service or the service network.
As a
* result of this operation, the association is created in the service network
* account and the association owner account.
See Also:
AWS
* API Reference
*/
virtual Model::CreateServiceNetworkServiceAssociationOutcome CreateServiceNetworkServiceAssociation(const Model::CreateServiceNetworkServiceAssociationRequest& request) const;
/**
* A Callable wrapper for CreateServiceNetworkServiceAssociation that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateServiceNetworkServiceAssociationOutcomeCallable CreateServiceNetworkServiceAssociationCallable(const CreateServiceNetworkServiceAssociationRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::CreateServiceNetworkServiceAssociation, request);
}
/**
* An Async wrapper for CreateServiceNetworkServiceAssociation that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateServiceNetworkServiceAssociationAsync(const CreateServiceNetworkServiceAssociationRequestT& request, const CreateServiceNetworkServiceAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::CreateServiceNetworkServiceAssociation, request, handler, context);
}
/**
* Associates a VPC with a service network. When you associate a VPC with the
* service network, it enables all the resources within that VPC to be clients and
* communicate with other services in the service network. For more information,
* see Manage
* VPC associations in the Amazon VPC Lattice User Guide.
You
* can't use this operation if there is a disassociation in progress. If the
* association fails, retry by deleting the association and recreating it.
* As a result of this operation, the association gets created in the service
* network account and the VPC owner account.
If you add a security group to
* the service network and VPC association, the association must continue to always
* have at least one security group. You can add or edit security groups at any
* time. However, to remove all security groups, you must first delete the
* association and recreate it without security groups.
See Also:
* AWS
* API Reference
*/
virtual Model::CreateServiceNetworkVpcAssociationOutcome CreateServiceNetworkVpcAssociation(const Model::CreateServiceNetworkVpcAssociationRequest& request) const;
/**
* A Callable wrapper for CreateServiceNetworkVpcAssociation that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateServiceNetworkVpcAssociationOutcomeCallable CreateServiceNetworkVpcAssociationCallable(const CreateServiceNetworkVpcAssociationRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::CreateServiceNetworkVpcAssociation, request);
}
/**
* An Async wrapper for CreateServiceNetworkVpcAssociation that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateServiceNetworkVpcAssociationAsync(const CreateServiceNetworkVpcAssociationRequestT& request, const CreateServiceNetworkVpcAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::CreateServiceNetworkVpcAssociation, request, handler, context);
}
/**
* Creates a target group. A target group is a collection of targets, or compute
* resources, that run your application or service. A target group can only be used
* by a single service.
For more information, see Target
* groups in the Amazon VPC Lattice User Guide.
See Also:
* AWS
* API Reference
*/
virtual Model::CreateTargetGroupOutcome CreateTargetGroup(const Model::CreateTargetGroupRequest& request) const;
/**
* A Callable wrapper for CreateTargetGroup that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateTargetGroupOutcomeCallable CreateTargetGroupCallable(const CreateTargetGroupRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::CreateTargetGroup, request);
}
/**
* An Async wrapper for CreateTargetGroup that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateTargetGroupAsync(const CreateTargetGroupRequestT& request, const CreateTargetGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::CreateTargetGroup, request, handler, context);
}
/**
* Deletes the specified access log subscription.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteAccessLogSubscriptionOutcome DeleteAccessLogSubscription(const Model::DeleteAccessLogSubscriptionRequest& request) const;
/**
* A Callable wrapper for DeleteAccessLogSubscription that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteAccessLogSubscriptionOutcomeCallable DeleteAccessLogSubscriptionCallable(const DeleteAccessLogSubscriptionRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteAccessLogSubscription, request);
}
/**
* An Async wrapper for DeleteAccessLogSubscription that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteAccessLogSubscriptionAsync(const DeleteAccessLogSubscriptionRequestT& request, const DeleteAccessLogSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteAccessLogSubscription, request, handler, context);
}
/**
* Deletes the specified auth policy. If an auth is set to AWS_IAM
* and the auth policy is deleted, all requests will be denied by default. If you
* are trying to remove the auth policy completely, you must set the auth_type to
* NONE
. If auth is enabled on the resource, but no auth policy is
* set, all requests will be denied.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteAuthPolicyOutcome DeleteAuthPolicy(const Model::DeleteAuthPolicyRequest& request) const;
/**
* A Callable wrapper for DeleteAuthPolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteAuthPolicyOutcomeCallable DeleteAuthPolicyCallable(const DeleteAuthPolicyRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteAuthPolicy, request);
}
/**
* An Async wrapper for DeleteAuthPolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteAuthPolicyAsync(const DeleteAuthPolicyRequestT& request, const DeleteAuthPolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteAuthPolicy, request, handler, context);
}
/**
* Deletes the specified listener.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteListenerOutcome DeleteListener(const Model::DeleteListenerRequest& request) const;
/**
* A Callable wrapper for DeleteListener that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteListenerOutcomeCallable DeleteListenerCallable(const DeleteListenerRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteListener, request);
}
/**
* An Async wrapper for DeleteListener that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteListenerAsync(const DeleteListenerRequestT& request, const DeleteListenerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteListener, request, handler, context);
}
/**
* Deletes the specified resource policy.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteResourcePolicyOutcome DeleteResourcePolicy(const Model::DeleteResourcePolicyRequest& request) const;
/**
* A Callable wrapper for DeleteResourcePolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteResourcePolicyOutcomeCallable DeleteResourcePolicyCallable(const DeleteResourcePolicyRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteResourcePolicy, request);
}
/**
* An Async wrapper for DeleteResourcePolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteResourcePolicyAsync(const DeleteResourcePolicyRequestT& request, const DeleteResourcePolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteResourcePolicy, request, handler, context);
}
/**
* Deletes a listener rule. Each listener has a default rule for checking
* connection requests, but you can define additional rules. Each rule consists of
* a priority, one or more actions, and one or more conditions. You can delete
* additional listener rules, but you cannot delete the default rule.
For
* more information, see Listener
* rules in the Amazon VPC Lattice User Guide.
See Also:
* AWS
* API Reference
*/
virtual Model::DeleteRuleOutcome DeleteRule(const Model::DeleteRuleRequest& request) const;
/**
* A Callable wrapper for DeleteRule that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteRuleOutcomeCallable DeleteRuleCallable(const DeleteRuleRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteRule, request);
}
/**
* An Async wrapper for DeleteRule that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteRuleAsync(const DeleteRuleRequestT& request, const DeleteRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteRule, request, handler, context);
}
/**
* Deletes a service. A service can't be deleted if it's associated with a
* service network. If you delete a service, all resources related to the service,
* such as the resource policy, auth policy, listeners, listener rules, and access
* log subscriptions, are also deleted. For more information, see Delete
* a service in the Amazon VPC Lattice User Guide.
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteServiceOutcome DeleteService(const Model::DeleteServiceRequest& request) const;
/**
* A Callable wrapper for DeleteService that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteServiceOutcomeCallable DeleteServiceCallable(const DeleteServiceRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteService, request);
}
/**
* An Async wrapper for DeleteService that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteServiceAsync(const DeleteServiceRequestT& request, const DeleteServiceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteService, request, handler, context);
}
/**
* Deletes a service network. You can only delete the service network if there
* is no service or VPC associated with it. If you delete a service network, all
* resources related to the service network, such as the resource policy, auth
* policy, and access log subscriptions, are also deleted. For more information,
* see Delete
* a service network in the Amazon VPC Lattice User Guide.
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteServiceNetworkOutcome DeleteServiceNetwork(const Model::DeleteServiceNetworkRequest& request) const;
/**
* A Callable wrapper for DeleteServiceNetwork that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteServiceNetworkOutcomeCallable DeleteServiceNetworkCallable(const DeleteServiceNetworkRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteServiceNetwork, request);
}
/**
* An Async wrapper for DeleteServiceNetwork that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteServiceNetworkAsync(const DeleteServiceNetworkRequestT& request, const DeleteServiceNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteServiceNetwork, request, handler, context);
}
/**
* Deletes the association between a specified service and the specific service
* network. This request will fail if an association is still in
* progress.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteServiceNetworkServiceAssociationOutcome DeleteServiceNetworkServiceAssociation(const Model::DeleteServiceNetworkServiceAssociationRequest& request) const;
/**
* A Callable wrapper for DeleteServiceNetworkServiceAssociation that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteServiceNetworkServiceAssociationOutcomeCallable DeleteServiceNetworkServiceAssociationCallable(const DeleteServiceNetworkServiceAssociationRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteServiceNetworkServiceAssociation, request);
}
/**
* An Async wrapper for DeleteServiceNetworkServiceAssociation that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteServiceNetworkServiceAssociationAsync(const DeleteServiceNetworkServiceAssociationRequestT& request, const DeleteServiceNetworkServiceAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteServiceNetworkServiceAssociation, request, handler, context);
}
/**
* Disassociates the VPC from the service network. You can't disassociate the
* VPC if there is a create or update association in progress.
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteServiceNetworkVpcAssociationOutcome DeleteServiceNetworkVpcAssociation(const Model::DeleteServiceNetworkVpcAssociationRequest& request) const;
/**
* A Callable wrapper for DeleteServiceNetworkVpcAssociation that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteServiceNetworkVpcAssociationOutcomeCallable DeleteServiceNetworkVpcAssociationCallable(const DeleteServiceNetworkVpcAssociationRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteServiceNetworkVpcAssociation, request);
}
/**
* An Async wrapper for DeleteServiceNetworkVpcAssociation that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteServiceNetworkVpcAssociationAsync(const DeleteServiceNetworkVpcAssociationRequestT& request, const DeleteServiceNetworkVpcAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteServiceNetworkVpcAssociation, request, handler, context);
}
/**
* Deletes a target group. You can't delete a target group if it is used in a
* listener rule or if the target group creation is in progress.
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteTargetGroupOutcome DeleteTargetGroup(const Model::DeleteTargetGroupRequest& request) const;
/**
* A Callable wrapper for DeleteTargetGroup that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteTargetGroupOutcomeCallable DeleteTargetGroupCallable(const DeleteTargetGroupRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeleteTargetGroup, request);
}
/**
* An Async wrapper for DeleteTargetGroup that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteTargetGroupAsync(const DeleteTargetGroupRequestT& request, const DeleteTargetGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeleteTargetGroup, request, handler, context);
}
/**
* Deregisters the specified targets from the specified target
* group.
See Also:
AWS
* API Reference
*/
virtual Model::DeregisterTargetsOutcome DeregisterTargets(const Model::DeregisterTargetsRequest& request) const;
/**
* A Callable wrapper for DeregisterTargets that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeregisterTargetsOutcomeCallable DeregisterTargetsCallable(const DeregisterTargetsRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::DeregisterTargets, request);
}
/**
* An Async wrapper for DeregisterTargets that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeregisterTargetsAsync(const DeregisterTargetsRequestT& request, const DeregisterTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::DeregisterTargets, request, handler, context);
}
/**
* Retrieves information about the specified access log
* subscription.
See Also:
AWS
* API Reference
*/
virtual Model::GetAccessLogSubscriptionOutcome GetAccessLogSubscription(const Model::GetAccessLogSubscriptionRequest& request) const;
/**
* A Callable wrapper for GetAccessLogSubscription that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetAccessLogSubscriptionOutcomeCallable GetAccessLogSubscriptionCallable(const GetAccessLogSubscriptionRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetAccessLogSubscription, request);
}
/**
* An Async wrapper for GetAccessLogSubscription that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetAccessLogSubscriptionAsync(const GetAccessLogSubscriptionRequestT& request, const GetAccessLogSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetAccessLogSubscription, request, handler, context);
}
/**
* Retrieves information about the auth policy for the specified service or
* service network.
See Also:
AWS
* API Reference
*/
virtual Model::GetAuthPolicyOutcome GetAuthPolicy(const Model::GetAuthPolicyRequest& request) const;
/**
* A Callable wrapper for GetAuthPolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetAuthPolicyOutcomeCallable GetAuthPolicyCallable(const GetAuthPolicyRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetAuthPolicy, request);
}
/**
* An Async wrapper for GetAuthPolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetAuthPolicyAsync(const GetAuthPolicyRequestT& request, const GetAuthPolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetAuthPolicy, request, handler, context);
}
/**
* Retrieves information about the specified listener for the specified
* service.
See Also:
AWS
* API Reference
*/
virtual Model::GetListenerOutcome GetListener(const Model::GetListenerRequest& request) const;
/**
* A Callable wrapper for GetListener that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetListenerOutcomeCallable GetListenerCallable(const GetListenerRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetListener, request);
}
/**
* An Async wrapper for GetListener that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetListenerAsync(const GetListenerRequestT& request, const GetListenerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetListener, request, handler, context);
}
/**
* Retrieves information about the resource policy. The resource policy is an
* IAM policy created on behalf of the resource owner when they share a
* resource.
See Also:
AWS
* API Reference
*/
virtual Model::GetResourcePolicyOutcome GetResourcePolicy(const Model::GetResourcePolicyRequest& request) const;
/**
* A Callable wrapper for GetResourcePolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetResourcePolicyOutcomeCallable GetResourcePolicyCallable(const GetResourcePolicyRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetResourcePolicy, request);
}
/**
* An Async wrapper for GetResourcePolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetResourcePolicyAsync(const GetResourcePolicyRequestT& request, const GetResourcePolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetResourcePolicy, request, handler, context);
}
/**
* Retrieves information about listener rules. You can also retrieve information
* about the default listener rule. For more information, see Listener
* rules in the Amazon VPC Lattice User Guide.
See Also:
* AWS
* API Reference
*/
virtual Model::GetRuleOutcome GetRule(const Model::GetRuleRequest& request) const;
/**
* A Callable wrapper for GetRule that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetRuleOutcomeCallable GetRuleCallable(const GetRuleRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetRule, request);
}
/**
* An Async wrapper for GetRule that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetRuleAsync(const GetRuleRequestT& request, const GetRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetRule, request, handler, context);
}
/**
* Retrieves information about the specified service.
See Also:
* AWS
* API Reference
*/
virtual Model::GetServiceOutcome GetService(const Model::GetServiceRequest& request) const;
/**
* A Callable wrapper for GetService that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetServiceOutcomeCallable GetServiceCallable(const GetServiceRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetService, request);
}
/**
* An Async wrapper for GetService that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetServiceAsync(const GetServiceRequestT& request, const GetServiceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetService, request, handler, context);
}
/**
* Retrieves information about the specified service network.
See
* Also:
AWS
* API Reference
*/
virtual Model::GetServiceNetworkOutcome GetServiceNetwork(const Model::GetServiceNetworkRequest& request) const;
/**
* A Callable wrapper for GetServiceNetwork that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetServiceNetworkOutcomeCallable GetServiceNetworkCallable(const GetServiceNetworkRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetServiceNetwork, request);
}
/**
* An Async wrapper for GetServiceNetwork that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetServiceNetworkAsync(const GetServiceNetworkRequestT& request, const GetServiceNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetServiceNetwork, request, handler, context);
}
/**
* Retrieves information about the specified association between a service
* network and a service.
See Also:
AWS
* API Reference
*/
virtual Model::GetServiceNetworkServiceAssociationOutcome GetServiceNetworkServiceAssociation(const Model::GetServiceNetworkServiceAssociationRequest& request) const;
/**
* A Callable wrapper for GetServiceNetworkServiceAssociation that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetServiceNetworkServiceAssociationOutcomeCallable GetServiceNetworkServiceAssociationCallable(const GetServiceNetworkServiceAssociationRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetServiceNetworkServiceAssociation, request);
}
/**
* An Async wrapper for GetServiceNetworkServiceAssociation that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetServiceNetworkServiceAssociationAsync(const GetServiceNetworkServiceAssociationRequestT& request, const GetServiceNetworkServiceAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetServiceNetworkServiceAssociation, request, handler, context);
}
/**
* Retrieves information about the association between a service network and a
* VPC.
See Also:
AWS
* API Reference
*/
virtual Model::GetServiceNetworkVpcAssociationOutcome GetServiceNetworkVpcAssociation(const Model::GetServiceNetworkVpcAssociationRequest& request) const;
/**
* A Callable wrapper for GetServiceNetworkVpcAssociation that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetServiceNetworkVpcAssociationOutcomeCallable GetServiceNetworkVpcAssociationCallable(const GetServiceNetworkVpcAssociationRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetServiceNetworkVpcAssociation, request);
}
/**
* An Async wrapper for GetServiceNetworkVpcAssociation that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetServiceNetworkVpcAssociationAsync(const GetServiceNetworkVpcAssociationRequestT& request, const GetServiceNetworkVpcAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetServiceNetworkVpcAssociation, request, handler, context);
}
/**
* Retrieves information about the specified target group.
See
* Also:
AWS
* API Reference
*/
virtual Model::GetTargetGroupOutcome GetTargetGroup(const Model::GetTargetGroupRequest& request) const;
/**
* A Callable wrapper for GetTargetGroup that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetTargetGroupOutcomeCallable GetTargetGroupCallable(const GetTargetGroupRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::GetTargetGroup, request);
}
/**
* An Async wrapper for GetTargetGroup that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetTargetGroupAsync(const GetTargetGroupRequestT& request, const GetTargetGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::GetTargetGroup, request, handler, context);
}
/**
* Lists all access log subscriptions for the specified service network or
* service.
See Also:
AWS
* API Reference
*/
virtual Model::ListAccessLogSubscriptionsOutcome ListAccessLogSubscriptions(const Model::ListAccessLogSubscriptionsRequest& request) const;
/**
* A Callable wrapper for ListAccessLogSubscriptions that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListAccessLogSubscriptionsOutcomeCallable ListAccessLogSubscriptionsCallable(const ListAccessLogSubscriptionsRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListAccessLogSubscriptions, request);
}
/**
* An Async wrapper for ListAccessLogSubscriptions that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListAccessLogSubscriptionsAsync(const ListAccessLogSubscriptionsRequestT& request, const ListAccessLogSubscriptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListAccessLogSubscriptions, request, handler, context);
}
/**
* Lists the listeners for the specified service.
See Also:
AWS
* API Reference
*/
virtual Model::ListListenersOutcome ListListeners(const Model::ListListenersRequest& request) const;
/**
* A Callable wrapper for ListListeners that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListListenersOutcomeCallable ListListenersCallable(const ListListenersRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListListeners, request);
}
/**
* An Async wrapper for ListListeners that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListListenersAsync(const ListListenersRequestT& request, const ListListenersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListListeners, request, handler, context);
}
/**
* Lists the rules for the listener.
See Also:
AWS
* API Reference
*/
virtual Model::ListRulesOutcome ListRules(const Model::ListRulesRequest& request) const;
/**
* A Callable wrapper for ListRules that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListRulesOutcomeCallable ListRulesCallable(const ListRulesRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListRules, request);
}
/**
* An Async wrapper for ListRules that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListRulesAsync(const ListRulesRequestT& request, const ListRulesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListRules, request, handler, context);
}
/**
* Lists the associations between the service network and the service. You can
* filter the list either by service or service network. You must provide either
* the service network identifier or the service identifier.
Every
* association in Amazon VPC Lattice is given a unique Amazon Resource Name (ARN),
* such as when a service network is associated with a VPC or when a service is
* associated with a service network. If the association is for a resource that is
* shared with another account, the association will include the local account ID
* as the prefix in the ARN for each account the resource is shared
* with.
See Also:
AWS
* API Reference
*/
virtual Model::ListServiceNetworkServiceAssociationsOutcome ListServiceNetworkServiceAssociations(const Model::ListServiceNetworkServiceAssociationsRequest& request) const;
/**
* A Callable wrapper for ListServiceNetworkServiceAssociations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListServiceNetworkServiceAssociationsOutcomeCallable ListServiceNetworkServiceAssociationsCallable(const ListServiceNetworkServiceAssociationsRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListServiceNetworkServiceAssociations, request);
}
/**
* An Async wrapper for ListServiceNetworkServiceAssociations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListServiceNetworkServiceAssociationsAsync(const ListServiceNetworkServiceAssociationsRequestT& request, const ListServiceNetworkServiceAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListServiceNetworkServiceAssociations, request, handler, context);
}
/**
* Lists the service network and VPC associations. You can filter the list
* either by VPC or service network. You must provide either the service network
* identifier or the VPC identifier.
See Also:
AWS
* API Reference
*/
virtual Model::ListServiceNetworkVpcAssociationsOutcome ListServiceNetworkVpcAssociations(const Model::ListServiceNetworkVpcAssociationsRequest& request) const;
/**
* A Callable wrapper for ListServiceNetworkVpcAssociations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListServiceNetworkVpcAssociationsOutcomeCallable ListServiceNetworkVpcAssociationsCallable(const ListServiceNetworkVpcAssociationsRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListServiceNetworkVpcAssociations, request);
}
/**
* An Async wrapper for ListServiceNetworkVpcAssociations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListServiceNetworkVpcAssociationsAsync(const ListServiceNetworkVpcAssociationsRequestT& request, const ListServiceNetworkVpcAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListServiceNetworkVpcAssociations, request, handler, context);
}
/**
* Lists the service networks owned by the caller account or shared with the
* caller account. Also includes the account ID in the ARN to show which account
* owns the service network.
See Also:
AWS
* API Reference
*/
virtual Model::ListServiceNetworksOutcome ListServiceNetworks(const Model::ListServiceNetworksRequest& request) const;
/**
* A Callable wrapper for ListServiceNetworks that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListServiceNetworksOutcomeCallable ListServiceNetworksCallable(const ListServiceNetworksRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListServiceNetworks, request);
}
/**
* An Async wrapper for ListServiceNetworks that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListServiceNetworksAsync(const ListServiceNetworksRequestT& request, const ListServiceNetworksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListServiceNetworks, request, handler, context);
}
/**
* Lists the services owned by the caller account or shared with the caller
* account.
See Also:
AWS
* API Reference
*/
virtual Model::ListServicesOutcome ListServices(const Model::ListServicesRequest& request) const;
/**
* A Callable wrapper for ListServices that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListServicesOutcomeCallable ListServicesCallable(const ListServicesRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListServices, request);
}
/**
* An Async wrapper for ListServices that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListServicesAsync(const ListServicesRequestT& request, const ListServicesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListServices, request, handler, context);
}
/**
* Lists the tags for the specified 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(&VPCLatticeClient::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(&VPCLatticeClient::ListTagsForResource, request, handler, context);
}
/**
* Lists your target groups. You can narrow your search by using the filters
* below in your request.
See Also:
AWS
* API Reference
*/
virtual Model::ListTargetGroupsOutcome ListTargetGroups(const Model::ListTargetGroupsRequest& request) const;
/**
* A Callable wrapper for ListTargetGroups that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListTargetGroupsOutcomeCallable ListTargetGroupsCallable(const ListTargetGroupsRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListTargetGroups, request);
}
/**
* An Async wrapper for ListTargetGroups that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListTargetGroupsAsync(const ListTargetGroupsRequestT& request, const ListTargetGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListTargetGroups, request, handler, context);
}
/**
* Lists the targets for the target group. By default, all targets are included.
* You can use this API to check the health status of targets. You can also filter
* the results by target.
See Also:
AWS
* API Reference
*/
virtual Model::ListTargetsOutcome ListTargets(const Model::ListTargetsRequest& request) const;
/**
* A Callable wrapper for ListTargets that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListTargetsOutcomeCallable ListTargetsCallable(const ListTargetsRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::ListTargets, request);
}
/**
* An Async wrapper for ListTargets that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListTargetsAsync(const ListTargetsRequestT& request, const ListTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::ListTargets, request, handler, context);
}
/**
* Creates or updates the auth policy. The policy string in JSON must not
* contain newlines or blank lines.
See Also:
AWS
* API Reference
*/
virtual Model::PutAuthPolicyOutcome PutAuthPolicy(const Model::PutAuthPolicyRequest& request) const;
/**
* A Callable wrapper for PutAuthPolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::PutAuthPolicyOutcomeCallable PutAuthPolicyCallable(const PutAuthPolicyRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::PutAuthPolicy, request);
}
/**
* An Async wrapper for PutAuthPolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void PutAuthPolicyAsync(const PutAuthPolicyRequestT& request, const PutAuthPolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::PutAuthPolicy, request, handler, context);
}
/**
* Attaches a resource-based permission policy to a service or service network.
* The policy must contain the same actions and condition statements as the Amazon
* Web Services Resource Access Manager permission for sharing services and service
* networks.
See Also:
AWS
* API Reference
*/
virtual Model::PutResourcePolicyOutcome PutResourcePolicy(const Model::PutResourcePolicyRequest& request) const;
/**
* A Callable wrapper for PutResourcePolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::PutResourcePolicyOutcomeCallable PutResourcePolicyCallable(const PutResourcePolicyRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::PutResourcePolicy, request);
}
/**
* An Async wrapper for PutResourcePolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void PutResourcePolicyAsync(const PutResourcePolicyRequestT& request, const PutResourcePolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::PutResourcePolicy, request, handler, context);
}
/**
* Registers the targets with the target group. If it's a Lambda target, you can
* only have one target in a target group.
See Also:
AWS
* API Reference
*/
virtual Model::RegisterTargetsOutcome RegisterTargets(const Model::RegisterTargetsRequest& request) const;
/**
* A Callable wrapper for RegisterTargets that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RegisterTargetsOutcomeCallable RegisterTargetsCallable(const RegisterTargetsRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::RegisterTargets, request);
}
/**
* An Async wrapper for RegisterTargets that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RegisterTargetsAsync(const RegisterTargetsRequestT& request, const RegisterTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::RegisterTargets, request, handler, context);
}
/**
* Adds the specified tags to the specified resource.
See Also:
* AWS
* API Reference
*/
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const;
/**
* A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::TagResource, request);
}
/**
* An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::TagResource, request, handler, context);
}
/**
* Removes the specified tags from the specified resource.
See
* Also:
AWS
* API Reference
*/
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const;
/**
* A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::UntagResource, request);
}
/**
* An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::UntagResource, request, handler, context);
}
/**
* Updates the specified access log subscription.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateAccessLogSubscriptionOutcome UpdateAccessLogSubscription(const Model::UpdateAccessLogSubscriptionRequest& request) const;
/**
* A Callable wrapper for UpdateAccessLogSubscription that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateAccessLogSubscriptionOutcomeCallable UpdateAccessLogSubscriptionCallable(const UpdateAccessLogSubscriptionRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::UpdateAccessLogSubscription, request);
}
/**
* An Async wrapper for UpdateAccessLogSubscription that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateAccessLogSubscriptionAsync(const UpdateAccessLogSubscriptionRequestT& request, const UpdateAccessLogSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::UpdateAccessLogSubscription, request, handler, context);
}
/**
* Updates the specified listener for the specified service.
See
* Also:
AWS
* API Reference
*/
virtual Model::UpdateListenerOutcome UpdateListener(const Model::UpdateListenerRequest& request) const;
/**
* A Callable wrapper for UpdateListener that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateListenerOutcomeCallable UpdateListenerCallable(const UpdateListenerRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::UpdateListener, request);
}
/**
* An Async wrapper for UpdateListener that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateListenerAsync(const UpdateListenerRequestT& request, const UpdateListenerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::UpdateListener, request, handler, context);
}
/**
* Updates a rule for the listener. You can't modify a default listener rule. To
* modify a default listener rule, use UpdateListener
.
See
* Also:
AWS
* API Reference
*/
virtual Model::UpdateRuleOutcome UpdateRule(const Model::UpdateRuleRequest& request) const;
/**
* A Callable wrapper for UpdateRule that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateRuleOutcomeCallable UpdateRuleCallable(const UpdateRuleRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::UpdateRule, request);
}
/**
* An Async wrapper for UpdateRule that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateRuleAsync(const UpdateRuleRequestT& request, const UpdateRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::UpdateRule, request, handler, context);
}
/**
* Updates the specified service.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateServiceOutcome UpdateService(const Model::UpdateServiceRequest& request) const;
/**
* A Callable wrapper for UpdateService that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateServiceOutcomeCallable UpdateServiceCallable(const UpdateServiceRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::UpdateService, request);
}
/**
* An Async wrapper for UpdateService that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateServiceAsync(const UpdateServiceRequestT& request, const UpdateServiceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::UpdateService, request, handler, context);
}
/**
* Updates the specified service network.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateServiceNetworkOutcome UpdateServiceNetwork(const Model::UpdateServiceNetworkRequest& request) const;
/**
* A Callable wrapper for UpdateServiceNetwork that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateServiceNetworkOutcomeCallable UpdateServiceNetworkCallable(const UpdateServiceNetworkRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::UpdateServiceNetwork, request);
}
/**
* An Async wrapper for UpdateServiceNetwork that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateServiceNetworkAsync(const UpdateServiceNetworkRequestT& request, const UpdateServiceNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::UpdateServiceNetwork, request, handler, context);
}
/**
* Updates the service network and VPC association. If you add a security group
* to the service network and VPC association, the association must continue to
* always have at least one security group. You can add or edit security groups at
* any time. However, to remove all security groups, you must first delete the
* association and recreate it without security groups.
See Also:
* AWS
* API Reference
*/
virtual Model::UpdateServiceNetworkVpcAssociationOutcome UpdateServiceNetworkVpcAssociation(const Model::UpdateServiceNetworkVpcAssociationRequest& request) const;
/**
* A Callable wrapper for UpdateServiceNetworkVpcAssociation that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateServiceNetworkVpcAssociationOutcomeCallable UpdateServiceNetworkVpcAssociationCallable(const UpdateServiceNetworkVpcAssociationRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::UpdateServiceNetworkVpcAssociation, request);
}
/**
* An Async wrapper for UpdateServiceNetworkVpcAssociation that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateServiceNetworkVpcAssociationAsync(const UpdateServiceNetworkVpcAssociationRequestT& request, const UpdateServiceNetworkVpcAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::UpdateServiceNetworkVpcAssociation, request, handler, context);
}
/**
* Updates the specified target group.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateTargetGroupOutcome UpdateTargetGroup(const Model::UpdateTargetGroupRequest& request) const;
/**
* A Callable wrapper for UpdateTargetGroup that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateTargetGroupOutcomeCallable UpdateTargetGroupCallable(const UpdateTargetGroupRequestT& request) const
{
return SubmitCallable(&VPCLatticeClient::UpdateTargetGroup, request);
}
/**
* An Async wrapper for UpdateTargetGroup that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateTargetGroupAsync(const UpdateTargetGroupRequestT& request, const UpdateTargetGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&VPCLatticeClient::UpdateTargetGroup, request, handler, context);
}
void OverrideEndpoint(const Aws::String& endpoint);
std::shared_ptr& accessEndpointProvider();
private:
friend class Aws::Client::ClientWithAsyncTemplateMethods;
void init(const VPCLatticeClientConfiguration& clientConfiguration);
VPCLatticeClientConfiguration m_clientConfiguration;
std::shared_ptr m_executor;
std::shared_ptr m_endpointProvider;
};
} // namespace VPCLattice
} // namespace Aws