7#include <aws/resiliencehub/ResilienceHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/resiliencehub/model/Cost.h>
11#include <aws/resiliencehub/model/HaArchitecture.h>
12#include <aws/resiliencehub/model/ConfigRecommendationOptimizationType.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/resiliencehub/model/DisruptionType.h>
15#include <aws/resiliencehub/model/DisruptionCompliance.h>
16#include <aws/resiliencehub/model/RecommendationDisruptionCompliance.h>
29namespace ResilienceHub
54 template<
typename AppComponentNameT = Aws::String>
55 void SetAppComponentName(AppComponentNameT&& value) { m_appComponentNameHasBeenSet =
true; m_appComponentName = std::forward<AppComponentNameT>(value); }
56 template<
typename AppComponentNameT = Aws::String>
67 template<
typename ComplianceT = Aws::Map<DisruptionType, DisruptionCompliance>>
68 void SetCompliance(ComplianceT&& value) { m_complianceHasBeenSet =
true; m_compliance = std::forward<ComplianceT>(value); }
69 template<
typename ComplianceT = Aws::Map<DisruptionType, DisruptionCompliance>>
72 m_complianceHasBeenSet =
true; m_compliance.emplace(key, value);
return *
this;
82 template<
typename CostT = Cost>
83 void SetCost(CostT&& value) { m_costHasBeenSet =
true; m_cost = std::forward<CostT>(value); }
84 template<
typename CostT = Cost>
94 template<
typename DescriptionT = Aws::String>
95 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
96 template<
typename DescriptionT = Aws::String>
116 template<
typename NameT = Aws::String>
117 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
118 template<
typename NameT = Aws::String>
139 template<
typename RecommendationComplianceT = Aws::Map<DisruptionType, RecommendationDisruptionCompliance>>
140 void SetRecommendationCompliance(RecommendationComplianceT&& value) { m_recommendationComplianceHasBeenSet =
true; m_recommendationCompliance = std::forward<RecommendationComplianceT>(value); }
141 template<
typename RecommendationComplianceT = Aws::Map<DisruptionType, RecommendationDisruptionCompliance>>
144 m_recommendationComplianceHasBeenSet =
true; m_recommendationCompliance.emplace(key, value);
return *
this;
154 template<
typename ReferenceIdT = Aws::String>
155 void SetReferenceId(ReferenceIdT&& value) { m_referenceIdHasBeenSet =
true; m_referenceId = std::forward<ReferenceIdT>(value); }
156 template<
typename ReferenceIdT = Aws::String>
166 template<
typename SuggestedChangesT = Aws::Vector<Aws::String>>
167 void SetSuggestedChanges(SuggestedChangesT&& value) { m_suggestedChangesHasBeenSet =
true; m_suggestedChanges = std::forward<SuggestedChangesT>(value); }
168 template<
typename SuggestedChangesT = Aws::Vector<Aws::String>>
170 template<
typename SuggestedChangesT = Aws::String>
176 bool m_appComponentNameHasBeenSet =
false;
179 bool m_complianceHasBeenSet =
false;
182 bool m_costHasBeenSet =
false;
185 bool m_descriptionHasBeenSet =
false;
188 bool m_haArchitectureHasBeenSet =
false;
191 bool m_nameHasBeenSet =
false;
194 bool m_optimizationTypeHasBeenSet =
false;
197 bool m_recommendationComplianceHasBeenSet =
false;
200 bool m_referenceIdHasBeenSet =
false;
203 bool m_suggestedChangesHasBeenSet =
false;
const Aws::String & GetName() const
ConfigRecommendation & WithReferenceId(ReferenceIdT &&value)
void SetName(NameT &&value)
ConfigRecommendation & WithCost(CostT &&value)
void SetHaArchitecture(HaArchitecture value)
bool DescriptionHasBeenSet() const
void SetCost(CostT &&value)
void SetAppComponentName(AppComponentNameT &&value)
ConfigRecommendation & WithOptimizationType(ConfigRecommendationOptimizationType value)
const Aws::Vector< Aws::String > & GetSuggestedChanges() const
void SetOptimizationType(ConfigRecommendationOptimizationType value)
const Aws::Map< DisruptionType, RecommendationDisruptionCompliance > & GetRecommendationCompliance() const
ConfigRecommendation & WithCompliance(ComplianceT &&value)
AWS_RESILIENCEHUB_API ConfigRecommendation()=default
bool RecommendationComplianceHasBeenSet() const
void SetDescription(DescriptionT &&value)
ConfigRecommendation & WithSuggestedChanges(SuggestedChangesT &&value)
ConfigRecommendation & AddSuggestedChanges(SuggestedChangesT &&value)
ConfigRecommendation & WithDescription(DescriptionT &&value)
bool CostHasBeenSet() const
ConfigRecommendation & WithHaArchitecture(HaArchitecture value)
bool SuggestedChangesHasBeenSet() const
ConfigRecommendation & WithAppComponentName(AppComponentNameT &&value)
ConfigRecommendation & WithRecommendationCompliance(RecommendationComplianceT &&value)
const Cost & GetCost() const
ConfigRecommendation & AddCompliance(DisruptionType key, DisruptionCompliance value)
bool ComplianceHasBeenSet() const
const Aws::String & GetDescription() const
AWS_RESILIENCEHUB_API ConfigRecommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
ConfigRecommendation & WithName(NameT &&value)
void SetReferenceId(ReferenceIdT &&value)
HaArchitecture GetHaArchitecture() const
bool AppComponentNameHasBeenSet() const
const Aws::Map< DisruptionType, DisruptionCompliance > & GetCompliance() const
bool ReferenceIdHasBeenSet() const
ConfigRecommendation & AddRecommendationCompliance(DisruptionType key, RecommendationDisruptionCompliance value)
void SetSuggestedChanges(SuggestedChangesT &&value)
bool OptimizationTypeHasBeenSet() const
void SetCompliance(ComplianceT &&value)
AWS_RESILIENCEHUB_API ConfigRecommendation(Aws::Utils::Json::JsonView jsonValue)
ConfigRecommendationOptimizationType GetOptimizationType() const
const Aws::String & GetReferenceId() const
bool HaArchitectureHasBeenSet() const
const Aws::String & GetAppComponentName() const
void SetRecommendationCompliance(RecommendationComplianceT &&value)
bool NameHasBeenSet() const
AWS_RESILIENCEHUB_API Aws::Utils::Json::JsonValue Jsonize() const
ConfigRecommendationOptimizationType
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue