AWS SDK for C++

AWS SDK for C++ Version 1.11.754

Loading...
Searching...
No Matches
GetEffectiveRecommendationPreferencesResult.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/compute-optimizer/model/EffectivePreferredResource.h>
9#include <aws/compute-optimizer/model/EnhancedInfrastructureMetrics.h>
10#include <aws/compute-optimizer/model/ExternalMetricsPreference.h>
11#include <aws/compute-optimizer/model/LookBackPeriodPreference.h>
12#include <aws/compute-optimizer/model/UtilizationPreference.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15
16#include <utility>
17
18namespace Aws {
19template <typename RESULT_TYPE>
20class AmazonWebServiceResult;
21
22namespace Utils {
23namespace Json {
24class JsonValue;
25} // namespace Json
26} // namespace Utils
27namespace ComputeOptimizer {
28namespace Model {
30 public:
31 AWS_COMPUTEOPTIMIZER_API GetEffectiveRecommendationPreferencesResult() = default;
36
38
53 inline EnhancedInfrastructureMetrics GetEnhancedInfrastructureMetrics() const { return m_enhancedInfrastructureMetrics; }
55 m_enhancedInfrastructureMetricsHasBeenSet = true;
56 m_enhancedInfrastructureMetrics = value;
57 }
60 return *this;
61 }
63
65
79 inline const ExternalMetricsPreference& GetExternalMetricsPreference() const { return m_externalMetricsPreference; }
80 template <typename ExternalMetricsPreferenceT = ExternalMetricsPreference>
81 void SetExternalMetricsPreference(ExternalMetricsPreferenceT&& value) {
82 m_externalMetricsPreferenceHasBeenSet = true;
83 m_externalMetricsPreference = std::forward<ExternalMetricsPreferenceT>(value);
84 }
85 template <typename ExternalMetricsPreferenceT = ExternalMetricsPreference>
87 SetExternalMetricsPreference(std::forward<ExternalMetricsPreferenceT>(value));
88 return *this;
89 }
91
93
100 inline LookBackPeriodPreference GetLookBackPeriod() const { return m_lookBackPeriod; }
102 m_lookBackPeriodHasBeenSet = true;
103 m_lookBackPeriod = value;
104 }
106 SetLookBackPeriod(value);
107 return *this;
108 }
110
112
121 inline const Aws::Vector<UtilizationPreference>& GetUtilizationPreferences() const { return m_utilizationPreferences; }
122 template <typename UtilizationPreferencesT = Aws::Vector<UtilizationPreference>>
123 void SetUtilizationPreferences(UtilizationPreferencesT&& value) {
124 m_utilizationPreferencesHasBeenSet = true;
125 m_utilizationPreferences = std::forward<UtilizationPreferencesT>(value);
126 }
127 template <typename UtilizationPreferencesT = Aws::Vector<UtilizationPreference>>
129 SetUtilizationPreferences(std::forward<UtilizationPreferencesT>(value));
130 return *this;
131 }
132 template <typename UtilizationPreferencesT = UtilizationPreference>
134 m_utilizationPreferencesHasBeenSet = true;
135 m_utilizationPreferences.emplace_back(std::forward<UtilizationPreferencesT>(value));
136 return *this;
137 }
139
141
151 inline const Aws::Vector<EffectivePreferredResource>& GetPreferredResources() const { return m_preferredResources; }
152 template <typename PreferredResourcesT = Aws::Vector<EffectivePreferredResource>>
153 void SetPreferredResources(PreferredResourcesT&& value) {
154 m_preferredResourcesHasBeenSet = true;
155 m_preferredResources = std::forward<PreferredResourcesT>(value);
156 }
157 template <typename PreferredResourcesT = Aws::Vector<EffectivePreferredResource>>
159 SetPreferredResources(std::forward<PreferredResourcesT>(value));
160 return *this;
161 }
162 template <typename PreferredResourcesT = EffectivePreferredResource>
164 m_preferredResourcesHasBeenSet = true;
165 m_preferredResources.emplace_back(std::forward<PreferredResourcesT>(value));
166 return *this;
167 }
169
171
172 inline const Aws::String& GetRequestId() const { return m_requestId; }
173 template <typename RequestIdT = Aws::String>
174 void SetRequestId(RequestIdT&& value) {
175 m_requestIdHasBeenSet = true;
176 m_requestId = std::forward<RequestIdT>(value);
177 }
178 template <typename RequestIdT = Aws::String>
180 SetRequestId(std::forward<RequestIdT>(value));
181 return *this;
182 }
184 private:
186
187 ExternalMetricsPreference m_externalMetricsPreference;
188
190
191 Aws::Vector<UtilizationPreference> m_utilizationPreferences;
192
193 Aws::Vector<EffectivePreferredResource> m_preferredResources;
194
195 Aws::String m_requestId;
196 bool m_enhancedInfrastructureMetricsHasBeenSet = false;
197 bool m_externalMetricsPreferenceHasBeenSet = false;
198 bool m_lookBackPeriodHasBeenSet = false;
199 bool m_utilizationPreferencesHasBeenSet = false;
200 bool m_preferredResourcesHasBeenSet = false;
201 bool m_requestIdHasBeenSet = false;
202};
203
204} // namespace Model
205} // namespace ComputeOptimizer
206} // namespace Aws
GetEffectiveRecommendationPreferencesResult & WithUtilizationPreferences(UtilizationPreferencesT &&value)
AWS_COMPUTEOPTIMIZER_API GetEffectiveRecommendationPreferencesResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
GetEffectiveRecommendationPreferencesResult & AddUtilizationPreferences(UtilizationPreferencesT &&value)
GetEffectiveRecommendationPreferencesResult & WithExternalMetricsPreference(ExternalMetricsPreferenceT &&value)
GetEffectiveRecommendationPreferencesResult & WithPreferredResources(PreferredResourcesT &&value)
GetEffectiveRecommendationPreferencesResult & WithEnhancedInfrastructureMetrics(EnhancedInfrastructureMetrics value)
GetEffectiveRecommendationPreferencesResult & WithLookBackPeriod(LookBackPeriodPreference value)
AWS_COMPUTEOPTIMIZER_API GetEffectiveRecommendationPreferencesResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
GetEffectiveRecommendationPreferencesResult & AddPreferredResources(PreferredResourcesT &&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