/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Http { class URI; } //namespace Http namespace AppConfig { namespace Model { /** */ class AWS_APPCONFIG_API GetConfigurationRequest : public AppConfigRequest { public: GetConfigurationRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "GetConfiguration"; } Aws::String SerializePayload() const override; void AddQueryStringParameters(Aws::Http::URI& uri) const override; /** *

The application to get. Specify either the application name or the * application ID.

*/ inline const Aws::String& GetApplication() const{ return m_application; } /** *

The application to get. Specify either the application name or the * application ID.

*/ inline bool ApplicationHasBeenSet() const { return m_applicationHasBeenSet; } /** *

The application to get. Specify either the application name or the * application ID.

*/ inline void SetApplication(const Aws::String& value) { m_applicationHasBeenSet = true; m_application = value; } /** *

The application to get. Specify either the application name or the * application ID.

*/ inline void SetApplication(Aws::String&& value) { m_applicationHasBeenSet = true; m_application = std::move(value); } /** *

The application to get. Specify either the application name or the * application ID.

*/ inline void SetApplication(const char* value) { m_applicationHasBeenSet = true; m_application.assign(value); } /** *

The application to get. Specify either the application name or the * application ID.

*/ inline GetConfigurationRequest& WithApplication(const Aws::String& value) { SetApplication(value); return *this;} /** *

The application to get. Specify either the application name or the * application ID.

*/ inline GetConfigurationRequest& WithApplication(Aws::String&& value) { SetApplication(std::move(value)); return *this;} /** *

The application to get. Specify either the application name or the * application ID.

*/ inline GetConfigurationRequest& WithApplication(const char* value) { SetApplication(value); return *this;} /** *

The environment to get. Specify either the environment name or the * environment ID.

*/ inline const Aws::String& GetEnvironment() const{ return m_environment; } /** *

The environment to get. Specify either the environment name or the * environment ID.

*/ inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; } /** *

The environment to get. Specify either the environment name or the * environment ID.

*/ inline void SetEnvironment(const Aws::String& value) { m_environmentHasBeenSet = true; m_environment = value; } /** *

The environment to get. Specify either the environment name or the * environment ID.

*/ inline void SetEnvironment(Aws::String&& value) { m_environmentHasBeenSet = true; m_environment = std::move(value); } /** *

The environment to get. Specify either the environment name or the * environment ID.

*/ inline void SetEnvironment(const char* value) { m_environmentHasBeenSet = true; m_environment.assign(value); } /** *

The environment to get. Specify either the environment name or the * environment ID.

*/ inline GetConfigurationRequest& WithEnvironment(const Aws::String& value) { SetEnvironment(value); return *this;} /** *

The environment to get. Specify either the environment name or the * environment ID.

*/ inline GetConfigurationRequest& WithEnvironment(Aws::String&& value) { SetEnvironment(std::move(value)); return *this;} /** *

The environment to get. Specify either the environment name or the * environment ID.

*/ inline GetConfigurationRequest& WithEnvironment(const char* value) { SetEnvironment(value); return *this;} /** *

The configuration to get. Specify either the configuration name or the * configuration ID.

*/ inline const Aws::String& GetConfiguration() const{ return m_configuration; } /** *

The configuration to get. Specify either the configuration name or the * configuration ID.

*/ inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; } /** *

The configuration to get. Specify either the configuration name or the * configuration ID.

*/ inline void SetConfiguration(const Aws::String& value) { m_configurationHasBeenSet = true; m_configuration = value; } /** *

The configuration to get. Specify either the configuration name or the * configuration ID.

*/ inline void SetConfiguration(Aws::String&& value) { m_configurationHasBeenSet = true; m_configuration = std::move(value); } /** *

The configuration to get. Specify either the configuration name or the * configuration ID.

*/ inline void SetConfiguration(const char* value) { m_configurationHasBeenSet = true; m_configuration.assign(value); } /** *

The configuration to get. Specify either the configuration name or the * configuration ID.

*/ inline GetConfigurationRequest& WithConfiguration(const Aws::String& value) { SetConfiguration(value); return *this;} /** *

The configuration to get. Specify either the configuration name or the * configuration ID.

*/ inline GetConfigurationRequest& WithConfiguration(Aws::String&& value) { SetConfiguration(std::move(value)); return *this;} /** *

The configuration to get. Specify either the configuration name or the * configuration ID.

*/ inline GetConfigurationRequest& WithConfiguration(const char* value) { SetConfiguration(value); return *this;} /** *

A unique ID to identify the client for the configuration. This ID enables * AppConfig to deploy the configuration in intervals, as defined in the deployment * strategy.

*/ inline const Aws::String& GetClientId() const{ return m_clientId; } /** *

A unique ID to identify the client for the configuration. This ID enables * AppConfig to deploy the configuration in intervals, as defined in the deployment * strategy.

*/ inline bool ClientIdHasBeenSet() const { return m_clientIdHasBeenSet; } /** *

A unique ID to identify the client for the configuration. This ID enables * AppConfig to deploy the configuration in intervals, as defined in the deployment * strategy.

*/ inline void SetClientId(const Aws::String& value) { m_clientIdHasBeenSet = true; m_clientId = value; } /** *

A unique ID to identify the client for the configuration. This ID enables * AppConfig to deploy the configuration in intervals, as defined in the deployment * strategy.

*/ inline void SetClientId(Aws::String&& value) { m_clientIdHasBeenSet = true; m_clientId = std::move(value); } /** *

A unique ID to identify the client for the configuration. This ID enables * AppConfig to deploy the configuration in intervals, as defined in the deployment * strategy.

*/ inline void SetClientId(const char* value) { m_clientIdHasBeenSet = true; m_clientId.assign(value); } /** *

A unique ID to identify the client for the configuration. This ID enables * AppConfig to deploy the configuration in intervals, as defined in the deployment * strategy.

*/ inline GetConfigurationRequest& WithClientId(const Aws::String& value) { SetClientId(value); return *this;} /** *

A unique ID to identify the client for the configuration. This ID enables * AppConfig to deploy the configuration in intervals, as defined in the deployment * strategy.

*/ inline GetConfigurationRequest& WithClientId(Aws::String&& value) { SetClientId(std::move(value)); return *this;} /** *

A unique ID to identify the client for the configuration. This ID enables * AppConfig to deploy the configuration in intervals, as defined in the deployment * strategy.

*/ inline GetConfigurationRequest& WithClientId(const char* value) { SetClientId(value); return *this;} /** *

The configuration version returned in the most recent * GetConfiguration response.

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.

For * more information about working with configurations, see Retrieving * the Configuration in the AWS AppConfig User Guide.

*/ inline const Aws::String& GetClientConfigurationVersion() const{ return m_clientConfigurationVersion; } /** *

The configuration version returned in the most recent * GetConfiguration response.

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.

For * more information about working with configurations, see Retrieving * the Configuration in the AWS AppConfig User Guide.

*/ inline bool ClientConfigurationVersionHasBeenSet() const { return m_clientConfigurationVersionHasBeenSet; } /** *

The configuration version returned in the most recent * GetConfiguration response.

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.

For * more information about working with configurations, see Retrieving * the Configuration in the AWS AppConfig User Guide.

*/ inline void SetClientConfigurationVersion(const Aws::String& value) { m_clientConfigurationVersionHasBeenSet = true; m_clientConfigurationVersion = value; } /** *

The configuration version returned in the most recent * GetConfiguration response.

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.

For * more information about working with configurations, see Retrieving * the Configuration in the AWS AppConfig User Guide.

*/ inline void SetClientConfigurationVersion(Aws::String&& value) { m_clientConfigurationVersionHasBeenSet = true; m_clientConfigurationVersion = std::move(value); } /** *

The configuration version returned in the most recent * GetConfiguration response.

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.

For * more information about working with configurations, see Retrieving * the Configuration in the AWS AppConfig User Guide.

*/ inline void SetClientConfigurationVersion(const char* value) { m_clientConfigurationVersionHasBeenSet = true; m_clientConfigurationVersion.assign(value); } /** *

The configuration version returned in the most recent * GetConfiguration response.

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.

For * more information about working with configurations, see Retrieving * the Configuration in the AWS AppConfig User Guide.

*/ inline GetConfigurationRequest& WithClientConfigurationVersion(const Aws::String& value) { SetClientConfigurationVersion(value); return *this;} /** *

The configuration version returned in the most recent * GetConfiguration response.

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.

For * more information about working with configurations, see Retrieving * the Configuration in the AWS AppConfig User Guide.

*/ inline GetConfigurationRequest& WithClientConfigurationVersion(Aws::String&& value) { SetClientConfigurationVersion(std::move(value)); return *this;} /** *

The configuration version returned in the most recent * GetConfiguration response.

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.

For * more information about working with configurations, see Retrieving * the Configuration in the AWS AppConfig User Guide.

*/ inline GetConfigurationRequest& WithClientConfigurationVersion(const char* value) { SetClientConfigurationVersion(value); return *this;} private: Aws::String m_application; bool m_applicationHasBeenSet; Aws::String m_environment; bool m_environmentHasBeenSet; Aws::String m_configuration; bool m_configurationHasBeenSet; Aws::String m_clientId; bool m_clientIdHasBeenSet; Aws::String m_clientConfigurationVersion; bool m_clientConfigurationVersionHasBeenSet; }; } // namespace Model } // namespace AppConfig } // namespace Aws