7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/compute-optimizer/model/Finding.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/compute-optimizer/model/AutoScalingGroupConfiguration.h>
12#include <aws/compute-optimizer/model/GpuInfo.h>
13#include <aws/core/utils/DateTime.h>
14#include <aws/compute-optimizer/model/CurrentPerformanceRisk.h>
15#include <aws/compute-optimizer/model/EffectiveRecommendationPreferences.h>
16#include <aws/compute-optimizer/model/UtilizationMetric.h>
17#include <aws/compute-optimizer/model/AutoScalingGroupRecommendationOption.h>
18#include <aws/compute-optimizer/model/InferredWorkloadType.h>
31namespace ComputeOptimizer
58 inline void SetAccountId(
const char* value) { m_accountIdHasBeenSet =
true; m_accountId.assign(value); }
72 inline void SetAutoScalingGroupArn(
const char* value) { m_autoScalingGroupArnHasBeenSet =
true; m_autoScalingGroupArn.assign(value); }
86 inline void SetAutoScalingGroupName(
const char* value) { m_autoScalingGroupNameHasBeenSet =
true; m_autoScalingGroupName.assign(value); }
107 inline void SetFinding(
Finding&& value) { m_findingHasBeenSet =
true; m_finding = std::move(value); }
134 inline void SetLookBackPeriodInDays(
double value) { m_lookBackPeriodInDaysHasBeenSet =
true; m_lookBackPeriodInDays = value; }
251 bool m_accountIdHasBeenSet =
false;
254 bool m_autoScalingGroupArnHasBeenSet =
false;
257 bool m_autoScalingGroupNameHasBeenSet =
false;
260 bool m_findingHasBeenSet =
false;
263 bool m_utilizationMetricsHasBeenSet =
false;
265 double m_lookBackPeriodInDays;
266 bool m_lookBackPeriodInDaysHasBeenSet =
false;
269 bool m_currentConfigurationHasBeenSet =
false;
271 GpuInfo m_currentInstanceGpuInfo;
272 bool m_currentInstanceGpuInfoHasBeenSet =
false;
275 bool m_recommendationOptionsHasBeenSet =
false;
278 bool m_lastRefreshTimestampHasBeenSet =
false;
281 bool m_currentPerformanceRiskHasBeenSet =
false;
284 bool m_effectiveRecommendationPreferencesHasBeenSet =
false;
287 bool m_inferredWorkloadTypesHasBeenSet =
false;
void SetEffectiveRecommendationPreferences(const EffectiveRecommendationPreferences &value)
AutoScalingGroupRecommendation & WithUtilizationMetrics(Aws::Vector< UtilizationMetric > &&value)
void SetAutoScalingGroupArn(const Aws::String &value)
void SetAutoScalingGroupName(const Aws::String &value)
const Aws::String & GetAccountId() const
bool LastRefreshTimestampHasBeenSet() const
AutoScalingGroupRecommendation & WithCurrentPerformanceRisk(CurrentPerformanceRisk &&value)
void SetFinding(const Finding &value)
void SetAutoScalingGroupArn(Aws::String &&value)
void SetUtilizationMetrics(const Aws::Vector< UtilizationMetric > &value)
bool RecommendationOptionsHasBeenSet() const
const Aws::Vector< InferredWorkloadType > & GetInferredWorkloadTypes() const
bool CurrentConfigurationHasBeenSet() const
AutoScalingGroupRecommendation & WithCurrentInstanceGpuInfo(const GpuInfo &value)
AutoScalingGroupRecommendation & WithRecommendationOptions(const Aws::Vector< AutoScalingGroupRecommendationOption > &value)
bool FindingHasBeenSet() const
AutoScalingGroupRecommendation & AddInferredWorkloadTypes(InferredWorkloadType &&value)
AutoScalingGroupRecommendation & WithEffectiveRecommendationPreferences(const EffectiveRecommendationPreferences &value)
void SetCurrentPerformanceRisk(CurrentPerformanceRisk &&value)
void SetUtilizationMetrics(Aws::Vector< UtilizationMetric > &&value)
AWS_COMPUTEOPTIMIZER_API AutoScalingGroupRecommendation(Aws::Utils::Json::JsonView jsonValue)
const CurrentPerformanceRisk & GetCurrentPerformanceRisk() const
AutoScalingGroupRecommendation & WithAccountId(const Aws::String &value)
void SetAutoScalingGroupName(Aws::String &&value)
AutoScalingGroupRecommendation & WithEffectiveRecommendationPreferences(EffectiveRecommendationPreferences &&value)
void SetAutoScalingGroupArn(const char *value)
void SetAutoScalingGroupName(const char *value)
void SetRecommendationOptions(Aws::Vector< AutoScalingGroupRecommendationOption > &&value)
void SetLastRefreshTimestamp(const Aws::Utils::DateTime &value)
bool EffectiveRecommendationPreferencesHasBeenSet() const
AWS_COMPUTEOPTIMIZER_API AutoScalingGroupRecommendation()
void SetInferredWorkloadTypes(const Aws::Vector< InferredWorkloadType > &value)
bool CurrentInstanceGpuInfoHasBeenSet() const
void SetAccountId(const char *value)
AutoScalingGroupRecommendation & WithFinding(Finding &&value)
AutoScalingGroupRecommendation & WithCurrentConfiguration(AutoScalingGroupConfiguration &&value)
AutoScalingGroupRecommendation & WithInferredWorkloadTypes(Aws::Vector< InferredWorkloadType > &&value)
AutoScalingGroupRecommendation & WithCurrentConfiguration(const AutoScalingGroupConfiguration &value)
bool AutoScalingGroupNameHasBeenSet() const
bool CurrentPerformanceRiskHasBeenSet() const
AutoScalingGroupRecommendation & WithAutoScalingGroupName(const char *value)
AutoScalingGroupRecommendation & WithAccountId(Aws::String &&value)
bool AccountIdHasBeenSet() const
bool AutoScalingGroupArnHasBeenSet() const
const EffectiveRecommendationPreferences & GetEffectiveRecommendationPreferences() const
const Aws::Vector< UtilizationMetric > & GetUtilizationMetrics() const
void SetCurrentConfiguration(const AutoScalingGroupConfiguration &value)
void SetAccountId(const Aws::String &value)
AutoScalingGroupRecommendation & WithLastRefreshTimestamp(const Aws::Utils::DateTime &value)
const AutoScalingGroupConfiguration & GetCurrentConfiguration() const
void SetCurrentInstanceGpuInfo(GpuInfo &&value)
void SetAccountId(Aws::String &&value)
void SetCurrentPerformanceRisk(const CurrentPerformanceRisk &value)
void SetCurrentConfiguration(AutoScalingGroupConfiguration &&value)
AutoScalingGroupRecommendation & AddRecommendationOptions(const AutoScalingGroupRecommendationOption &value)
void SetLookBackPeriodInDays(double value)
void SetEffectiveRecommendationPreferences(EffectiveRecommendationPreferences &&value)
AutoScalingGroupRecommendation & WithAutoScalingGroupArn(Aws::String &&value)
AutoScalingGroupRecommendation & WithAutoScalingGroupArn(const Aws::String &value)
const Aws::Utils::DateTime & GetLastRefreshTimestamp() const
const Finding & GetFinding() const
AutoScalingGroupRecommendation & WithAutoScalingGroupName(Aws::String &&value)
AutoScalingGroupRecommendation & AddUtilizationMetrics(UtilizationMetric &&value)
AutoScalingGroupRecommendation & WithAccountId(const char *value)
AutoScalingGroupRecommendation & WithCurrentInstanceGpuInfo(GpuInfo &&value)
AutoScalingGroupRecommendation & WithCurrentPerformanceRisk(const CurrentPerformanceRisk &value)
AutoScalingGroupRecommendation & WithInferredWorkloadTypes(const Aws::Vector< InferredWorkloadType > &value)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< AutoScalingGroupRecommendationOption > & GetRecommendationOptions() const
const Aws::String & GetAutoScalingGroupName() const
AutoScalingGroupRecommendation & WithLookBackPeriodInDays(double value)
bool InferredWorkloadTypesHasBeenSet() const
AutoScalingGroupRecommendation & WithAutoScalingGroupName(const Aws::String &value)
void SetInferredWorkloadTypes(Aws::Vector< InferredWorkloadType > &&value)
AutoScalingGroupRecommendation & WithUtilizationMetrics(const Aws::Vector< UtilizationMetric > &value)
AutoScalingGroupRecommendation & WithFinding(const Finding &value)
AutoScalingGroupRecommendation & WithRecommendationOptions(Aws::Vector< AutoScalingGroupRecommendationOption > &&value)
AWS_COMPUTEOPTIMIZER_API AutoScalingGroupRecommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetLastRefreshTimestamp(Aws::Utils::DateTime &&value)
AutoScalingGroupRecommendation & AddUtilizationMetrics(const UtilizationMetric &value)
AutoScalingGroupRecommendation & AddRecommendationOptions(AutoScalingGroupRecommendationOption &&value)
bool UtilizationMetricsHasBeenSet() const
AutoScalingGroupRecommendation & WithLastRefreshTimestamp(Aws::Utils::DateTime &&value)
double GetLookBackPeriodInDays() const
const Aws::String & GetAutoScalingGroupArn() const
void SetCurrentInstanceGpuInfo(const GpuInfo &value)
bool LookBackPeriodInDaysHasBeenSet() const
void SetFinding(Finding &&value)
AutoScalingGroupRecommendation & AddInferredWorkloadTypes(const InferredWorkloadType &value)
AutoScalingGroupRecommendation & WithAutoScalingGroupArn(const char *value)
const GpuInfo & GetCurrentInstanceGpuInfo() const
void SetRecommendationOptions(const Aws::Vector< AutoScalingGroupRecommendationOption > &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue