7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/compute-optimizer/model/VolumeConfiguration.h>
10#include <aws/compute-optimizer/model/EBSFinding.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/compute-optimizer/model/CurrentPerformanceRisk.h>
14#include <aws/compute-optimizer/model/EBSEffectiveRecommendationPreferences.h>
15#include <aws/compute-optimizer/model/EBSUtilizationMetric.h>
16#include <aws/compute-optimizer/model/VolumeRecommendationOption.h>
17#include <aws/compute-optimizer/model/Tag.h>
30namespace ComputeOptimizer
58 inline void SetVolumeArn(
const char* value) { m_volumeArnHasBeenSet =
true; m_volumeArn.assign(value); }
72 inline void SetAccountId(
const char* value) { m_accountIdHasBeenSet =
true; m_accountId.assign(value); }
131 inline void SetLookBackPeriodInDays(
double value) { m_lookBackPeriodInDaysHasBeenSet =
true; m_lookBackPeriodInDays = value; }
205 bool m_volumeArnHasBeenSet =
false;
208 bool m_accountIdHasBeenSet =
false;
211 bool m_currentConfigurationHasBeenSet =
false;
214 bool m_findingHasBeenSet =
false;
217 bool m_utilizationMetricsHasBeenSet =
false;
219 double m_lookBackPeriodInDays;
220 bool m_lookBackPeriodInDaysHasBeenSet =
false;
223 bool m_volumeRecommendationOptionsHasBeenSet =
false;
226 bool m_lastRefreshTimestampHasBeenSet =
false;
229 bool m_currentPerformanceRiskHasBeenSet =
false;
232 bool m_effectiveRecommendationPreferencesHasBeenSet =
false;
235 bool m_tagsHasBeenSet =
false;
void SetFinding(const EBSFinding &value)
VolumeRecommendation & WithVolumeRecommendationOptions(const Aws::Vector< VolumeRecommendationOption > &value)
const EBSEffectiveRecommendationPreferences & GetEffectiveRecommendationPreferences() const
const Aws::Vector< VolumeRecommendationOption > & GetVolumeRecommendationOptions() const
void SetVolumeRecommendationOptions(Aws::Vector< VolumeRecommendationOption > &&value)
void SetUtilizationMetrics(const Aws::Vector< EBSUtilizationMetric > &value)
VolumeRecommendation & WithCurrentPerformanceRisk(const CurrentPerformanceRisk &value)
VolumeRecommendation & AddVolumeRecommendationOptions(VolumeRecommendationOption &&value)
VolumeRecommendation & AddUtilizationMetrics(EBSUtilizationMetric &&value)
VolumeRecommendation & WithCurrentConfiguration(VolumeConfiguration &&value)
bool AccountIdHasBeenSet() const
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
bool UtilizationMetricsHasBeenSet() const
void SetLookBackPeriodInDays(double value)
const CurrentPerformanceRisk & GetCurrentPerformanceRisk() const
VolumeRecommendation & AddUtilizationMetrics(const EBSUtilizationMetric &value)
VolumeRecommendation & AddTags(const Tag &value)
VolumeRecommendation & WithAccountId(const char *value)
void SetFinding(EBSFinding &&value)
AWS_COMPUTEOPTIMIZER_API VolumeRecommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
VolumeRecommendation & WithFinding(EBSFinding &&value)
bool CurrentPerformanceRiskHasBeenSet() const
const Aws::String & GetAccountId() const
void SetVolumeArn(Aws::String &&value)
bool LookBackPeriodInDaysHasBeenSet() const
VolumeRecommendation & WithVolumeArn(const char *value)
bool VolumeArnHasBeenSet() const
VolumeRecommendation & WithCurrentPerformanceRisk(CurrentPerformanceRisk &&value)
void SetEffectiveRecommendationPreferences(EBSEffectiveRecommendationPreferences &&value)
bool VolumeRecommendationOptionsHasBeenSet() const
VolumeRecommendation & WithFinding(const EBSFinding &value)
void SetVolumeArn(const char *value)
VolumeRecommendation & WithEffectiveRecommendationPreferences(const EBSEffectiveRecommendationPreferences &value)
VolumeRecommendation & WithLastRefreshTimestamp(Aws::Utils::DateTime &&value)
VolumeRecommendation & WithUtilizationMetrics(const Aws::Vector< EBSUtilizationMetric > &value)
VolumeRecommendation & WithCurrentConfiguration(const VolumeConfiguration &value)
VolumeRecommendation & WithVolumeArn(Aws::String &&value)
void SetLastRefreshTimestamp(const Aws::Utils::DateTime &value)
void SetVolumeRecommendationOptions(const Aws::Vector< VolumeRecommendationOption > &value)
void SetVolumeArn(const Aws::String &value)
const Aws::String & GetVolumeArn() const
VolumeRecommendation & WithAccountId(const Aws::String &value)
VolumeRecommendation & WithAccountId(Aws::String &&value)
VolumeRecommendation & WithTags(Aws::Vector< Tag > &&value)
void SetCurrentPerformanceRisk(const CurrentPerformanceRisk &value)
void SetLastRefreshTimestamp(Aws::Utils::DateTime &&value)
VolumeRecommendation & WithVolumeArn(const Aws::String &value)
void SetCurrentPerformanceRisk(CurrentPerformanceRisk &&value)
bool FindingHasBeenSet() const
VolumeRecommendation & WithVolumeRecommendationOptions(Aws::Vector< VolumeRecommendationOption > &&value)
VolumeRecommendation & WithLookBackPeriodInDays(double value)
VolumeRecommendation & WithLastRefreshTimestamp(const Aws::Utils::DateTime &value)
AWS_COMPUTEOPTIMIZER_API VolumeRecommendation()
const VolumeConfiguration & GetCurrentConfiguration() const
bool TagsHasBeenSet() const
void SetAccountId(const Aws::String &value)
const Aws::Vector< Tag > & GetTags() const
VolumeRecommendation & WithEffectiveRecommendationPreferences(EBSEffectiveRecommendationPreferences &&value)
void SetTags(const Aws::Vector< Tag > &value)
bool LastRefreshTimestampHasBeenSet() const
void SetTags(Aws::Vector< Tag > &&value)
void SetCurrentConfiguration(const VolumeConfiguration &value)
void SetAccountId(Aws::String &&value)
bool EffectiveRecommendationPreferencesHasBeenSet() const
VolumeRecommendation & WithUtilizationMetrics(Aws::Vector< EBSUtilizationMetric > &&value)
const EBSFinding & GetFinding() const
const Aws::Utils::DateTime & GetLastRefreshTimestamp() const
void SetUtilizationMetrics(Aws::Vector< EBSUtilizationMetric > &&value)
AWS_COMPUTEOPTIMIZER_API VolumeRecommendation(Aws::Utils::Json::JsonView jsonValue)
void SetAccountId(const char *value)
void SetCurrentConfiguration(VolumeConfiguration &&value)
VolumeRecommendation & AddTags(Tag &&value)
VolumeRecommendation & AddVolumeRecommendationOptions(const VolumeRecommendationOption &value)
bool CurrentConfigurationHasBeenSet() const
VolumeRecommendation & WithTags(const Aws::Vector< Tag > &value)
double GetLookBackPeriodInDays() const
void SetEffectiveRecommendationPreferences(const EBSEffectiveRecommendationPreferences &value)
const Aws::Vector< EBSUtilizationMetric > & GetUtilizationMetrics() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue