AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
LambdaFunctionMemoryRecommendationOption.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/compute-optimizer/model/SavingsOpportunity.h>
10#include <aws/compute-optimizer/model/LambdaSavingsOpportunityAfterDiscounts.h>
11#include <aws/compute-optimizer/model/LambdaFunctionMemoryProjectedMetric.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace ComputeOptimizer
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_COMPUTEOPTIMIZER_API LambdaFunctionMemoryRecommendationOption() = default;
41 AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
49 inline int GetRank() const { return m_rank; }
50 inline bool RankHasBeenSet() const { return m_rankHasBeenSet; }
51 inline void SetRank(int value) { m_rankHasBeenSet = true; m_rank = value; }
52 inline LambdaFunctionMemoryRecommendationOption& WithRank(int value) { SetRank(value); return *this;}
54
56
59 inline int GetMemorySize() const { return m_memorySize; }
60 inline bool MemorySizeHasBeenSet() const { return m_memorySizeHasBeenSet; }
61 inline void SetMemorySize(int value) { m_memorySizeHasBeenSet = true; m_memorySize = value; }
62 inline LambdaFunctionMemoryRecommendationOption& WithMemorySize(int value) { SetMemorySize(value); return *this;}
64
66
70 inline const Aws::Vector<LambdaFunctionMemoryProjectedMetric>& GetProjectedUtilizationMetrics() const { return m_projectedUtilizationMetrics; }
71 inline bool ProjectedUtilizationMetricsHasBeenSet() const { return m_projectedUtilizationMetricsHasBeenSet; }
72 template<typename ProjectedUtilizationMetricsT = Aws::Vector<LambdaFunctionMemoryProjectedMetric>>
73 void SetProjectedUtilizationMetrics(ProjectedUtilizationMetricsT&& value) { m_projectedUtilizationMetricsHasBeenSet = true; m_projectedUtilizationMetrics = std::forward<ProjectedUtilizationMetricsT>(value); }
74 template<typename ProjectedUtilizationMetricsT = Aws::Vector<LambdaFunctionMemoryProjectedMetric>>
75 LambdaFunctionMemoryRecommendationOption& WithProjectedUtilizationMetrics(ProjectedUtilizationMetricsT&& value) { SetProjectedUtilizationMetrics(std::forward<ProjectedUtilizationMetricsT>(value)); return *this;}
76 template<typename ProjectedUtilizationMetricsT = LambdaFunctionMemoryProjectedMetric>
77 LambdaFunctionMemoryRecommendationOption& AddProjectedUtilizationMetrics(ProjectedUtilizationMetricsT&& value) { m_projectedUtilizationMetricsHasBeenSet = true; m_projectedUtilizationMetrics.emplace_back(std::forward<ProjectedUtilizationMetricsT>(value)); return *this; }
79
81
86 inline const SavingsOpportunity& GetSavingsOpportunity() const { return m_savingsOpportunity; }
87 inline bool SavingsOpportunityHasBeenSet() const { return m_savingsOpportunityHasBeenSet; }
88 template<typename SavingsOpportunityT = SavingsOpportunity>
89 void SetSavingsOpportunity(SavingsOpportunityT&& value) { m_savingsOpportunityHasBeenSet = true; m_savingsOpportunity = std::forward<SavingsOpportunityT>(value); }
90 template<typename SavingsOpportunityT = SavingsOpportunity>
91 LambdaFunctionMemoryRecommendationOption& WithSavingsOpportunity(SavingsOpportunityT&& value) { SetSavingsOpportunity(std::forward<SavingsOpportunityT>(value)); return *this;}
93
95
100 inline const LambdaSavingsOpportunityAfterDiscounts& GetSavingsOpportunityAfterDiscounts() const { return m_savingsOpportunityAfterDiscounts; }
101 inline bool SavingsOpportunityAfterDiscountsHasBeenSet() const { return m_savingsOpportunityAfterDiscountsHasBeenSet; }
102 template<typename SavingsOpportunityAfterDiscountsT = LambdaSavingsOpportunityAfterDiscounts>
103 void SetSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT&& value) { m_savingsOpportunityAfterDiscountsHasBeenSet = true; m_savingsOpportunityAfterDiscounts = std::forward<SavingsOpportunityAfterDiscountsT>(value); }
104 template<typename SavingsOpportunityAfterDiscountsT = LambdaSavingsOpportunityAfterDiscounts>
105 LambdaFunctionMemoryRecommendationOption& WithSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT&& value) { SetSavingsOpportunityAfterDiscounts(std::forward<SavingsOpportunityAfterDiscountsT>(value)); return *this;}
107 private:
108
109 int m_rank{0};
110 bool m_rankHasBeenSet = false;
111
112 int m_memorySize{0};
113 bool m_memorySizeHasBeenSet = false;
114
115 Aws::Vector<LambdaFunctionMemoryProjectedMetric> m_projectedUtilizationMetrics;
116 bool m_projectedUtilizationMetricsHasBeenSet = false;
117
118 SavingsOpportunity m_savingsOpportunity;
119 bool m_savingsOpportunityHasBeenSet = false;
120
121 LambdaSavingsOpportunityAfterDiscounts m_savingsOpportunityAfterDiscounts;
122 bool m_savingsOpportunityAfterDiscountsHasBeenSet = false;
123 };
124
125} // namespace Model
126} // namespace ComputeOptimizer
127} // namespace Aws
AWS_COMPUTEOPTIMIZER_API LambdaFunctionMemoryRecommendationOption(Aws::Utils::Json::JsonView jsonValue)
LambdaFunctionMemoryRecommendationOption & WithSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT &&value)
LambdaFunctionMemoryRecommendationOption & WithProjectedUtilizationMetrics(ProjectedUtilizationMetricsT &&value)
AWS_COMPUTEOPTIMIZER_API LambdaFunctionMemoryRecommendationOption & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< LambdaFunctionMemoryProjectedMetric > & GetProjectedUtilizationMetrics() const
AWS_COMPUTEOPTIMIZER_API LambdaFunctionMemoryRecommendationOption()=default
LambdaFunctionMemoryRecommendationOption & WithSavingsOpportunity(SavingsOpportunityT &&value)
LambdaFunctionMemoryRecommendationOption & AddProjectedUtilizationMetrics(ProjectedUtilizationMetricsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue