/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace AppConfig { namespace Model { /** *

A summary of a configuration profile.

See Also:

AWS * API Reference

*/ class ConfigurationProfileSummary { public: AWS_APPCONFIG_API ConfigurationProfileSummary(); AWS_APPCONFIG_API ConfigurationProfileSummary(Aws::Utils::Json::JsonView jsonValue); AWS_APPCONFIG_API ConfigurationProfileSummary& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_APPCONFIG_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The application ID.

*/ inline const Aws::String& GetApplicationId() const{ return m_applicationId; } /** *

The application ID.

*/ inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; } /** *

The application ID.

*/ inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; } /** *

The application ID.

*/ inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); } /** *

The application ID.

*/ inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); } /** *

The application ID.

*/ inline ConfigurationProfileSummary& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;} /** *

The application ID.

*/ inline ConfigurationProfileSummary& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;} /** *

The application ID.

*/ inline ConfigurationProfileSummary& WithApplicationId(const char* value) { SetApplicationId(value); return *this;} /** *

The ID of the configuration profile.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The ID of the configuration profile.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

The ID of the configuration profile.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

The ID of the configuration profile.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

The ID of the configuration profile.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

The ID of the configuration profile.

*/ inline ConfigurationProfileSummary& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The ID of the configuration profile.

*/ inline ConfigurationProfileSummary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The ID of the configuration profile.

*/ inline ConfigurationProfileSummary& WithId(const char* value) { SetId(value); return *this;} /** *

The name of the configuration profile.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the configuration profile.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the configuration profile.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the configuration profile.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the configuration profile.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the configuration profile.

*/ inline ConfigurationProfileSummary& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the configuration profile.

*/ inline ConfigurationProfileSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the configuration profile.

*/ inline ConfigurationProfileSummary& WithName(const char* value) { SetName(value); return *this;} /** *

The URI location of the configuration.

*/ inline const Aws::String& GetLocationUri() const{ return m_locationUri; } /** *

The URI location of the configuration.

*/ inline bool LocationUriHasBeenSet() const { return m_locationUriHasBeenSet; } /** *

The URI location of the configuration.

*/ inline void SetLocationUri(const Aws::String& value) { m_locationUriHasBeenSet = true; m_locationUri = value; } /** *

The URI location of the configuration.

*/ inline void SetLocationUri(Aws::String&& value) { m_locationUriHasBeenSet = true; m_locationUri = std::move(value); } /** *

The URI location of the configuration.

*/ inline void SetLocationUri(const char* value) { m_locationUriHasBeenSet = true; m_locationUri.assign(value); } /** *

The URI location of the configuration.

*/ inline ConfigurationProfileSummary& WithLocationUri(const Aws::String& value) { SetLocationUri(value); return *this;} /** *

The URI location of the configuration.

*/ inline ConfigurationProfileSummary& WithLocationUri(Aws::String&& value) { SetLocationUri(std::move(value)); return *this;} /** *

The URI location of the configuration.

*/ inline ConfigurationProfileSummary& WithLocationUri(const char* value) { SetLocationUri(value); return *this;} /** *

The types of validators in the configuration profile.

*/ inline const Aws::Vector& GetValidatorTypes() const{ return m_validatorTypes; } /** *

The types of validators in the configuration profile.

*/ inline bool ValidatorTypesHasBeenSet() const { return m_validatorTypesHasBeenSet; } /** *

The types of validators in the configuration profile.

*/ inline void SetValidatorTypes(const Aws::Vector& value) { m_validatorTypesHasBeenSet = true; m_validatorTypes = value; } /** *

The types of validators in the configuration profile.

*/ inline void SetValidatorTypes(Aws::Vector&& value) { m_validatorTypesHasBeenSet = true; m_validatorTypes = std::move(value); } /** *

The types of validators in the configuration profile.

*/ inline ConfigurationProfileSummary& WithValidatorTypes(const Aws::Vector& value) { SetValidatorTypes(value); return *this;} /** *

The types of validators in the configuration profile.

*/ inline ConfigurationProfileSummary& WithValidatorTypes(Aws::Vector&& value) { SetValidatorTypes(std::move(value)); return *this;} /** *

The types of validators in the configuration profile.

*/ inline ConfigurationProfileSummary& AddValidatorTypes(const ValidatorType& value) { m_validatorTypesHasBeenSet = true; m_validatorTypes.push_back(value); return *this; } /** *

The types of validators in the configuration profile.

*/ inline ConfigurationProfileSummary& AddValidatorTypes(ValidatorType&& value) { m_validatorTypesHasBeenSet = true; m_validatorTypes.push_back(std::move(value)); return *this; } /** *

The type of configurations contained in the profile. AppConfig supports * feature flags and freeform configurations. We * recommend you create feature flag configurations to enable or disable new * features and freeform configurations to distribute configurations to an * application. When calling this API, enter one of the following values for * Type:

AWS.AppConfig.FeatureFlags

* AWS.Freeform

*/ inline const Aws::String& GetType() const{ return m_type; } /** *

The type of configurations contained in the profile. AppConfig supports * feature flags and freeform configurations. We * recommend you create feature flag configurations to enable or disable new * features and freeform configurations to distribute configurations to an * application. When calling this API, enter one of the following values for * Type:

AWS.AppConfig.FeatureFlags

* AWS.Freeform

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of configurations contained in the profile. AppConfig supports * feature flags and freeform configurations. We * recommend you create feature flag configurations to enable or disable new * features and freeform configurations to distribute configurations to an * application. When calling this API, enter one of the following values for * Type:

AWS.AppConfig.FeatureFlags

* AWS.Freeform

*/ inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of configurations contained in the profile. AppConfig supports * feature flags and freeform configurations. We * recommend you create feature flag configurations to enable or disable new * features and freeform configurations to distribute configurations to an * application. When calling this API, enter one of the following values for * Type:

AWS.AppConfig.FeatureFlags

* AWS.Freeform

*/ inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of configurations contained in the profile. AppConfig supports * feature flags and freeform configurations. We * recommend you create feature flag configurations to enable or disable new * features and freeform configurations to distribute configurations to an * application. When calling this API, enter one of the following values for * Type:

AWS.AppConfig.FeatureFlags

* AWS.Freeform

*/ inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); } /** *

The type of configurations contained in the profile. AppConfig supports * feature flags and freeform configurations. We * recommend you create feature flag configurations to enable or disable new * features and freeform configurations to distribute configurations to an * application. When calling this API, enter one of the following values for * Type:

AWS.AppConfig.FeatureFlags

* AWS.Freeform

*/ inline ConfigurationProfileSummary& WithType(const Aws::String& value) { SetType(value); return *this;} /** *

The type of configurations contained in the profile. AppConfig supports * feature flags and freeform configurations. We * recommend you create feature flag configurations to enable or disable new * features and freeform configurations to distribute configurations to an * application. When calling this API, enter one of the following values for * Type:

AWS.AppConfig.FeatureFlags

* AWS.Freeform

*/ inline ConfigurationProfileSummary& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;} /** *

The type of configurations contained in the profile. AppConfig supports * feature flags and freeform configurations. We * recommend you create feature flag configurations to enable or disable new * features and freeform configurations to distribute configurations to an * application. When calling this API, enter one of the following values for * Type:

AWS.AppConfig.FeatureFlags

* AWS.Freeform

*/ inline ConfigurationProfileSummary& WithType(const char* value) { SetType(value); return *this;} private: Aws::String m_applicationId; bool m_applicationIdHasBeenSet = false; Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_locationUri; bool m_locationUriHasBeenSet = false; Aws::Vector m_validatorTypes; bool m_validatorTypesHasBeenSet = false; Aws::String m_type; bool m_typeHasBeenSet = false; }; } // namespace Model } // namespace AppConfig } // namespace Aws