AWS SDK for C++

AWS SDK for C++ Version 1.11.829

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#include <aws/crt/cbor/Cbor.h>
17
18#include <utility>
19namespace Aws {
20template <typename RESULT_TYPE>
21class AmazonWebServiceResult;
22
23namespace Utils {
24namespace Cbor {
25class CborValue;
26} // namespace Cbor
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
103 inline LookBackPeriodPreference GetLookBackPeriod() const { return m_lookBackPeriod; }
105 m_lookBackPeriodHasBeenSet = true;
106 m_lookBackPeriod = value;
107 }
109 SetLookBackPeriod(value);
110 return *this;
111 }
113
115
124 inline const Aws::Vector<UtilizationPreference>& GetUtilizationPreferences() const { return m_utilizationPreferences; }
125 template <typename UtilizationPreferencesT = Aws::Vector<UtilizationPreference>>
126 void SetUtilizationPreferences(UtilizationPreferencesT&& value) {
127 m_utilizationPreferencesHasBeenSet = true;
128 m_utilizationPreferences = std::forward<UtilizationPreferencesT>(value);
129 }
130 template <typename UtilizationPreferencesT = Aws::Vector<UtilizationPreference>>
132 SetUtilizationPreferences(std::forward<UtilizationPreferencesT>(value));
133 return *this;
134 }
135 template <typename UtilizationPreferencesT = UtilizationPreference>
137 m_utilizationPreferencesHasBeenSet = true;
138 m_utilizationPreferences.emplace_back(std::forward<UtilizationPreferencesT>(value));
139 return *this;
140 }
142
144
154 inline const Aws::Vector<EffectivePreferredResource>& GetPreferredResources() const { return m_preferredResources; }
155 template <typename PreferredResourcesT = Aws::Vector<EffectivePreferredResource>>
156 void SetPreferredResources(PreferredResourcesT&& value) {
157 m_preferredResourcesHasBeenSet = true;
158 m_preferredResources = std::forward<PreferredResourcesT>(value);
159 }
160 template <typename PreferredResourcesT = Aws::Vector<EffectivePreferredResource>>
162 SetPreferredResources(std::forward<PreferredResourcesT>(value));
163 return *this;
164 }
165 template <typename PreferredResourcesT = EffectivePreferredResource>
167 m_preferredResourcesHasBeenSet = true;
168 m_preferredResources.emplace_back(std::forward<PreferredResourcesT>(value));
169 return *this;
170 }
172
174
175 inline const Aws::String& GetRequestId() const { return m_requestId; }
176 template <typename RequestIdT = Aws::String>
177 void SetRequestId(RequestIdT&& value) {
178 m_requestIdHasBeenSet = true;
179 m_requestId = std::forward<RequestIdT>(value);
180 }
181 template <typename RequestIdT = Aws::String>
183 SetRequestId(std::forward<RequestIdT>(value));
184 return *this;
185 }
187 inline Aws::Http::HttpResponseCode GetHttpResponseCode() const { return m_HttpResponseCode; }
188
189 private:
191
192 ExternalMetricsPreference m_externalMetricsPreference;
193
195
196 Aws::Vector<UtilizationPreference> m_utilizationPreferences;
197
198 Aws::Vector<EffectivePreferredResource> m_preferredResources;
199
200 Aws::String m_requestId;
201 Aws::Http::HttpResponseCode m_HttpResponseCode;
202 bool m_enhancedInfrastructureMetricsHasBeenSet = false;
203 bool m_externalMetricsPreferenceHasBeenSet = false;
204 bool m_lookBackPeriodHasBeenSet = false;
205 bool m_utilizationPreferencesHasBeenSet = false;
206 bool m_preferredResourcesHasBeenSet = false;
207 bool m_requestIdHasBeenSet = false;
208};
209
210} // namespace Model
211} // namespace ComputeOptimizer
212} // namespace Aws
GetEffectiveRecommendationPreferencesResult & WithUtilizationPreferences(UtilizationPreferencesT &&value)
AWS_COMPUTEOPTIMIZER_API GetEffectiveRecommendationPreferencesResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Cbor::CborValue > &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::Cbor::CborValue > &result)
GetEffectiveRecommendationPreferencesResult & AddPreferredResources(PreferredResourcesT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector