7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/compute-optimizer/model/ServiceConfiguration.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/compute-optimizer/model/ECSServiceLaunchType.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/compute-optimizer/model/ECSServiceRecommendationFinding.h>
14#include <aws/compute-optimizer/model/CurrentPerformanceRisk.h>
15#include <aws/compute-optimizer/model/ECSEffectiveRecommendationPreferences.h>
16#include <aws/compute-optimizer/model/ECSServiceUtilizationMetric.h>
17#include <aws/compute-optimizer/model/ECSServiceRecommendationFindingReasonCode.h>
18#include <aws/compute-optimizer/model/ECSServiceRecommendationOption.h>
19#include <aws/compute-optimizer/model/Tag.h>
32namespace ComputeOptimizer
63 inline void SetServiceArn(
const char* value) { m_serviceArnHasBeenSet =
true; m_serviceArn.assign(value); }
77 inline void SetAccountId(
const char* value) { m_accountIdHasBeenSet =
true; m_accountId.assign(value); }
117 inline void SetLookbackPeriodInDays(
double value) { m_lookbackPeriodInDaysHasBeenSet =
true; m_lookbackPeriodInDays = value; }
257 bool m_serviceArnHasBeenSet =
false;
260 bool m_accountIdHasBeenSet =
false;
263 bool m_currentServiceConfigurationHasBeenSet =
false;
266 bool m_utilizationMetricsHasBeenSet =
false;
268 double m_lookbackPeriodInDays;
269 bool m_lookbackPeriodInDaysHasBeenSet =
false;
272 bool m_launchTypeHasBeenSet =
false;
275 bool m_lastRefreshTimestampHasBeenSet =
false;
278 bool m_findingHasBeenSet =
false;
281 bool m_findingReasonCodesHasBeenSet =
false;
284 bool m_serviceRecommendationOptionsHasBeenSet =
false;
287 bool m_currentPerformanceRiskHasBeenSet =
false;
290 bool m_effectiveRecommendationPreferencesHasBeenSet =
false;
293 bool m_tagsHasBeenSet =
false;
bool AccountIdHasBeenSet() const
bool CurrentServiceConfigurationHasBeenSet() const
ECSServiceRecommendation & WithEffectiveRecommendationPreferences(const ECSEffectiveRecommendationPreferences &value)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
const ECSServiceRecommendationFinding & GetFinding() const
bool LastRefreshTimestampHasBeenSet() const
const Aws::Vector< ECSServiceUtilizationMetric > & GetUtilizationMetrics() const
const Aws::Vector< ECSServiceRecommendationFindingReasonCode > & GetFindingReasonCodes() const
bool TagsHasBeenSet() const
ECSServiceRecommendation & AddUtilizationMetrics(ECSServiceUtilizationMetric &&value)
const Aws::String & GetAccountId() const
void SetAccountId(Aws::String &&value)
const Aws::Vector< Tag > & GetTags() const
const Aws::String & GetServiceArn() const
void SetFindingReasonCodes(const Aws::Vector< ECSServiceRecommendationFindingReasonCode > &value)
bool ServiceArnHasBeenSet() const
void SetFinding(ECSServiceRecommendationFinding &&value)
void SetFinding(const ECSServiceRecommendationFinding &value)
void SetServiceRecommendationOptions(const Aws::Vector< ECSServiceRecommendationOption > &value)
void SetAccountId(const char *value)
ECSServiceRecommendation & WithAccountId(const Aws::String &value)
void SetLookbackPeriodInDays(double value)
ECSServiceRecommendation & WithTags(Aws::Vector< Tag > &&value)
void SetServiceArn(const Aws::String &value)
ECSServiceRecommendation & WithServiceRecommendationOptions(Aws::Vector< ECSServiceRecommendationOption > &&value)
void SetCurrentServiceConfiguration(ServiceConfiguration &&value)
void SetCurrentPerformanceRisk(const CurrentPerformanceRisk &value)
void SetTags(const Aws::Vector< Tag > &value)
const ECSServiceLaunchType & GetLaunchType() const
ECSServiceRecommendation & WithFinding(const ECSServiceRecommendationFinding &value)
void SetEffectiveRecommendationPreferences(const ECSEffectiveRecommendationPreferences &value)
ECSServiceRecommendation & AddFindingReasonCodes(ECSServiceRecommendationFindingReasonCode &&value)
ECSServiceRecommendation & AddServiceRecommendationOptions(const ECSServiceRecommendationOption &value)
bool FindingReasonCodesHasBeenSet() const
ECSServiceRecommendation & WithCurrentPerformanceRisk(CurrentPerformanceRisk &&value)
const Aws::Vector< ECSServiceRecommendationOption > & GetServiceRecommendationOptions() const
ECSServiceRecommendation & WithCurrentPerformanceRisk(const CurrentPerformanceRisk &value)
void SetLastRefreshTimestamp(const Aws::Utils::DateTime &value)
void SetLaunchType(const ECSServiceLaunchType &value)
void SetAccountId(const Aws::String &value)
const CurrentPerformanceRisk & GetCurrentPerformanceRisk() const
ECSServiceRecommendation & WithLaunchType(const ECSServiceLaunchType &value)
ECSServiceRecommendation & WithFindingReasonCodes(const Aws::Vector< ECSServiceRecommendationFindingReasonCode > &value)
AWS_COMPUTEOPTIMIZER_API ECSServiceRecommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
const ServiceConfiguration & GetCurrentServiceConfiguration() const
const Aws::Utils::DateTime & GetLastRefreshTimestamp() const
bool LookbackPeriodInDaysHasBeenSet() const
void SetEffectiveRecommendationPreferences(ECSEffectiveRecommendationPreferences &&value)
ECSServiceRecommendation & AddServiceRecommendationOptions(ECSServiceRecommendationOption &&value)
void SetTags(Aws::Vector< Tag > &&value)
void SetServiceArn(const char *value)
AWS_COMPUTEOPTIMIZER_API ECSServiceRecommendation(Aws::Utils::Json::JsonView jsonValue)
ECSServiceRecommendation & WithServiceArn(Aws::String &&value)
void SetLaunchType(ECSServiceLaunchType &&value)
void SetServiceRecommendationOptions(Aws::Vector< ECSServiceRecommendationOption > &&value)
AWS_COMPUTEOPTIMIZER_API ECSServiceRecommendation()
void SetFindingReasonCodes(Aws::Vector< ECSServiceRecommendationFindingReasonCode > &&value)
ECSServiceRecommendation & AddTags(const Tag &value)
ECSServiceRecommendation & WithTags(const Aws::Vector< Tag > &value)
bool ServiceRecommendationOptionsHasBeenSet() const
bool CurrentPerformanceRiskHasBeenSet() const
ECSServiceRecommendation & AddFindingReasonCodes(const ECSServiceRecommendationFindingReasonCode &value)
bool EffectiveRecommendationPreferencesHasBeenSet() const
void SetUtilizationMetrics(const Aws::Vector< ECSServiceUtilizationMetric > &value)
ECSServiceRecommendation & WithAccountId(const char *value)
void SetCurrentServiceConfiguration(const ServiceConfiguration &value)
void SetLastRefreshTimestamp(Aws::Utils::DateTime &&value)
ECSServiceRecommendation & WithAccountId(Aws::String &&value)
ECSServiceRecommendation & WithServiceArn(const char *value)
ECSServiceRecommendation & WithFindingReasonCodes(Aws::Vector< ECSServiceRecommendationFindingReasonCode > &&value)
ECSServiceRecommendation & WithUtilizationMetrics(const Aws::Vector< ECSServiceUtilizationMetric > &value)
bool FindingHasBeenSet() const
ECSServiceRecommendation & WithServiceRecommendationOptions(const Aws::Vector< ECSServiceRecommendationOption > &value)
ECSServiceRecommendation & WithUtilizationMetrics(Aws::Vector< ECSServiceUtilizationMetric > &&value)
ECSServiceRecommendation & WithLastRefreshTimestamp(Aws::Utils::DateTime &&value)
void SetCurrentPerformanceRisk(CurrentPerformanceRisk &&value)
ECSServiceRecommendation & AddUtilizationMetrics(const ECSServiceUtilizationMetric &value)
ECSServiceRecommendation & WithLookbackPeriodInDays(double value)
ECSServiceRecommendation & WithServiceArn(const Aws::String &value)
void SetUtilizationMetrics(Aws::Vector< ECSServiceUtilizationMetric > &&value)
ECSServiceRecommendation & WithCurrentServiceConfiguration(const ServiceConfiguration &value)
bool UtilizationMetricsHasBeenSet() const
bool LaunchTypeHasBeenSet() const
ECSServiceRecommendation & WithEffectiveRecommendationPreferences(ECSEffectiveRecommendationPreferences &&value)
ECSServiceRecommendation & AddTags(Tag &&value)
void SetServiceArn(Aws::String &&value)
const ECSEffectiveRecommendationPreferences & GetEffectiveRecommendationPreferences() const
ECSServiceRecommendation & WithLastRefreshTimestamp(const Aws::Utils::DateTime &value)
ECSServiceRecommendation & WithFinding(ECSServiceRecommendationFinding &&value)
ECSServiceRecommendation & WithLaunchType(ECSServiceLaunchType &&value)
ECSServiceRecommendation & WithCurrentServiceConfiguration(ServiceConfiguration &&value)
double GetLookbackPeriodInDays() const
ECSServiceRecommendationFinding
ECSServiceRecommendationFindingReasonCode
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue