/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Http { class HttpClient; class HttpClientFactory; } // namespace Http namespace Utils { template< typename R, typename E> class Outcome; namespace Threading { class Executor; } // namespace Threading } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace AppConfig { namespace Model { class CreateApplicationRequest; class CreateConfigurationProfileRequest; class CreateDeploymentStrategyRequest; class CreateEnvironmentRequest; class CreateHostedConfigurationVersionRequest; class DeleteApplicationRequest; class DeleteConfigurationProfileRequest; class DeleteDeploymentStrategyRequest; class DeleteEnvironmentRequest; class DeleteHostedConfigurationVersionRequest; class GetApplicationRequest; class GetConfigurationRequest; class GetConfigurationProfileRequest; class GetDeploymentRequest; class GetDeploymentStrategyRequest; class GetEnvironmentRequest; class GetHostedConfigurationVersionRequest; class ListApplicationsRequest; class ListConfigurationProfilesRequest; class ListDeploymentStrategiesRequest; class ListDeploymentsRequest; class ListEnvironmentsRequest; class ListHostedConfigurationVersionsRequest; class ListTagsForResourceRequest; class StartDeploymentRequest; class StopDeploymentRequest; class TagResourceRequest; class UntagResourceRequest; class UpdateApplicationRequest; class UpdateConfigurationProfileRequest; class UpdateDeploymentStrategyRequest; class UpdateEnvironmentRequest; class ValidateConfigurationRequest; typedef Aws::Utils::Outcome CreateApplicationOutcome; typedef Aws::Utils::Outcome CreateConfigurationProfileOutcome; typedef Aws::Utils::Outcome CreateDeploymentStrategyOutcome; typedef Aws::Utils::Outcome CreateEnvironmentOutcome; typedef Aws::Utils::Outcome CreateHostedConfigurationVersionOutcome; typedef Aws::Utils::Outcome DeleteApplicationOutcome; typedef Aws::Utils::Outcome DeleteConfigurationProfileOutcome; typedef Aws::Utils::Outcome DeleteDeploymentStrategyOutcome; typedef Aws::Utils::Outcome DeleteEnvironmentOutcome; typedef Aws::Utils::Outcome DeleteHostedConfigurationVersionOutcome; typedef Aws::Utils::Outcome GetApplicationOutcome; typedef Aws::Utils::Outcome GetConfigurationOutcome; typedef Aws::Utils::Outcome GetConfigurationProfileOutcome; typedef Aws::Utils::Outcome GetDeploymentOutcome; typedef Aws::Utils::Outcome GetDeploymentStrategyOutcome; typedef Aws::Utils::Outcome GetEnvironmentOutcome; typedef Aws::Utils::Outcome GetHostedConfigurationVersionOutcome; typedef Aws::Utils::Outcome ListApplicationsOutcome; typedef Aws::Utils::Outcome ListConfigurationProfilesOutcome; typedef Aws::Utils::Outcome ListDeploymentStrategiesOutcome; typedef Aws::Utils::Outcome ListDeploymentsOutcome; typedef Aws::Utils::Outcome ListEnvironmentsOutcome; typedef Aws::Utils::Outcome ListHostedConfigurationVersionsOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome StartDeploymentOutcome; typedef Aws::Utils::Outcome StopDeploymentOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateApplicationOutcome; typedef Aws::Utils::Outcome UpdateConfigurationProfileOutcome; typedef Aws::Utils::Outcome UpdateDeploymentStrategyOutcome; typedef Aws::Utils::Outcome UpdateEnvironmentOutcome; typedef Aws::Utils::Outcome ValidateConfigurationOutcome; typedef std::future CreateApplicationOutcomeCallable; typedef std::future CreateConfigurationProfileOutcomeCallable; typedef std::future CreateDeploymentStrategyOutcomeCallable; typedef std::future CreateEnvironmentOutcomeCallable; typedef std::future CreateHostedConfigurationVersionOutcomeCallable; typedef std::future DeleteApplicationOutcomeCallable; typedef std::future DeleteConfigurationProfileOutcomeCallable; typedef std::future DeleteDeploymentStrategyOutcomeCallable; typedef std::future DeleteEnvironmentOutcomeCallable; typedef std::future DeleteHostedConfigurationVersionOutcomeCallable; typedef std::future GetApplicationOutcomeCallable; typedef std::future GetConfigurationOutcomeCallable; typedef std::future GetConfigurationProfileOutcomeCallable; typedef std::future GetDeploymentOutcomeCallable; typedef std::future GetDeploymentStrategyOutcomeCallable; typedef std::future GetEnvironmentOutcomeCallable; typedef std::future GetHostedConfigurationVersionOutcomeCallable; typedef std::future ListApplicationsOutcomeCallable; typedef std::future ListConfigurationProfilesOutcomeCallable; typedef std::future ListDeploymentStrategiesOutcomeCallable; typedef std::future ListDeploymentsOutcomeCallable; typedef std::future ListEnvironmentsOutcomeCallable; typedef std::future ListHostedConfigurationVersionsOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future StartDeploymentOutcomeCallable; typedef std::future StopDeploymentOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateApplicationOutcomeCallable; typedef std::future UpdateConfigurationProfileOutcomeCallable; typedef std::future UpdateDeploymentStrategyOutcomeCallable; typedef std::future UpdateEnvironmentOutcomeCallable; typedef std::future ValidateConfigurationOutcomeCallable; } // namespace Model class AppConfigClient; typedef std::function&) > CreateApplicationResponseReceivedHandler; typedef std::function&) > CreateConfigurationProfileResponseReceivedHandler; typedef std::function&) > CreateDeploymentStrategyResponseReceivedHandler; typedef std::function&) > CreateEnvironmentResponseReceivedHandler; typedef std::function&) > CreateHostedConfigurationVersionResponseReceivedHandler; typedef std::function&) > DeleteApplicationResponseReceivedHandler; typedef std::function&) > DeleteConfigurationProfileResponseReceivedHandler; typedef std::function&) > DeleteDeploymentStrategyResponseReceivedHandler; typedef std::function&) > DeleteEnvironmentResponseReceivedHandler; typedef std::function&) > DeleteHostedConfigurationVersionResponseReceivedHandler; typedef std::function&) > GetApplicationResponseReceivedHandler; typedef std::function&) > GetConfigurationResponseReceivedHandler; typedef std::function&) > GetConfigurationProfileResponseReceivedHandler; typedef std::function&) > GetDeploymentResponseReceivedHandler; typedef std::function&) > GetDeploymentStrategyResponseReceivedHandler; typedef std::function&) > GetEnvironmentResponseReceivedHandler; typedef std::function&) > GetHostedConfigurationVersionResponseReceivedHandler; typedef std::function&) > ListApplicationsResponseReceivedHandler; typedef std::function&) > ListConfigurationProfilesResponseReceivedHandler; typedef std::function&) > ListDeploymentStrategiesResponseReceivedHandler; typedef std::function&) > ListDeploymentsResponseReceivedHandler; typedef std::function&) > ListEnvironmentsResponseReceivedHandler; typedef std::function&) > ListHostedConfigurationVersionsResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > StartDeploymentResponseReceivedHandler; typedef std::function&) > StopDeploymentResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateApplicationResponseReceivedHandler; typedef std::function&) > UpdateConfigurationProfileResponseReceivedHandler; typedef std::function&) > UpdateDeploymentStrategyResponseReceivedHandler; typedef std::function&) > UpdateEnvironmentResponseReceivedHandler; typedef std::function&) > ValidateConfigurationResponseReceivedHandler; /** * AWS AppConfig

Use AWS AppConfig, a capability of AWS * Systems Manager, to create, manage, and quickly deploy application * configurations. AppConfig supports controlled deployments to applications of any * size and includes built-in validation checks and monitoring. You can use * AppConfig with applications hosted on Amazon EC2 instances, AWS Lambda, * containers, mobile applications, or IoT devices.

To prevent errors when * deploying application configurations, especially for production systems where a * simple typo could cause an unexpected outage, AppConfig includes validators. A * validator provides a syntactic or semantic check to ensure that the * configuration you want to deploy works as intended. To validate your application * configuration data, you provide a schema or a Lambda function that runs against * the configuration. The configuration deployment or update can only proceed when * the configuration data is valid.

During a configuration deployment, * AppConfig monitors the application to ensure that the deployment is successful. * If the system encounters an error, AppConfig rolls back the change to minimize * impact for your application users. You can configure a deployment strategy for * each application or environment that includes deployment criteria, including * velocity, bake time, and alarms to monitor. Similar to error monitoring, if a * deployment triggers an alarm, AppConfig automatically rolls back to the previous * version.

AppConfig supports multiple use cases. Here are some * examples.

  • Application tuning: Use AppConfig to * carefully introduce changes to your application that can only be tested with * production traffic.

  • Feature toggle: Use AppConfig to * turn on new features that require a timely deployment, such as a product launch * or announcement.

  • Allow list: Use AppConfig to allow * premium subscribers to access paid content.

  • Operational * issues: Use AppConfig to reduce stress on your application when a dependency * or other external factor impacts the system.

This reference * is intended to be used with the AWS * AppConfig User Guide.

*/ class AWS_APPCONFIG_API AppConfigClient : public Aws::Client::AWSJsonClient { public: typedef Aws::Client::AWSJsonClient BASECLASS; /** * 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. */ AppConfigClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::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. */ AppConfigClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::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 */ AppConfigClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); virtual ~AppConfigClient(); /** *

An application in AppConfig is a logical unit of code that provides * capabilities for your customers. For example, an application can be a * microservice that runs on Amazon EC2 instances, a mobile application installed * by your users, a serverless application using Amazon API Gateway and AWS Lambda, * or any system you run on behalf of others.

See Also:

AWS * API Reference

*/ virtual Model::CreateApplicationOutcome CreateApplication(const Model::CreateApplicationRequest& request) const; /** *

An application in AppConfig is a logical unit of code that provides * capabilities for your customers. For example, an application can be a * microservice that runs on Amazon EC2 instances, a mobile application installed * by your users, a serverless application using Amazon API Gateway and AWS Lambda, * or any system you run on behalf of others.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateApplicationOutcomeCallable CreateApplicationCallable(const Model::CreateApplicationRequest& request) const; /** *

An application in AppConfig is a logical unit of code that provides * capabilities for your customers. For example, an application can be a * microservice that runs on Amazon EC2 instances, a mobile application installed * by your users, a serverless application using Amazon API Gateway and AWS Lambda, * or any system you run on behalf of others.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateApplicationAsync(const Model::CreateApplicationRequest& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Information that enables AppConfig to access the configuration source. Valid * configuration sources include Systems Manager (SSM) documents, SSM Parameter * Store parameters, and Amazon S3 objects. A configuration profile includes the * following information.

  • The Uri location of the configuration * data.

  • The AWS Identity and Access Management (IAM) role that * provides access to the configuration data.

  • A validator for the * configuration data. Available validators include either a JSON Schema or an AWS * Lambda function.

For more information, see Create * a Configuration and a Configuration Profile in the AWS AppConfig User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateConfigurationProfileOutcome CreateConfigurationProfile(const Model::CreateConfigurationProfileRequest& request) const; /** *

Information that enables AppConfig to access the configuration source. Valid * configuration sources include Systems Manager (SSM) documents, SSM Parameter * Store parameters, and Amazon S3 objects. A configuration profile includes the * following information.

  • The Uri location of the configuration * data.

  • The AWS Identity and Access Management (IAM) role that * provides access to the configuration data.

  • A validator for the * configuration data. Available validators include either a JSON Schema or an AWS * Lambda function.

For more information, see Create * a Configuration and a Configuration Profile in the AWS AppConfig User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateConfigurationProfileOutcomeCallable CreateConfigurationProfileCallable(const Model::CreateConfigurationProfileRequest& request) const; /** *

Information that enables AppConfig to access the configuration source. Valid * configuration sources include Systems Manager (SSM) documents, SSM Parameter * Store parameters, and Amazon S3 objects. A configuration profile includes the * following information.

  • The Uri location of the configuration * data.

  • The AWS Identity and Access Management (IAM) role that * provides access to the configuration data.

  • A validator for the * configuration data. Available validators include either a JSON Schema or an AWS * Lambda function.

For more information, see Create * a Configuration and a Configuration Profile in the AWS AppConfig User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateConfigurationProfileAsync(const Model::CreateConfigurationProfileRequest& request, const CreateConfigurationProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

A deployment strategy defines important criteria for rolling out your * configuration to the designated targets. A deployment strategy includes: the * overall duration required, a percentage of targets to receive the deployment * during each interval, an algorithm that defines how percentage grows, and bake * time.

See Also:

AWS * API Reference

*/ virtual Model::CreateDeploymentStrategyOutcome CreateDeploymentStrategy(const Model::CreateDeploymentStrategyRequest& request) const; /** *

A deployment strategy defines important criteria for rolling out your * configuration to the designated targets. A deployment strategy includes: the * overall duration required, a percentage of targets to receive the deployment * during each interval, an algorithm that defines how percentage grows, and bake * time.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateDeploymentStrategyOutcomeCallable CreateDeploymentStrategyCallable(const Model::CreateDeploymentStrategyRequest& request) const; /** *

A deployment strategy defines important criteria for rolling out your * configuration to the designated targets. A deployment strategy includes: the * overall duration required, a percentage of targets to receive the deployment * during each interval, an algorithm that defines how percentage grows, and bake * time.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateDeploymentStrategyAsync(const Model::CreateDeploymentStrategyRequest& request, const CreateDeploymentStrategyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

For each application, you define one or more environments. An environment is * a logical deployment group of AppConfig targets, such as applications in a * Beta or Production environment. You can also define * environments for application subcomponents such as the Web, * Mobile and Back-end components for your application. * You can configure Amazon CloudWatch alarms for each environment. The system * monitors alarms during a configuration deployment. If an alarm is triggered, the * system rolls back the configuration.

See Also:

AWS * API Reference

*/ virtual Model::CreateEnvironmentOutcome CreateEnvironment(const Model::CreateEnvironmentRequest& request) const; /** *

For each application, you define one or more environments. An environment is * a logical deployment group of AppConfig targets, such as applications in a * Beta or Production environment. You can also define * environments for application subcomponents such as the Web, * Mobile and Back-end components for your application. * You can configure Amazon CloudWatch alarms for each environment. The system * monitors alarms during a configuration deployment. If an alarm is triggered, the * system rolls back the configuration.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateEnvironmentOutcomeCallable CreateEnvironmentCallable(const Model::CreateEnvironmentRequest& request) const; /** *

For each application, you define one or more environments. An environment is * a logical deployment group of AppConfig targets, such as applications in a * Beta or Production environment. You can also define * environments for application subcomponents such as the Web, * Mobile and Back-end components for your application. * You can configure Amazon CloudWatch alarms for each environment. The system * monitors alarms during a configuration deployment. If an alarm is triggered, the * system rolls back the configuration.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateEnvironmentAsync(const Model::CreateEnvironmentRequest& request, const CreateEnvironmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Create a new configuration in the AppConfig configuration * store.

See Also:

AWS * API Reference

*/ virtual Model::CreateHostedConfigurationVersionOutcome CreateHostedConfigurationVersion(const Model::CreateHostedConfigurationVersionRequest& request) const; /** *

Create a new configuration in the AppConfig configuration * store.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateHostedConfigurationVersionOutcomeCallable CreateHostedConfigurationVersionCallable(const Model::CreateHostedConfigurationVersionRequest& request) const; /** *

Create a new configuration in the AppConfig configuration * store.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateHostedConfigurationVersionAsync(const Model::CreateHostedConfigurationVersionRequest& request, const CreateHostedConfigurationVersionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Delete an application. Deleting an application does not delete a * configuration from a host.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApplicationOutcome DeleteApplication(const Model::DeleteApplicationRequest& request) const; /** *

Delete an application. Deleting an application does not delete a * configuration from a host.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteApplicationOutcomeCallable DeleteApplicationCallable(const Model::DeleteApplicationRequest& request) const; /** *

Delete an application. Deleting an application does not delete a * configuration from a host.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteApplicationAsync(const Model::DeleteApplicationRequest& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Delete a configuration profile. Deleting a configuration profile does not * delete a configuration from a host.

See Also:

AWS * API Reference

*/ virtual Model::DeleteConfigurationProfileOutcome DeleteConfigurationProfile(const Model::DeleteConfigurationProfileRequest& request) const; /** *

Delete a configuration profile. Deleting a configuration profile does not * delete a configuration from a host.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteConfigurationProfileOutcomeCallable DeleteConfigurationProfileCallable(const Model::DeleteConfigurationProfileRequest& request) const; /** *

Delete a configuration profile. Deleting a configuration profile does not * delete a configuration from a host.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteConfigurationProfileAsync(const Model::DeleteConfigurationProfileRequest& request, const DeleteConfigurationProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Delete a deployment strategy. Deleting a deployment strategy does not delete * a configuration from a host.

See Also:

AWS * API Reference

*/ virtual Model::DeleteDeploymentStrategyOutcome DeleteDeploymentStrategy(const Model::DeleteDeploymentStrategyRequest& request) const; /** *

Delete a deployment strategy. Deleting a deployment strategy does not delete * a configuration from a host.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteDeploymentStrategyOutcomeCallable DeleteDeploymentStrategyCallable(const Model::DeleteDeploymentStrategyRequest& request) const; /** *

Delete a deployment strategy. Deleting a deployment strategy does not delete * a configuration from a host.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteDeploymentStrategyAsync(const Model::DeleteDeploymentStrategyRequest& request, const DeleteDeploymentStrategyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Delete an environment. Deleting an environment does not delete a * configuration from a host.

See Also:

AWS * API Reference

*/ virtual Model::DeleteEnvironmentOutcome DeleteEnvironment(const Model::DeleteEnvironmentRequest& request) const; /** *

Delete an environment. Deleting an environment does not delete a * configuration from a host.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteEnvironmentOutcomeCallable DeleteEnvironmentCallable(const Model::DeleteEnvironmentRequest& request) const; /** *

Delete an environment. Deleting an environment does not delete a * configuration from a host.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteEnvironmentAsync(const Model::DeleteEnvironmentRequest& request, const DeleteEnvironmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Delete a version of a configuration from the AppConfig configuration * store.

See Also:

AWS * API Reference

*/ virtual Model::DeleteHostedConfigurationVersionOutcome DeleteHostedConfigurationVersion(const Model::DeleteHostedConfigurationVersionRequest& request) const; /** *

Delete a version of a configuration from the AppConfig configuration * store.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteHostedConfigurationVersionOutcomeCallable DeleteHostedConfigurationVersionCallable(const Model::DeleteHostedConfigurationVersionRequest& request) const; /** *

Delete a version of a configuration from the AppConfig configuration * store.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteHostedConfigurationVersionAsync(const Model::DeleteHostedConfigurationVersionRequest& request, const DeleteHostedConfigurationVersionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieve information about an application.

See Also:

AWS * API Reference

*/ virtual Model::GetApplicationOutcome GetApplication(const Model::GetApplicationRequest& request) const; /** *

Retrieve information about an application.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetApplicationOutcomeCallable GetApplicationCallable(const Model::GetApplicationRequest& request) const; /** *

Retrieve information about an application.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetApplicationAsync(const Model::GetApplicationRequest& request, const GetApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Receive information about a configuration.

AWS AppConfig * uses the value of the ClientConfigurationVersion parameter to * identify the configuration version on your clients. If you don’t send * ClientConfigurationVersion with each call to * GetConfiguration, your clients receive the current configuration. * You are charged each time your clients receive a configuration.

To avoid * excess charges, we recommend that you include the * ClientConfigurationVersion value with every call to * GetConfiguration. This value must be saved on your client. * Subsequent calls to GetConfiguration must pass this value by using * the ClientConfigurationVersion parameter.

*

See Also:

AWS * API Reference

*/ virtual Model::GetConfigurationOutcome GetConfiguration(const Model::GetConfigurationRequest& request) const; /** *

Receive information about a configuration.

AWS AppConfig * uses the value of the ClientConfigurationVersion parameter to * identify the configuration version on your clients. If you don’t send * ClientConfigurationVersion with each call to * GetConfiguration, your clients receive the current configuration. * You are charged each time your clients receive a configuration.

To avoid * excess charges, we recommend that you include the * ClientConfigurationVersion value with every call to * GetConfiguration. This value must be saved on your client. * Subsequent calls to GetConfiguration must pass this value by using * the ClientConfigurationVersion parameter.

*

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetConfigurationOutcomeCallable GetConfigurationCallable(const Model::GetConfigurationRequest& request) const; /** *

Receive information about a configuration.

AWS AppConfig * uses the value of the ClientConfigurationVersion parameter to * identify the configuration version on your clients. If you don’t send * ClientConfigurationVersion with each call to * GetConfiguration, your clients receive the current configuration. * You are charged each time your clients receive a configuration.

To avoid * excess charges, we recommend that you include the * ClientConfigurationVersion value with every call to * GetConfiguration. This value must be saved on your client. * Subsequent calls to GetConfiguration must pass this value by using * the ClientConfigurationVersion parameter.

*

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetConfigurationAsync(const Model::GetConfigurationRequest& request, const GetConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieve information about a configuration profile.

See Also:

* AWS * API Reference

*/ virtual Model::GetConfigurationProfileOutcome GetConfigurationProfile(const Model::GetConfigurationProfileRequest& request) const; /** *

Retrieve information about a configuration profile.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetConfigurationProfileOutcomeCallable GetConfigurationProfileCallable(const Model::GetConfigurationProfileRequest& request) const; /** *

Retrieve information about a configuration profile.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetConfigurationProfileAsync(const Model::GetConfigurationProfileRequest& request, const GetConfigurationProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieve information about a configuration deployment.

See * Also:

AWS * API Reference

*/ virtual Model::GetDeploymentOutcome GetDeployment(const Model::GetDeploymentRequest& request) const; /** *

Retrieve information about a configuration deployment.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDeploymentOutcomeCallable GetDeploymentCallable(const Model::GetDeploymentRequest& request) const; /** *

Retrieve information about a configuration deployment.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDeploymentAsync(const Model::GetDeploymentRequest& request, const GetDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieve information about a deployment strategy. A deployment strategy * defines important criteria for rolling out your configuration to the designated * targets. A deployment strategy includes: the overall duration required, a * percentage of targets to receive the deployment during each interval, an * algorithm that defines how percentage grows, and bake time.

See * Also:

AWS * API Reference

*/ virtual Model::GetDeploymentStrategyOutcome GetDeploymentStrategy(const Model::GetDeploymentStrategyRequest& request) const; /** *

Retrieve information about a deployment strategy. A deployment strategy * defines important criteria for rolling out your configuration to the designated * targets. A deployment strategy includes: the overall duration required, a * percentage of targets to receive the deployment during each interval, an * algorithm that defines how percentage grows, and bake time.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDeploymentStrategyOutcomeCallable GetDeploymentStrategyCallable(const Model::GetDeploymentStrategyRequest& request) const; /** *

Retrieve information about a deployment strategy. A deployment strategy * defines important criteria for rolling out your configuration to the designated * targets. A deployment strategy includes: the overall duration required, a * percentage of targets to receive the deployment during each interval, an * algorithm that defines how percentage grows, and bake time.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDeploymentStrategyAsync(const Model::GetDeploymentStrategyRequest& request, const GetDeploymentStrategyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieve information about an environment. An environment is a logical * deployment group of AppConfig applications, such as applications in a * Production environment or in an EU_Region environment. * Each configuration deployment targets an environment. You can enable one or more * Amazon CloudWatch alarms for an environment. If an alarm is triggered during a * deployment, AppConfig roles back the configuration.

See Also:

* AWS * API Reference

*/ virtual Model::GetEnvironmentOutcome GetEnvironment(const Model::GetEnvironmentRequest& request) const; /** *

Retrieve information about an environment. An environment is a logical * deployment group of AppConfig applications, such as applications in a * Production environment or in an EU_Region environment. * Each configuration deployment targets an environment. You can enable one or more * Amazon CloudWatch alarms for an environment. If an alarm is triggered during a * deployment, AppConfig roles back the configuration.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetEnvironmentOutcomeCallable GetEnvironmentCallable(const Model::GetEnvironmentRequest& request) const; /** *

Retrieve information about an environment. An environment is a logical * deployment group of AppConfig applications, such as applications in a * Production environment or in an EU_Region environment. * Each configuration deployment targets an environment. You can enable one or more * Amazon CloudWatch alarms for an environment. If an alarm is triggered during a * deployment, AppConfig roles back the configuration.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetEnvironmentAsync(const Model::GetEnvironmentRequest& request, const GetEnvironmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Get information about a specific configuration version.

See * Also:

AWS * API Reference

*/ virtual Model::GetHostedConfigurationVersionOutcome GetHostedConfigurationVersion(const Model::GetHostedConfigurationVersionRequest& request) const; /** *

Get information about a specific configuration version.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetHostedConfigurationVersionOutcomeCallable GetHostedConfigurationVersionCallable(const Model::GetHostedConfigurationVersionRequest& request) const; /** *

Get information about a specific configuration version.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetHostedConfigurationVersionAsync(const Model::GetHostedConfigurationVersionRequest& request, const GetHostedConfigurationVersionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

List all applications in your AWS account.

See Also:

AWS * API Reference

*/ virtual Model::ListApplicationsOutcome ListApplications(const Model::ListApplicationsRequest& request) const; /** *

List all applications in your AWS account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListApplicationsOutcomeCallable ListApplicationsCallable(const Model::ListApplicationsRequest& request) const; /** *

List all applications in your AWS account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListApplicationsAsync(const Model::ListApplicationsRequest& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the configuration profiles for an application.

See Also:

* AWS * API Reference

*/ virtual Model::ListConfigurationProfilesOutcome ListConfigurationProfiles(const Model::ListConfigurationProfilesRequest& request) const; /** *

Lists the configuration profiles for an application.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListConfigurationProfilesOutcomeCallable ListConfigurationProfilesCallable(const Model::ListConfigurationProfilesRequest& request) const; /** *

Lists the configuration profiles for an application.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListConfigurationProfilesAsync(const Model::ListConfigurationProfilesRequest& request, const ListConfigurationProfilesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

List deployment strategies.

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentStrategiesOutcome ListDeploymentStrategies(const Model::ListDeploymentStrategiesRequest& request) const; /** *

List deployment strategies.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListDeploymentStrategiesOutcomeCallable ListDeploymentStrategiesCallable(const Model::ListDeploymentStrategiesRequest& request) const; /** *

List deployment strategies.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListDeploymentStrategiesAsync(const Model::ListDeploymentStrategiesRequest& request, const ListDeploymentStrategiesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the deployments for an environment.

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentsOutcome ListDeployments(const Model::ListDeploymentsRequest& request) const; /** *

Lists the deployments for an environment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListDeploymentsOutcomeCallable ListDeploymentsCallable(const Model::ListDeploymentsRequest& request) const; /** *

Lists the deployments for an environment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListDeploymentsAsync(const Model::ListDeploymentsRequest& request, const ListDeploymentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

List the environments for an application.

See Also:

AWS * API Reference

*/ virtual Model::ListEnvironmentsOutcome ListEnvironments(const Model::ListEnvironmentsRequest& request) const; /** *

List the environments for an application.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListEnvironmentsOutcomeCallable ListEnvironmentsCallable(const Model::ListEnvironmentsRequest& request) const; /** *

List the environments for an application.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListEnvironmentsAsync(const Model::ListEnvironmentsRequest& request, const ListEnvironmentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

View a list of configurations stored in the AppConfig configuration store by * version.

See Also:

AWS * API Reference

*/ virtual Model::ListHostedConfigurationVersionsOutcome ListHostedConfigurationVersions(const Model::ListHostedConfigurationVersionsRequest& request) const; /** *

View a list of configurations stored in the AppConfig configuration store by * version.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListHostedConfigurationVersionsOutcomeCallable ListHostedConfigurationVersionsCallable(const Model::ListHostedConfigurationVersionsRequest& request) const; /** *

View a list of configurations stored in the AppConfig configuration store by * version.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListHostedConfigurationVersionsAsync(const Model::ListHostedConfigurationVersionsRequest& request, const ListHostedConfigurationVersionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieves the list of key-value tags assigned to the resource.

See * Also:

AWS * API Reference

*/ virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; /** *

Retrieves the list of key-value tags assigned to the resource.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const Model::ListTagsForResourceRequest& request) const; /** *

Retrieves the list of key-value tags assigned to the resource.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListTagsForResourceAsync(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Starts a deployment.

See Also:

AWS * API Reference

*/ virtual Model::StartDeploymentOutcome StartDeployment(const Model::StartDeploymentRequest& request) const; /** *

Starts a deployment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::StartDeploymentOutcomeCallable StartDeploymentCallable(const Model::StartDeploymentRequest& request) const; /** *

Starts a deployment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void StartDeploymentAsync(const Model::StartDeploymentRequest& request, const StartDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Stops a deployment. This API action works only on deployments that have a * status of DEPLOYING. This action moves the deployment to a status * of ROLLED_BACK.

See Also:

AWS * API Reference

*/ virtual Model::StopDeploymentOutcome StopDeployment(const Model::StopDeploymentRequest& request) const; /** *

Stops a deployment. This API action works only on deployments that have a * status of DEPLOYING. This action moves the deployment to a status * of ROLLED_BACK.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::StopDeploymentOutcomeCallable StopDeploymentCallable(const Model::StopDeploymentRequest& request) const; /** *

Stops a deployment. This API action works only on deployments that have a * status of DEPLOYING. This action moves the deployment to a status * of ROLLED_BACK.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void StopDeploymentAsync(const Model::StopDeploymentRequest& request, const StopDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Metadata to assign to an AppConfig resource. Tags help organize and * categorize your AppConfig resources. Each tag consists of a key and an optional * value, both of which you define. You can specify a maximum of 50 tags for a * resource.

See Also:

AWS * API Reference

*/ virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; /** *

Metadata to assign to an AppConfig resource. Tags help organize and * categorize your AppConfig resources. Each tag consists of a key and an optional * value, both of which you define. You can specify a maximum of 50 tags for a * resource.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::TagResourceOutcomeCallable TagResourceCallable(const Model::TagResourceRequest& request) const; /** *

Metadata to assign to an AppConfig resource. Tags help organize and * categorize your AppConfig resources. Each tag consists of a key and an optional * value, both of which you define. You can specify a maximum of 50 tags for a * resource.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void TagResourceAsync(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a tag key and value from an AppConfig resource.

See * Also:

AWS * API Reference

*/ virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; /** *

Deletes a tag key and value from an AppConfig resource.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UntagResourceOutcomeCallable UntagResourceCallable(const Model::UntagResourceRequest& request) const; /** *

Deletes a tag key and value from an AppConfig resource.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UntagResourceAsync(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Updates an application.

See Also:

AWS * API Reference

*/ virtual Model::UpdateApplicationOutcome UpdateApplication(const Model::UpdateApplicationRequest& request) const; /** *

Updates an application.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdateApplicationOutcomeCallable UpdateApplicationCallable(const Model::UpdateApplicationRequest& request) const; /** *

Updates an application.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateApplicationAsync(const Model::UpdateApplicationRequest& request, const UpdateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Updates a configuration profile.

See Also:

AWS * API Reference

*/ virtual Model::UpdateConfigurationProfileOutcome UpdateConfigurationProfile(const Model::UpdateConfigurationProfileRequest& request) const; /** *

Updates a configuration profile.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdateConfigurationProfileOutcomeCallable UpdateConfigurationProfileCallable(const Model::UpdateConfigurationProfileRequest& request) const; /** *

Updates a configuration profile.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateConfigurationProfileAsync(const Model::UpdateConfigurationProfileRequest& request, const UpdateConfigurationProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Updates a deployment strategy.

See Also:

AWS * API Reference

*/ virtual Model::UpdateDeploymentStrategyOutcome UpdateDeploymentStrategy(const Model::UpdateDeploymentStrategyRequest& request) const; /** *

Updates a deployment strategy.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdateDeploymentStrategyOutcomeCallable UpdateDeploymentStrategyCallable(const Model::UpdateDeploymentStrategyRequest& request) const; /** *

Updates a deployment strategy.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateDeploymentStrategyAsync(const Model::UpdateDeploymentStrategyRequest& request, const UpdateDeploymentStrategyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Updates an environment.

See Also:

AWS * API Reference

*/ virtual Model::UpdateEnvironmentOutcome UpdateEnvironment(const Model::UpdateEnvironmentRequest& request) const; /** *

Updates an environment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdateEnvironmentOutcomeCallable UpdateEnvironmentCallable(const Model::UpdateEnvironmentRequest& request) const; /** *

Updates an environment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateEnvironmentAsync(const Model::UpdateEnvironmentRequest& request, const UpdateEnvironmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Uses the validators in a configuration profile to validate a * configuration.

See Also:

AWS * API Reference

*/ virtual Model::ValidateConfigurationOutcome ValidateConfiguration(const Model::ValidateConfigurationRequest& request) const; /** *

Uses the validators in a configuration profile to validate a * configuration.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ValidateConfigurationOutcomeCallable ValidateConfigurationCallable(const Model::ValidateConfigurationRequest& request) const; /** *

Uses the validators in a configuration profile to validate a * configuration.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ValidateConfigurationAsync(const Model::ValidateConfigurationRequest& request, const ValidateConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; void OverrideEndpoint(const Aws::String& endpoint); private: void init(const Aws::Client::ClientConfiguration& clientConfiguration); void CreateApplicationAsyncHelper(const Model::CreateApplicationRequest& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateConfigurationProfileAsyncHelper(const Model::CreateConfigurationProfileRequest& request, const CreateConfigurationProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateDeploymentStrategyAsyncHelper(const Model::CreateDeploymentStrategyRequest& request, const CreateDeploymentStrategyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateEnvironmentAsyncHelper(const Model::CreateEnvironmentRequest& request, const CreateEnvironmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateHostedConfigurationVersionAsyncHelper(const Model::CreateHostedConfigurationVersionRequest& request, const CreateHostedConfigurationVersionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteApplicationAsyncHelper(const Model::DeleteApplicationRequest& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteConfigurationProfileAsyncHelper(const Model::DeleteConfigurationProfileRequest& request, const DeleteConfigurationProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteDeploymentStrategyAsyncHelper(const Model::DeleteDeploymentStrategyRequest& request, const DeleteDeploymentStrategyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteEnvironmentAsyncHelper(const Model::DeleteEnvironmentRequest& request, const DeleteEnvironmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteHostedConfigurationVersionAsyncHelper(const Model::DeleteHostedConfigurationVersionRequest& request, const DeleteHostedConfigurationVersionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetApplicationAsyncHelper(const Model::GetApplicationRequest& request, const GetApplicationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetConfigurationAsyncHelper(const Model::GetConfigurationRequest& request, const GetConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetConfigurationProfileAsyncHelper(const Model::GetConfigurationProfileRequest& request, const GetConfigurationProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDeploymentAsyncHelper(const Model::GetDeploymentRequest& request, const GetDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDeploymentStrategyAsyncHelper(const Model::GetDeploymentStrategyRequest& request, const GetDeploymentStrategyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetEnvironmentAsyncHelper(const Model::GetEnvironmentRequest& request, const GetEnvironmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetHostedConfigurationVersionAsyncHelper(const Model::GetHostedConfigurationVersionRequest& request, const GetHostedConfigurationVersionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListApplicationsAsyncHelper(const Model::ListApplicationsRequest& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListConfigurationProfilesAsyncHelper(const Model::ListConfigurationProfilesRequest& request, const ListConfigurationProfilesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListDeploymentStrategiesAsyncHelper(const Model::ListDeploymentStrategiesRequest& request, const ListDeploymentStrategiesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListDeploymentsAsyncHelper(const Model::ListDeploymentsRequest& request, const ListDeploymentsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListEnvironmentsAsyncHelper(const Model::ListEnvironmentsRequest& request, const ListEnvironmentsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListHostedConfigurationVersionsAsyncHelper(const Model::ListHostedConfigurationVersionsRequest& request, const ListHostedConfigurationVersionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListTagsForResourceAsyncHelper(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void StartDeploymentAsyncHelper(const Model::StartDeploymentRequest& request, const StartDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void StopDeploymentAsyncHelper(const Model::StopDeploymentRequest& request, const StopDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void TagResourceAsyncHelper(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UntagResourceAsyncHelper(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateApplicationAsyncHelper(const Model::UpdateApplicationRequest& request, const UpdateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateConfigurationProfileAsyncHelper(const Model::UpdateConfigurationProfileRequest& request, const UpdateConfigurationProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateDeploymentStrategyAsyncHelper(const Model::UpdateDeploymentStrategyRequest& request, const UpdateDeploymentStrategyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateEnvironmentAsyncHelper(const Model::UpdateEnvironmentRequest& request, const UpdateEnvironmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ValidateConfigurationAsyncHelper(const Model::ValidateConfigurationRequest& request, const ValidateConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context) const; Aws::String m_uri; Aws::String m_configScheme; std::shared_ptr m_executor; }; } // namespace AppConfig } // namespace Aws