AWS SDK for C++

AWS SDK for C++ Version 1.11.788

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/http/HttpResponse.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16
17#include <utility>
18
19namespace Aws {
20template <typename RESULT_TYPE>
21class AmazonWebServiceResult;
22
23namespace Utils {
24namespace Json {
25class JsonValue;
26} // namespace Json
27} // namespace Utils
28namespace ComputeOptimizer {
29namespace Model {
31 public:
32 AWS_COMPUTEOPTIMIZER_API GetEffectiveRecommendationPreferencesResult() = default;
37
39
54 inline EnhancedInfrastructureMetrics GetEnhancedInfrastructureMetrics() const { return m_enhancedInfrastructureMetrics; }
56 m_enhancedInfrastructureMetricsHasBeenSet = true;
57 m_enhancedInfrastructureMetrics = value;
58 }
61 return *this;
62 }
64
66
80 inline const ExternalMetricsPreference& GetExternalMetricsPreference() const { return m_externalMetricsPreference; }
81 template <typename ExternalMetricsPreferenceT = ExternalMetricsPreference>
82 void SetExternalMetricsPreference(ExternalMetricsPreferenceT&& value) {
83 m_externalMetricsPreferenceHasBeenSet = true;
84 m_externalMetricsPreference = std::forward<ExternalMetricsPreferenceT>(value);
85 }
86 template <typename ExternalMetricsPreferenceT = ExternalMetricsPreference>
88 SetExternalMetricsPreference(std::forward<ExternalMetricsPreferenceT>(value));
89 return *this;
90 }
92
94
101 inline LookBackPeriodPreference GetLookBackPeriod() const { return m_lookBackPeriod; }
103 m_lookBackPeriodHasBeenSet = true;
104 m_lookBackPeriod = value;
105 }
107 SetLookBackPeriod(value);
108 return *this;
109 }
111
113
122 inline const Aws::Vector<UtilizationPreference>& GetUtilizationPreferences() const { return m_utilizationPreferences; }
123 template <typename UtilizationPreferencesT = Aws::Vector<UtilizationPreference>>
124 void SetUtilizationPreferences(UtilizationPreferencesT&& value) {
125 m_utilizationPreferencesHasBeenSet = true;
126 m_utilizationPreferences = std::forward<UtilizationPreferencesT>(value);
127 }
128 template <typename UtilizationPreferencesT = Aws::Vector<UtilizationPreference>>
130 SetUtilizationPreferences(std::forward<UtilizationPreferencesT>(value));
131 return *this;
132 }
133 template <typename UtilizationPreferencesT = UtilizationPreference>
135 m_utilizationPreferencesHasBeenSet = true;
136 m_utilizationPreferences.emplace_back(std::forward<UtilizationPreferencesT>(value));
137 return *this;
138 }
140
142
152 inline const Aws::Vector<EffectivePreferredResource>& GetPreferredResources() const { return m_preferredResources; }
153 template <typename PreferredResourcesT = Aws::Vector<EffectivePreferredResource>>
154 void SetPreferredResources(PreferredResourcesT&& value) {
155 m_preferredResourcesHasBeenSet = true;
156 m_preferredResources = std::forward<PreferredResourcesT>(value);
157 }
158 template <typename PreferredResourcesT = Aws::Vector<EffectivePreferredResource>>
160 SetPreferredResources(std::forward<PreferredResourcesT>(value));
161 return *this;
162 }
163 template <typename PreferredResourcesT = EffectivePreferredResource>
165 m_preferredResourcesHasBeenSet = true;
166 m_preferredResources.emplace_back(std::forward<PreferredResourcesT>(value));
167 return *this;
168 }
170
172
173 inline const Aws::String& GetRequestId() const { return m_requestId; }
174 template <typename RequestIdT = Aws::String>
175 void SetRequestId(RequestIdT&& value) {
176 m_requestIdHasBeenSet = true;
177 m_requestId = std::forward<RequestIdT>(value);
178 }
179 template <typename RequestIdT = Aws::String>
181 SetRequestId(std::forward<RequestIdT>(value));
182 return *this;
183 }
185 inline Aws::Http::HttpResponseCode GetHttpResponseCode() const { return m_HttpResponseCode; }
186
187 private:
189
190 ExternalMetricsPreference m_externalMetricsPreference;
191
193
194 Aws::Vector<UtilizationPreference> m_utilizationPreferences;
195
196 Aws::Vector<EffectivePreferredResource> m_preferredResources;
197
198 Aws::String m_requestId;
199 Aws::Http::HttpResponseCode m_HttpResponseCode;
200 bool m_enhancedInfrastructureMetricsHasBeenSet = false;
201 bool m_externalMetricsPreferenceHasBeenSet = false;
202 bool m_lookBackPeriodHasBeenSet = false;
203 bool m_utilizationPreferencesHasBeenSet = false;
204 bool m_preferredResourcesHasBeenSet = false;
205 bool m_requestIdHasBeenSet = false;
206};
207
208} // namespace Model
209} // namespace ComputeOptimizer
210} // 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