AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
VolumeRecommendationOption.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/compute-optimizer/model/VolumeConfiguration.h>
9#include <aws/compute-optimizer/model/SavingsOpportunity.h>
10#include <aws/compute-optimizer/model/EBSSavingsOpportunityAfterDiscounts.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace ComputeOptimizer
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_COMPUTEOPTIMIZER_API VolumeRecommendationOption() = default;
38 AWS_COMPUTEOPTIMIZER_API VolumeRecommendationOption(Aws::Utils::Json::JsonView jsonValue);
40 AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const VolumeConfiguration& GetConfiguration() const { return m_configuration; }
48 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
49 template<typename ConfigurationT = VolumeConfiguration>
50 void SetConfiguration(ConfigurationT&& value) { m_configurationHasBeenSet = true; m_configuration = std::forward<ConfigurationT>(value); }
51 template<typename ConfigurationT = VolumeConfiguration>
52 VolumeRecommendationOption& WithConfiguration(ConfigurationT&& value) { SetConfiguration(std::forward<ConfigurationT>(value)); return *this;}
54
56
66 inline double GetPerformanceRisk() const { return m_performanceRisk; }
67 inline bool PerformanceRiskHasBeenSet() const { return m_performanceRiskHasBeenSet; }
68 inline void SetPerformanceRisk(double value) { m_performanceRiskHasBeenSet = true; m_performanceRisk = value; }
69 inline VolumeRecommendationOption& WithPerformanceRisk(double value) { SetPerformanceRisk(value); return *this;}
71
73
77 inline int GetRank() const { return m_rank; }
78 inline bool RankHasBeenSet() const { return m_rankHasBeenSet; }
79 inline void SetRank(int value) { m_rankHasBeenSet = true; m_rank = value; }
80 inline VolumeRecommendationOption& WithRank(int value) { SetRank(value); return *this;}
82
84
89 inline const SavingsOpportunity& GetSavingsOpportunity() const { return m_savingsOpportunity; }
90 inline bool SavingsOpportunityHasBeenSet() const { return m_savingsOpportunityHasBeenSet; }
91 template<typename SavingsOpportunityT = SavingsOpportunity>
92 void SetSavingsOpportunity(SavingsOpportunityT&& value) { m_savingsOpportunityHasBeenSet = true; m_savingsOpportunity = std::forward<SavingsOpportunityT>(value); }
93 template<typename SavingsOpportunityT = SavingsOpportunity>
94 VolumeRecommendationOption& WithSavingsOpportunity(SavingsOpportunityT&& value) { SetSavingsOpportunity(std::forward<SavingsOpportunityT>(value)); return *this;}
96
98
103 inline const EBSSavingsOpportunityAfterDiscounts& GetSavingsOpportunityAfterDiscounts() const { return m_savingsOpportunityAfterDiscounts; }
104 inline bool SavingsOpportunityAfterDiscountsHasBeenSet() const { return m_savingsOpportunityAfterDiscountsHasBeenSet; }
105 template<typename SavingsOpportunityAfterDiscountsT = EBSSavingsOpportunityAfterDiscounts>
106 void SetSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT&& value) { m_savingsOpportunityAfterDiscountsHasBeenSet = true; m_savingsOpportunityAfterDiscounts = std::forward<SavingsOpportunityAfterDiscountsT>(value); }
107 template<typename SavingsOpportunityAfterDiscountsT = EBSSavingsOpportunityAfterDiscounts>
108 VolumeRecommendationOption& WithSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT&& value) { SetSavingsOpportunityAfterDiscounts(std::forward<SavingsOpportunityAfterDiscountsT>(value)); return *this;}
110 private:
111
112 VolumeConfiguration m_configuration;
113 bool m_configurationHasBeenSet = false;
114
115 double m_performanceRisk{0.0};
116 bool m_performanceRiskHasBeenSet = false;
117
118 int m_rank{0};
119 bool m_rankHasBeenSet = false;
120
121 SavingsOpportunity m_savingsOpportunity;
122 bool m_savingsOpportunityHasBeenSet = false;
123
124 EBSSavingsOpportunityAfterDiscounts m_savingsOpportunityAfterDiscounts;
125 bool m_savingsOpportunityAfterDiscountsHasBeenSet = false;
126 };
127
128} // namespace Model
129} // namespace ComputeOptimizer
130} // namespace Aws
VolumeRecommendationOption & WithPerformanceRisk(double value)
void SetSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT &&value)
VolumeRecommendationOption & WithSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT &&value)
const EBSSavingsOpportunityAfterDiscounts & GetSavingsOpportunityAfterDiscounts() const
AWS_COMPUTEOPTIMIZER_API VolumeRecommendationOption & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
VolumeRecommendationOption & WithSavingsOpportunity(SavingsOpportunityT &&value)
VolumeRecommendationOption & WithConfiguration(ConfigurationT &&value)
AWS_COMPUTEOPTIMIZER_API VolumeRecommendationOption()=default
AWS_COMPUTEOPTIMIZER_API VolumeRecommendationOption(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue