/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Defines a configuration recommendation.See Also:
AWS
* API Reference
The name of the Application Component.
*/ inline const Aws::String& GetAppComponentName() const{ return m_appComponentName; } /** *The name of the Application Component.
*/ inline bool AppComponentNameHasBeenSet() const { return m_appComponentNameHasBeenSet; } /** *The name of the Application Component.
*/ inline void SetAppComponentName(const Aws::String& value) { m_appComponentNameHasBeenSet = true; m_appComponentName = value; } /** *The name of the Application Component.
*/ inline void SetAppComponentName(Aws::String&& value) { m_appComponentNameHasBeenSet = true; m_appComponentName = std::move(value); } /** *The name of the Application Component.
*/ inline void SetAppComponentName(const char* value) { m_appComponentNameHasBeenSet = true; m_appComponentName.assign(value); } /** *The name of the Application Component.
*/ inline ConfigRecommendation& WithAppComponentName(const Aws::String& value) { SetAppComponentName(value); return *this;} /** *The name of the Application Component.
*/ inline ConfigRecommendation& WithAppComponentName(Aws::String&& value) { SetAppComponentName(std::move(value)); return *this;} /** *The name of the Application Component.
*/ inline ConfigRecommendation& WithAppComponentName(const char* value) { SetAppComponentName(value); return *this;} /** *The current compliance against the resiliency policy before applying the * configuration change.
*/ inline const Aws::MapThe current compliance against the resiliency policy before applying the * configuration change.
*/ inline bool ComplianceHasBeenSet() const { return m_complianceHasBeenSet; } /** *The current compliance against the resiliency policy before applying the * configuration change.
*/ inline void SetCompliance(const Aws::MapThe current compliance against the resiliency policy before applying the * configuration change.
*/ inline void SetCompliance(Aws::MapThe current compliance against the resiliency policy before applying the * configuration change.
*/ inline ConfigRecommendation& WithCompliance(const Aws::MapThe current compliance against the resiliency policy before applying the * configuration change.
*/ inline ConfigRecommendation& WithCompliance(Aws::MapThe current compliance against the resiliency policy before applying the * configuration change.
*/ inline ConfigRecommendation& AddCompliance(const DisruptionType& key, const DisruptionCompliance& value) { m_complianceHasBeenSet = true; m_compliance.emplace(key, value); return *this; } /** *The current compliance against the resiliency policy before applying the * configuration change.
*/ inline ConfigRecommendation& AddCompliance(DisruptionType&& key, const DisruptionCompliance& value) { m_complianceHasBeenSet = true; m_compliance.emplace(std::move(key), value); return *this; } /** *The current compliance against the resiliency policy before applying the * configuration change.
*/ inline ConfigRecommendation& AddCompliance(const DisruptionType& key, DisruptionCompliance&& value) { m_complianceHasBeenSet = true; m_compliance.emplace(key, std::move(value)); return *this; } /** *The current compliance against the resiliency policy before applying the * configuration change.
*/ inline ConfigRecommendation& AddCompliance(DisruptionType&& key, DisruptionCompliance&& value) { m_complianceHasBeenSet = true; m_compliance.emplace(std::move(key), std::move(value)); return *this; } /** *The cost for the application.
*/ inline const Cost& GetCost() const{ return m_cost; } /** *The cost for the application.
*/ inline bool CostHasBeenSet() const { return m_costHasBeenSet; } /** *The cost for the application.
*/ inline void SetCost(const Cost& value) { m_costHasBeenSet = true; m_cost = value; } /** *The cost for the application.
*/ inline void SetCost(Cost&& value) { m_costHasBeenSet = true; m_cost = std::move(value); } /** *The cost for the application.
*/ inline ConfigRecommendation& WithCost(const Cost& value) { SetCost(value); return *this;} /** *The cost for the application.
*/ inline ConfigRecommendation& WithCost(Cost&& value) { SetCost(std::move(value)); return *this;} /** *The optional description for an app.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *The optional description for an app.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *The optional description for an app.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *The optional description for an app.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *The optional description for an app.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *The optional description for an app.
*/ inline ConfigRecommendation& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *The optional description for an app.
*/ inline ConfigRecommendation& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *The optional description for an app.
*/ inline ConfigRecommendation& WithDescription(const char* value) { SetDescription(value); return *this;} /** *The architecture type.
*/ inline const HaArchitecture& GetHaArchitecture() const{ return m_haArchitecture; } /** *The architecture type.
*/ inline bool HaArchitectureHasBeenSet() const { return m_haArchitectureHasBeenSet; } /** *The architecture type.
*/ inline void SetHaArchitecture(const HaArchitecture& value) { m_haArchitectureHasBeenSet = true; m_haArchitecture = value; } /** *The architecture type.
*/ inline void SetHaArchitecture(HaArchitecture&& value) { m_haArchitectureHasBeenSet = true; m_haArchitecture = std::move(value); } /** *The architecture type.
*/ inline ConfigRecommendation& WithHaArchitecture(const HaArchitecture& value) { SetHaArchitecture(value); return *this;} /** *The architecture type.
*/ inline ConfigRecommendation& WithHaArchitecture(HaArchitecture&& value) { SetHaArchitecture(std::move(value)); return *this;} /** *The name of the recommendation configuration.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the recommendation configuration.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the recommendation configuration.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the recommendation configuration.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the recommendation configuration.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the recommendation configuration.
*/ inline ConfigRecommendation& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the recommendation configuration.
*/ inline ConfigRecommendation& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the recommendation configuration.
*/ inline ConfigRecommendation& WithName(const char* value) { SetName(value); return *this;} /** *The type of optimization.
*/ inline const ConfigRecommendationOptimizationType& GetOptimizationType() const{ return m_optimizationType; } /** *The type of optimization.
*/ inline bool OptimizationTypeHasBeenSet() const { return m_optimizationTypeHasBeenSet; } /** *The type of optimization.
*/ inline void SetOptimizationType(const ConfigRecommendationOptimizationType& value) { m_optimizationTypeHasBeenSet = true; m_optimizationType = value; } /** *The type of optimization.
*/ inline void SetOptimizationType(ConfigRecommendationOptimizationType&& value) { m_optimizationTypeHasBeenSet = true; m_optimizationType = std::move(value); } /** *The type of optimization.
*/ inline ConfigRecommendation& WithOptimizationType(const ConfigRecommendationOptimizationType& value) { SetOptimizationType(value); return *this;} /** *The type of optimization.
*/ inline ConfigRecommendation& WithOptimizationType(ConfigRecommendationOptimizationType&& value) { SetOptimizationType(std::move(value)); return *this;} /** *The expected compliance against the resiliency policy after applying the * configuration change.
*/ inline const Aws::MapThe expected compliance against the resiliency policy after applying the * configuration change.
*/ inline bool RecommendationComplianceHasBeenSet() const { return m_recommendationComplianceHasBeenSet; } /** *The expected compliance against the resiliency policy after applying the * configuration change.
*/ inline void SetRecommendationCompliance(const Aws::MapThe expected compliance against the resiliency policy after applying the * configuration change.
*/ inline void SetRecommendationCompliance(Aws::MapThe expected compliance against the resiliency policy after applying the * configuration change.
*/ inline ConfigRecommendation& WithRecommendationCompliance(const Aws::MapThe expected compliance against the resiliency policy after applying the * configuration change.
*/ inline ConfigRecommendation& WithRecommendationCompliance(Aws::MapThe expected compliance against the resiliency policy after applying the * configuration change.
*/ inline ConfigRecommendation& AddRecommendationCompliance(const DisruptionType& key, const RecommendationDisruptionCompliance& value) { m_recommendationComplianceHasBeenSet = true; m_recommendationCompliance.emplace(key, value); return *this; } /** *The expected compliance against the resiliency policy after applying the * configuration change.
*/ inline ConfigRecommendation& AddRecommendationCompliance(DisruptionType&& key, const RecommendationDisruptionCompliance& value) { m_recommendationComplianceHasBeenSet = true; m_recommendationCompliance.emplace(std::move(key), value); return *this; } /** *The expected compliance against the resiliency policy after applying the * configuration change.
*/ inline ConfigRecommendation& AddRecommendationCompliance(const DisruptionType& key, RecommendationDisruptionCompliance&& value) { m_recommendationComplianceHasBeenSet = true; m_recommendationCompliance.emplace(key, std::move(value)); return *this; } /** *The expected compliance against the resiliency policy after applying the * configuration change.
*/ inline ConfigRecommendation& AddRecommendationCompliance(DisruptionType&& key, RecommendationDisruptionCompliance&& value) { m_recommendationComplianceHasBeenSet = true; m_recommendationCompliance.emplace(std::move(key), std::move(value)); return *this; } /** *The reference identifier for the recommendation configuration.
*/ inline const Aws::String& GetReferenceId() const{ return m_referenceId; } /** *The reference identifier for the recommendation configuration.
*/ inline bool ReferenceIdHasBeenSet() const { return m_referenceIdHasBeenSet; } /** *The reference identifier for the recommendation configuration.
*/ inline void SetReferenceId(const Aws::String& value) { m_referenceIdHasBeenSet = true; m_referenceId = value; } /** *The reference identifier for the recommendation configuration.
*/ inline void SetReferenceId(Aws::String&& value) { m_referenceIdHasBeenSet = true; m_referenceId = std::move(value); } /** *The reference identifier for the recommendation configuration.
*/ inline void SetReferenceId(const char* value) { m_referenceIdHasBeenSet = true; m_referenceId.assign(value); } /** *The reference identifier for the recommendation configuration.
*/ inline ConfigRecommendation& WithReferenceId(const Aws::String& value) { SetReferenceId(value); return *this;} /** *The reference identifier for the recommendation configuration.
*/ inline ConfigRecommendation& WithReferenceId(Aws::String&& value) { SetReferenceId(std::move(value)); return *this;} /** *The reference identifier for the recommendation configuration.
*/ inline ConfigRecommendation& WithReferenceId(const char* value) { SetReferenceId(value); return *this;} /** *List of the suggested configuration changes.
*/ inline const Aws::VectorList of the suggested configuration changes.
*/ inline bool SuggestedChangesHasBeenSet() const { return m_suggestedChangesHasBeenSet; } /** *List of the suggested configuration changes.
*/ inline void SetSuggestedChanges(const Aws::VectorList of the suggested configuration changes.
*/ inline void SetSuggestedChanges(Aws::VectorList of the suggested configuration changes.
*/ inline ConfigRecommendation& WithSuggestedChanges(const Aws::VectorList of the suggested configuration changes.
*/ inline ConfigRecommendation& WithSuggestedChanges(Aws::VectorList of the suggested configuration changes.
*/ inline ConfigRecommendation& AddSuggestedChanges(const Aws::String& value) { m_suggestedChangesHasBeenSet = true; m_suggestedChanges.push_back(value); return *this; } /** *List of the suggested configuration changes.
*/ inline ConfigRecommendation& AddSuggestedChanges(Aws::String&& value) { m_suggestedChangesHasBeenSet = true; m_suggestedChanges.push_back(std::move(value)); return *this; } /** *List of the suggested configuration changes.
*/ inline ConfigRecommendation& AddSuggestedChanges(const char* value) { m_suggestedChangesHasBeenSet = true; m_suggestedChanges.push_back(value); return *this; } private: Aws::String m_appComponentName; bool m_appComponentNameHasBeenSet = false; Aws::Map