/** * 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 CodeDeploy { /** *

CodeDeploy is a deployment service that automates application deployments to * Amazon EC2 instances, on-premises instances running in your own facility, * serverless Lambda functions, or applications in an Amazon ECS service.

*

You can deploy a nearly unlimited variety of application content, such as an * updated Lambda function, updated applications in an Amazon ECS service, code, * web and configuration files, executables, packages, scripts, multimedia files, * and so on. CodeDeploy can deploy application content stored in Amazon S3 * buckets, GitHub repositories, or Bitbucket repositories. You do not need to make * changes to your existing code before you can use CodeDeploy.

CodeDeploy * makes it easier for you to rapidly release new features, helps you avoid * downtime during application deployment, and handles the complexity of updating * your applications, without many of the risks associated with error-prone manual * deployments.

CodeDeploy Components

Use the information in * this guide to help you work with the following CodeDeploy components:

    *
  • Application: A name that uniquely identifies the application you * want to deploy. CodeDeploy uses this name, which functions as a container, to * ensure the correct combination of revision, deployment configuration, and * deployment group are referenced during a deployment.

  • * Deployment group: A set of individual instances, CodeDeploy Lambda * deployment configuration settings, or an Amazon ECS service and network details. * A Lambda deployment group specifies how to route traffic to a new version of a * Lambda function. An Amazon ECS deployment group specifies the service created in * Amazon ECS to deploy, a load balancer, and a listener to reroute production * traffic to an updated containerized application. An Amazon EC2/On-premises * deployment group contains individually tagged instances, Amazon EC2 instances in * Amazon EC2 Auto Scaling groups, or both. All deployment groups can specify * optional trigger, alarm, and rollback settings.

  • Deployment * configuration: A set of deployment rules and deployment success and failure * conditions used by CodeDeploy during a deployment.

  • * Deployment: The process and the components used when updating a Lambda * function, a containerized application in an Amazon ECS service, or of installing * content on one or more instances.

  • Application * revisions: For an Lambda deployment, this is an AppSpec file that specifies * the Lambda function to be updated and one or more functions to validate * deployment lifecycle events. For an Amazon ECS deployment, this is an AppSpec * file that specifies the Amazon ECS task definition, container, and port where * production traffic is rerouted. For an EC2/On-premises deployment, this is an * archive file that contains source content—source code, webpages, executable * files, and deployment scripts—along with an AppSpec file. Revisions are stored * in Amazon S3 buckets or GitHub repositories. For Amazon S3, a revision is * uniquely identified by its Amazon S3 object key and its ETag, version, or both. * For GitHub, a revision is uniquely identified by its commit ID.

*

This guide also contains information to help you get details about the * instances in your deployments, to make on-premises instances available for * CodeDeploy deployments, to get details about a Lambda function deployment, and * to get details about Amazon ECS service deployments.

CodeDeploy * Information Resources

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

Adds tags to on-premises instances.

See Also:

AWS * API Reference

*/ virtual Model::AddTagsToOnPremisesInstancesOutcome AddTagsToOnPremisesInstances(const Model::AddTagsToOnPremisesInstancesRequest& request) const; /** * A Callable wrapper for AddTagsToOnPremisesInstances that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AddTagsToOnPremisesInstancesOutcomeCallable AddTagsToOnPremisesInstancesCallable(const AddTagsToOnPremisesInstancesRequestT& request) const { return SubmitCallable(&CodeDeployClient::AddTagsToOnPremisesInstances, request); } /** * An Async wrapper for AddTagsToOnPremisesInstances that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AddTagsToOnPremisesInstancesAsync(const AddTagsToOnPremisesInstancesRequestT& request, const AddTagsToOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::AddTagsToOnPremisesInstances, request, handler, context); } /** *

Gets information about one or more application revisions. The maximum number * of application revisions that can be returned is 25.

See Also:

* AWS * API Reference

*/ virtual Model::BatchGetApplicationRevisionsOutcome BatchGetApplicationRevisions(const Model::BatchGetApplicationRevisionsRequest& request) const; /** * A Callable wrapper for BatchGetApplicationRevisions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::BatchGetApplicationRevisionsOutcomeCallable BatchGetApplicationRevisionsCallable(const BatchGetApplicationRevisionsRequestT& request) const { return SubmitCallable(&CodeDeployClient::BatchGetApplicationRevisions, request); } /** * An Async wrapper for BatchGetApplicationRevisions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void BatchGetApplicationRevisionsAsync(const BatchGetApplicationRevisionsRequestT& request, const BatchGetApplicationRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::BatchGetApplicationRevisions, request, handler, context); } /** *

Gets information about one or more applications. The maximum number of * applications that can be returned is 100.

See Also:

AWS * API Reference

*/ virtual Model::BatchGetApplicationsOutcome BatchGetApplications(const Model::BatchGetApplicationsRequest& request) const; /** * A Callable wrapper for BatchGetApplications that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::BatchGetApplicationsOutcomeCallable BatchGetApplicationsCallable(const BatchGetApplicationsRequestT& request) const { return SubmitCallable(&CodeDeployClient::BatchGetApplications, request); } /** * An Async wrapper for BatchGetApplications that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void BatchGetApplicationsAsync(const BatchGetApplicationsRequestT& request, const BatchGetApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::BatchGetApplications, request, handler, context); } /** *

Gets information about one or more deployment groups.

See * Also:

AWS * API Reference

*/ virtual Model::BatchGetDeploymentGroupsOutcome BatchGetDeploymentGroups(const Model::BatchGetDeploymentGroupsRequest& request) const; /** * A Callable wrapper for BatchGetDeploymentGroups that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::BatchGetDeploymentGroupsOutcomeCallable BatchGetDeploymentGroupsCallable(const BatchGetDeploymentGroupsRequestT& request) const { return SubmitCallable(&CodeDeployClient::BatchGetDeploymentGroups, request); } /** * An Async wrapper for BatchGetDeploymentGroups that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void BatchGetDeploymentGroupsAsync(const BatchGetDeploymentGroupsRequestT& request, const BatchGetDeploymentGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::BatchGetDeploymentGroups, request, handler, context); } /** *

Returns an array of one or more targets associated with a deployment. This * method works with all compute types and should be used instead of the deprecated * BatchGetDeploymentInstances. The maximum number of targets that can * be returned is 25.

The type of targets returned depends on the * deployment's compute platform or deployment method:

  • * EC2/On-premises: Information about Amazon EC2 instance targets.

    *
  • Lambda: Information about Lambda functions targets.

    *
  • Amazon ECS: Information about Amazon ECS service targets. *

  • CloudFormation: Information about targets of * blue/green deployments initiated by a CloudFormation stack update.

  • *

See Also:

AWS * API Reference

*/ virtual Model::BatchGetDeploymentTargetsOutcome BatchGetDeploymentTargets(const Model::BatchGetDeploymentTargetsRequest& request) const; /** * A Callable wrapper for BatchGetDeploymentTargets that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::BatchGetDeploymentTargetsOutcomeCallable BatchGetDeploymentTargetsCallable(const BatchGetDeploymentTargetsRequestT& request) const { return SubmitCallable(&CodeDeployClient::BatchGetDeploymentTargets, request); } /** * An Async wrapper for BatchGetDeploymentTargets that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void BatchGetDeploymentTargetsAsync(const BatchGetDeploymentTargetsRequestT& request, const BatchGetDeploymentTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::BatchGetDeploymentTargets, request, handler, context); } /** *

Gets information about one or more deployments. The maximum number of * deployments that can be returned is 25.

See Also:

AWS * API Reference

*/ virtual Model::BatchGetDeploymentsOutcome BatchGetDeployments(const Model::BatchGetDeploymentsRequest& request) const; /** * A Callable wrapper for BatchGetDeployments that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::BatchGetDeploymentsOutcomeCallable BatchGetDeploymentsCallable(const BatchGetDeploymentsRequestT& request) const { return SubmitCallable(&CodeDeployClient::BatchGetDeployments, request); } /** * An Async wrapper for BatchGetDeployments that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void BatchGetDeploymentsAsync(const BatchGetDeploymentsRequestT& request, const BatchGetDeploymentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::BatchGetDeployments, request, handler, context); } /** *

Gets information about one or more on-premises instances. The maximum number * of on-premises instances that can be returned is 25.

See Also:

* AWS * API Reference

*/ virtual Model::BatchGetOnPremisesInstancesOutcome BatchGetOnPremisesInstances(const Model::BatchGetOnPremisesInstancesRequest& request) const; /** * A Callable wrapper for BatchGetOnPremisesInstances that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::BatchGetOnPremisesInstancesOutcomeCallable BatchGetOnPremisesInstancesCallable(const BatchGetOnPremisesInstancesRequestT& request) const { return SubmitCallable(&CodeDeployClient::BatchGetOnPremisesInstances, request); } /** * An Async wrapper for BatchGetOnPremisesInstances that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void BatchGetOnPremisesInstancesAsync(const BatchGetOnPremisesInstancesRequestT& request, const BatchGetOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::BatchGetOnPremisesInstances, request, handler, context); } /** *

For a blue/green deployment, starts the process of rerouting traffic from * instances in the original environment to instances in the replacement * environment without waiting for a specified wait time to elapse. (Traffic * rerouting, which is achieved by registering instances in the replacement * environment with the load balancer, can start as soon as all instances have a * status of Ready.)

See Also:

AWS * API Reference

*/ virtual Model::ContinueDeploymentOutcome ContinueDeployment(const Model::ContinueDeploymentRequest& request) const; /** * A Callable wrapper for ContinueDeployment that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ContinueDeploymentOutcomeCallable ContinueDeploymentCallable(const ContinueDeploymentRequestT& request) const { return SubmitCallable(&CodeDeployClient::ContinueDeployment, request); } /** * An Async wrapper for ContinueDeployment that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ContinueDeploymentAsync(const ContinueDeploymentRequestT& request, const ContinueDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ContinueDeployment, request, handler, context); } /** *

Creates an application.

See Also:

AWS * API Reference

*/ virtual Model::CreateApplicationOutcome CreateApplication(const Model::CreateApplicationRequest& request) const; /** * A Callable wrapper for CreateApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateApplicationOutcomeCallable CreateApplicationCallable(const CreateApplicationRequestT& request) const { return SubmitCallable(&CodeDeployClient::CreateApplication, request); } /** * An Async wrapper for CreateApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateApplicationAsync(const CreateApplicationRequestT& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::CreateApplication, request, handler, context); } /** *

Deploys an application revision through the specified deployment * group.

See Also:

AWS * API Reference

*/ virtual Model::CreateDeploymentOutcome CreateDeployment(const Model::CreateDeploymentRequest& request) const; /** * A Callable wrapper for CreateDeployment that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateDeploymentOutcomeCallable CreateDeploymentCallable(const CreateDeploymentRequestT& request) const { return SubmitCallable(&CodeDeployClient::CreateDeployment, request); } /** * An Async wrapper for CreateDeployment that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateDeploymentAsync(const CreateDeploymentRequestT& request, const CreateDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::CreateDeployment, request, handler, context); } /** *

Creates a deployment configuration.

See Also:

AWS * API Reference

*/ virtual Model::CreateDeploymentConfigOutcome CreateDeploymentConfig(const Model::CreateDeploymentConfigRequest& request) const; /** * A Callable wrapper for CreateDeploymentConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateDeploymentConfigOutcomeCallable CreateDeploymentConfigCallable(const CreateDeploymentConfigRequestT& request) const { return SubmitCallable(&CodeDeployClient::CreateDeploymentConfig, request); } /** * An Async wrapper for CreateDeploymentConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateDeploymentConfigAsync(const CreateDeploymentConfigRequestT& request, const CreateDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::CreateDeploymentConfig, request, handler, context); } /** *

Creates a deployment group to which application revisions are * deployed.

See Also:

AWS * API Reference

*/ virtual Model::CreateDeploymentGroupOutcome CreateDeploymentGroup(const Model::CreateDeploymentGroupRequest& request) const; /** * A Callable wrapper for CreateDeploymentGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateDeploymentGroupOutcomeCallable CreateDeploymentGroupCallable(const CreateDeploymentGroupRequestT& request) const { return SubmitCallable(&CodeDeployClient::CreateDeploymentGroup, request); } /** * An Async wrapper for CreateDeploymentGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateDeploymentGroupAsync(const CreateDeploymentGroupRequestT& request, const CreateDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::CreateDeploymentGroup, request, handler, context); } /** *

Deletes an application.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApplicationOutcome DeleteApplication(const Model::DeleteApplicationRequest& request) const; /** * A Callable wrapper for DeleteApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteApplicationOutcomeCallable DeleteApplicationCallable(const DeleteApplicationRequestT& request) const { return SubmitCallable(&CodeDeployClient::DeleteApplication, request); } /** * An Async wrapper for DeleteApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteApplicationAsync(const DeleteApplicationRequestT& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::DeleteApplication, request, handler, context); } /** *

Deletes a deployment configuration.

A deployment configuration * cannot be deleted if it is currently in use. Predefined configurations cannot be * deleted.

See Also:

AWS * API Reference

*/ virtual Model::DeleteDeploymentConfigOutcome DeleteDeploymentConfig(const Model::DeleteDeploymentConfigRequest& request) const; /** * A Callable wrapper for DeleteDeploymentConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteDeploymentConfigOutcomeCallable DeleteDeploymentConfigCallable(const DeleteDeploymentConfigRequestT& request) const { return SubmitCallable(&CodeDeployClient::DeleteDeploymentConfig, request); } /** * An Async wrapper for DeleteDeploymentConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteDeploymentConfigAsync(const DeleteDeploymentConfigRequestT& request, const DeleteDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::DeleteDeploymentConfig, request, handler, context); } /** *

Deletes a deployment group.

See Also:

AWS * API Reference

*/ virtual Model::DeleteDeploymentGroupOutcome DeleteDeploymentGroup(const Model::DeleteDeploymentGroupRequest& request) const; /** * A Callable wrapper for DeleteDeploymentGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteDeploymentGroupOutcomeCallable DeleteDeploymentGroupCallable(const DeleteDeploymentGroupRequestT& request) const { return SubmitCallable(&CodeDeployClient::DeleteDeploymentGroup, request); } /** * An Async wrapper for DeleteDeploymentGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteDeploymentGroupAsync(const DeleteDeploymentGroupRequestT& request, const DeleteDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::DeleteDeploymentGroup, request, handler, context); } /** *

Deletes a GitHub account connection.

See Also:

AWS * API Reference

*/ virtual Model::DeleteGitHubAccountTokenOutcome DeleteGitHubAccountToken(const Model::DeleteGitHubAccountTokenRequest& request) const; /** * A Callable wrapper for DeleteGitHubAccountToken that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteGitHubAccountTokenOutcomeCallable DeleteGitHubAccountTokenCallable(const DeleteGitHubAccountTokenRequestT& request) const { return SubmitCallable(&CodeDeployClient::DeleteGitHubAccountToken, request); } /** * An Async wrapper for DeleteGitHubAccountToken that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteGitHubAccountTokenAsync(const DeleteGitHubAccountTokenRequestT& request, const DeleteGitHubAccountTokenResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::DeleteGitHubAccountToken, request, handler, context); } /** *

Deletes resources linked to an external ID.

See Also:

AWS * API Reference

*/ virtual Model::DeleteResourcesByExternalIdOutcome DeleteResourcesByExternalId(const Model::DeleteResourcesByExternalIdRequest& request) const; /** * A Callable wrapper for DeleteResourcesByExternalId that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteResourcesByExternalIdOutcomeCallable DeleteResourcesByExternalIdCallable(const DeleteResourcesByExternalIdRequestT& request) const { return SubmitCallable(&CodeDeployClient::DeleteResourcesByExternalId, request); } /** * An Async wrapper for DeleteResourcesByExternalId that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteResourcesByExternalIdAsync(const DeleteResourcesByExternalIdRequestT& request, const DeleteResourcesByExternalIdResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::DeleteResourcesByExternalId, request, handler, context); } /** *

Deregisters an on-premises instance.

See Also:

AWS * API Reference

*/ virtual Model::DeregisterOnPremisesInstanceOutcome DeregisterOnPremisesInstance(const Model::DeregisterOnPremisesInstanceRequest& request) const; /** * A Callable wrapper for DeregisterOnPremisesInstance that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeregisterOnPremisesInstanceOutcomeCallable DeregisterOnPremisesInstanceCallable(const DeregisterOnPremisesInstanceRequestT& request) const { return SubmitCallable(&CodeDeployClient::DeregisterOnPremisesInstance, request); } /** * An Async wrapper for DeregisterOnPremisesInstance that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeregisterOnPremisesInstanceAsync(const DeregisterOnPremisesInstanceRequestT& request, const DeregisterOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::DeregisterOnPremisesInstance, request, handler, context); } /** *

Gets information about an application.

See Also:

AWS * API Reference

*/ virtual Model::GetApplicationOutcome GetApplication(const Model::GetApplicationRequest& request) const; /** * A Callable wrapper for GetApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetApplicationOutcomeCallable GetApplicationCallable(const GetApplicationRequestT& request) const { return SubmitCallable(&CodeDeployClient::GetApplication, request); } /** * An Async wrapper for GetApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetApplicationAsync(const GetApplicationRequestT& request, const GetApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::GetApplication, request, handler, context); } /** *

Gets information about an application revision.

See Also:

AWS * API Reference

*/ virtual Model::GetApplicationRevisionOutcome GetApplicationRevision(const Model::GetApplicationRevisionRequest& request) const; /** * A Callable wrapper for GetApplicationRevision that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetApplicationRevisionOutcomeCallable GetApplicationRevisionCallable(const GetApplicationRevisionRequestT& request) const { return SubmitCallable(&CodeDeployClient::GetApplicationRevision, request); } /** * An Async wrapper for GetApplicationRevision that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetApplicationRevisionAsync(const GetApplicationRevisionRequestT& request, const GetApplicationRevisionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::GetApplicationRevision, request, handler, context); } /** *

Gets information about a deployment.

The content * property of the appSpecContent object in the returned revision is * always null. Use GetApplicationRevision and the sha256 * property of the returned appSpecContent object to get the content * of the deployment’s AppSpec file.

See Also:

AWS * API Reference

*/ virtual Model::GetDeploymentOutcome GetDeployment(const Model::GetDeploymentRequest& request) const; /** * A Callable wrapper for GetDeployment that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetDeploymentOutcomeCallable GetDeploymentCallable(const GetDeploymentRequestT& request) const { return SubmitCallable(&CodeDeployClient::GetDeployment, request); } /** * An Async wrapper for GetDeployment that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetDeploymentAsync(const GetDeploymentRequestT& request, const GetDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::GetDeployment, request, handler, context); } /** *

Gets information about a deployment configuration.

See Also:

* AWS * API Reference

*/ virtual Model::GetDeploymentConfigOutcome GetDeploymentConfig(const Model::GetDeploymentConfigRequest& request) const; /** * A Callable wrapper for GetDeploymentConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetDeploymentConfigOutcomeCallable GetDeploymentConfigCallable(const GetDeploymentConfigRequestT& request) const { return SubmitCallable(&CodeDeployClient::GetDeploymentConfig, request); } /** * An Async wrapper for GetDeploymentConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetDeploymentConfigAsync(const GetDeploymentConfigRequestT& request, const GetDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::GetDeploymentConfig, request, handler, context); } /** *

Gets information about a deployment group.

See Also:

AWS * API Reference

*/ virtual Model::GetDeploymentGroupOutcome GetDeploymentGroup(const Model::GetDeploymentGroupRequest& request) const; /** * A Callable wrapper for GetDeploymentGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetDeploymentGroupOutcomeCallable GetDeploymentGroupCallable(const GetDeploymentGroupRequestT& request) const { return SubmitCallable(&CodeDeployClient::GetDeploymentGroup, request); } /** * An Async wrapper for GetDeploymentGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetDeploymentGroupAsync(const GetDeploymentGroupRequestT& request, const GetDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::GetDeploymentGroup, request, handler, context); } /** *

Returns information about a deployment target.

See Also:

* AWS * API Reference

*/ virtual Model::GetDeploymentTargetOutcome GetDeploymentTarget(const Model::GetDeploymentTargetRequest& request) const; /** * A Callable wrapper for GetDeploymentTarget that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetDeploymentTargetOutcomeCallable GetDeploymentTargetCallable(const GetDeploymentTargetRequestT& request) const { return SubmitCallable(&CodeDeployClient::GetDeploymentTarget, request); } /** * An Async wrapper for GetDeploymentTarget that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetDeploymentTargetAsync(const GetDeploymentTargetRequestT& request, const GetDeploymentTargetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::GetDeploymentTarget, request, handler, context); } /** *

Gets information about an on-premises instance.

See Also:

* AWS * API Reference

*/ virtual Model::GetOnPremisesInstanceOutcome GetOnPremisesInstance(const Model::GetOnPremisesInstanceRequest& request) const; /** * A Callable wrapper for GetOnPremisesInstance that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetOnPremisesInstanceOutcomeCallable GetOnPremisesInstanceCallable(const GetOnPremisesInstanceRequestT& request) const { return SubmitCallable(&CodeDeployClient::GetOnPremisesInstance, request); } /** * An Async wrapper for GetOnPremisesInstance that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetOnPremisesInstanceAsync(const GetOnPremisesInstanceRequestT& request, const GetOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::GetOnPremisesInstance, request, handler, context); } /** *

Lists information about revisions for an application.

See * Also:

AWS * API Reference

*/ virtual Model::ListApplicationRevisionsOutcome ListApplicationRevisions(const Model::ListApplicationRevisionsRequest& request) const; /** * A Callable wrapper for ListApplicationRevisions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListApplicationRevisionsOutcomeCallable ListApplicationRevisionsCallable(const ListApplicationRevisionsRequestT& request) const { return SubmitCallable(&CodeDeployClient::ListApplicationRevisions, request); } /** * An Async wrapper for ListApplicationRevisions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListApplicationRevisionsAsync(const ListApplicationRevisionsRequestT& request, const ListApplicationRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ListApplicationRevisions, request, handler, context); } /** *

Lists the applications registered with the IAM user or Amazon Web Services * account.

See Also:

AWS * API Reference

*/ virtual Model::ListApplicationsOutcome ListApplications(const Model::ListApplicationsRequest& request) const; /** * A Callable wrapper for ListApplications that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListApplicationsOutcomeCallable ListApplicationsCallable(const ListApplicationsRequestT& request) const { return SubmitCallable(&CodeDeployClient::ListApplications, request); } /** * An Async wrapper for ListApplications that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListApplicationsAsync(const ListApplicationsRequestT& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ListApplications, request, handler, context); } /** *

Lists the deployment configurations with the IAM user or Amazon Web Services * account.

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentConfigsOutcome ListDeploymentConfigs(const Model::ListDeploymentConfigsRequest& request) const; /** * A Callable wrapper for ListDeploymentConfigs that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListDeploymentConfigsOutcomeCallable ListDeploymentConfigsCallable(const ListDeploymentConfigsRequestT& request) const { return SubmitCallable(&CodeDeployClient::ListDeploymentConfigs, request); } /** * An Async wrapper for ListDeploymentConfigs that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListDeploymentConfigsAsync(const ListDeploymentConfigsRequestT& request, const ListDeploymentConfigsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ListDeploymentConfigs, request, handler, context); } /** *

Lists the deployment groups for an application registered with the IAM user * or Amazon Web Services account.

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentGroupsOutcome ListDeploymentGroups(const Model::ListDeploymentGroupsRequest& request) const; /** * A Callable wrapper for ListDeploymentGroups that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListDeploymentGroupsOutcomeCallable ListDeploymentGroupsCallable(const ListDeploymentGroupsRequestT& request) const { return SubmitCallable(&CodeDeployClient::ListDeploymentGroups, request); } /** * An Async wrapper for ListDeploymentGroups that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListDeploymentGroupsAsync(const ListDeploymentGroupsRequestT& request, const ListDeploymentGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ListDeploymentGroups, request, handler, context); } /** *

Returns an array of target IDs that are associated a deployment. *

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentTargetsOutcome ListDeploymentTargets(const Model::ListDeploymentTargetsRequest& request) const; /** * A Callable wrapper for ListDeploymentTargets that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListDeploymentTargetsOutcomeCallable ListDeploymentTargetsCallable(const ListDeploymentTargetsRequestT& request) const { return SubmitCallable(&CodeDeployClient::ListDeploymentTargets, request); } /** * An Async wrapper for ListDeploymentTargets that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListDeploymentTargetsAsync(const ListDeploymentTargetsRequestT& request, const ListDeploymentTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ListDeploymentTargets, request, handler, context); } /** *

Lists the deployments in a deployment group for an application registered * with the IAM user or Amazon Web Services account.

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentsOutcome ListDeployments(const Model::ListDeploymentsRequest& request) const; /** * A Callable wrapper for ListDeployments that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListDeploymentsOutcomeCallable ListDeploymentsCallable(const ListDeploymentsRequestT& request) const { return SubmitCallable(&CodeDeployClient::ListDeployments, request); } /** * An Async wrapper for ListDeployments that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListDeploymentsAsync(const ListDeploymentsRequestT& request, const ListDeploymentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ListDeployments, request, handler, context); } /** *

Lists the names of stored connections to GitHub accounts.

See * Also:

AWS * API Reference

*/ virtual Model::ListGitHubAccountTokenNamesOutcome ListGitHubAccountTokenNames(const Model::ListGitHubAccountTokenNamesRequest& request) const; /** * A Callable wrapper for ListGitHubAccountTokenNames that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListGitHubAccountTokenNamesOutcomeCallable ListGitHubAccountTokenNamesCallable(const ListGitHubAccountTokenNamesRequestT& request) const { return SubmitCallable(&CodeDeployClient::ListGitHubAccountTokenNames, request); } /** * An Async wrapper for ListGitHubAccountTokenNames that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListGitHubAccountTokenNamesAsync(const ListGitHubAccountTokenNamesRequestT& request, const ListGitHubAccountTokenNamesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ListGitHubAccountTokenNames, request, handler, context); } /** *

Gets a list of names for one or more on-premises instances.

Unless * otherwise specified, both registered and deregistered on-premises instance names * are listed. To list only registered or deregistered on-premises instance names, * use the registration status parameter.

See Also:

AWS * API Reference

*/ virtual Model::ListOnPremisesInstancesOutcome ListOnPremisesInstances(const Model::ListOnPremisesInstancesRequest& request) const; /** * A Callable wrapper for ListOnPremisesInstances that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListOnPremisesInstancesOutcomeCallable ListOnPremisesInstancesCallable(const ListOnPremisesInstancesRequestT& request) const { return SubmitCallable(&CodeDeployClient::ListOnPremisesInstances, request); } /** * An Async wrapper for ListOnPremisesInstances that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListOnPremisesInstancesAsync(const ListOnPremisesInstancesRequestT& request, const ListOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::ListOnPremisesInstances, request, handler, context); } /** *

Returns a list of tags for the resource identified by a specified Amazon * Resource Name (ARN). Tags are used to organize and categorize your CodeDeploy * resources.

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(&CodeDeployClient::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(&CodeDeployClient::ListTagsForResource, request, handler, context); } /** *

Sets the result of a Lambda validation function. The function validates * lifecycle hooks during a deployment that uses the Lambda or Amazon ECS compute * platform. For Lambda deployments, the available lifecycle hooks are * BeforeAllowTraffic and AfterAllowTraffic. For Amazon * ECS deployments, the available lifecycle hooks are BeforeInstall, * AfterInstall, AfterAllowTestTraffic, * BeforeAllowTraffic, and AfterAllowTraffic. Lambda * validation functions return Succeeded or Failed. For * more information, see AppSpec * 'hooks' Section for an Lambda Deployment and AppSpec * 'hooks' Section for an Amazon ECS Deployment.

See Also:

AWS * API Reference

*/ virtual Model::PutLifecycleEventHookExecutionStatusOutcome PutLifecycleEventHookExecutionStatus(const Model::PutLifecycleEventHookExecutionStatusRequest& request) const; /** * A Callable wrapper for PutLifecycleEventHookExecutionStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutLifecycleEventHookExecutionStatusOutcomeCallable PutLifecycleEventHookExecutionStatusCallable(const PutLifecycleEventHookExecutionStatusRequestT& request) const { return SubmitCallable(&CodeDeployClient::PutLifecycleEventHookExecutionStatus, request); } /** * An Async wrapper for PutLifecycleEventHookExecutionStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutLifecycleEventHookExecutionStatusAsync(const PutLifecycleEventHookExecutionStatusRequestT& request, const PutLifecycleEventHookExecutionStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::PutLifecycleEventHookExecutionStatus, request, handler, context); } /** *

Registers with CodeDeploy a revision for the specified * application.

See Also:

AWS * API Reference

*/ virtual Model::RegisterApplicationRevisionOutcome RegisterApplicationRevision(const Model::RegisterApplicationRevisionRequest& request) const; /** * A Callable wrapper for RegisterApplicationRevision that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RegisterApplicationRevisionOutcomeCallable RegisterApplicationRevisionCallable(const RegisterApplicationRevisionRequestT& request) const { return SubmitCallable(&CodeDeployClient::RegisterApplicationRevision, request); } /** * An Async wrapper for RegisterApplicationRevision that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RegisterApplicationRevisionAsync(const RegisterApplicationRevisionRequestT& request, const RegisterApplicationRevisionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::RegisterApplicationRevision, request, handler, context); } /** *

Registers an on-premises instance.

Only one IAM ARN (an IAM * session ARN or IAM user ARN) is supported in the request. You cannot use * both.

See Also:

AWS * API Reference

*/ virtual Model::RegisterOnPremisesInstanceOutcome RegisterOnPremisesInstance(const Model::RegisterOnPremisesInstanceRequest& request) const; /** * A Callable wrapper for RegisterOnPremisesInstance that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RegisterOnPremisesInstanceOutcomeCallable RegisterOnPremisesInstanceCallable(const RegisterOnPremisesInstanceRequestT& request) const { return SubmitCallable(&CodeDeployClient::RegisterOnPremisesInstance, request); } /** * An Async wrapper for RegisterOnPremisesInstance that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RegisterOnPremisesInstanceAsync(const RegisterOnPremisesInstanceRequestT& request, const RegisterOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::RegisterOnPremisesInstance, request, handler, context); } /** *

Removes one or more tags from one or more on-premises * instances.

See Also:

AWS * API Reference

*/ virtual Model::RemoveTagsFromOnPremisesInstancesOutcome RemoveTagsFromOnPremisesInstances(const Model::RemoveTagsFromOnPremisesInstancesRequest& request) const; /** * A Callable wrapper for RemoveTagsFromOnPremisesInstances that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RemoveTagsFromOnPremisesInstancesOutcomeCallable RemoveTagsFromOnPremisesInstancesCallable(const RemoveTagsFromOnPremisesInstancesRequestT& request) const { return SubmitCallable(&CodeDeployClient::RemoveTagsFromOnPremisesInstances, request); } /** * An Async wrapper for RemoveTagsFromOnPremisesInstances that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RemoveTagsFromOnPremisesInstancesAsync(const RemoveTagsFromOnPremisesInstancesRequestT& request, const RemoveTagsFromOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::RemoveTagsFromOnPremisesInstances, request, handler, context); } /** *

Attempts to stop an ongoing deployment.

See Also:

AWS * API Reference

*/ virtual Model::StopDeploymentOutcome StopDeployment(const Model::StopDeploymentRequest& request) const; /** * A Callable wrapper for StopDeployment that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StopDeploymentOutcomeCallable StopDeploymentCallable(const StopDeploymentRequestT& request) const { return SubmitCallable(&CodeDeployClient::StopDeployment, request); } /** * An Async wrapper for StopDeployment that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StopDeploymentAsync(const StopDeploymentRequestT& request, const StopDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::StopDeployment, request, handler, context); } /** *

Associates the list of tags in the input Tags parameter with * the resource identified by the ResourceArn input parameter. *

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(&CodeDeployClient::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(&CodeDeployClient::TagResource, request, handler, context); } /** *

Disassociates a resource from a list of tags. The resource is identified by * the ResourceArn input parameter. The tags are identified by the * list of keys in the TagKeys input parameter.

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(&CodeDeployClient::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(&CodeDeployClient::UntagResource, request, handler, context); } /** *

Changes the name of an application.

See Also:

AWS * API Reference

*/ virtual Model::UpdateApplicationOutcome UpdateApplication(const Model::UpdateApplicationRequest& request) const; /** * A Callable wrapper for UpdateApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateApplicationOutcomeCallable UpdateApplicationCallable(const UpdateApplicationRequestT& request) const { return SubmitCallable(&CodeDeployClient::UpdateApplication, request); } /** * An Async wrapper for UpdateApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateApplicationAsync(const UpdateApplicationRequestT& request, const UpdateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::UpdateApplication, request, handler, context); } /** *

Changes information about a deployment group.

See Also:

AWS * API Reference

*/ virtual Model::UpdateDeploymentGroupOutcome UpdateDeploymentGroup(const Model::UpdateDeploymentGroupRequest& request) const; /** * A Callable wrapper for UpdateDeploymentGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateDeploymentGroupOutcomeCallable UpdateDeploymentGroupCallable(const UpdateDeploymentGroupRequestT& request) const { return SubmitCallable(&CodeDeployClient::UpdateDeploymentGroup, request); } /** * An Async wrapper for UpdateDeploymentGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateDeploymentGroupAsync(const UpdateDeploymentGroupRequestT& request, const UpdateDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodeDeployClient::UpdateDeploymentGroup, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const CodeDeployClientConfiguration& clientConfiguration); CodeDeployClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace CodeDeploy } // namespace Aws