AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
GetEffectiveRecommendationPreferencesResult.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/compute-optimizer/model/EnhancedInfrastructureMetrics.h>
9#include <aws/compute-optimizer/model/ExternalMetricsPreference.h>
10#include <aws/compute-optimizer/model/LookBackPeriodPreference.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/compute-optimizer/model/UtilizationPreference.h>
14#include <aws/compute-optimizer/model/EffectivePreferredResource.h>
15#include <utility>
16
17namespace Aws
18{
19template<typename RESULT_TYPE>
20class AmazonWebServiceResult;
21
22namespace Utils
23{
24namespace Json
25{
26 class JsonValue;
27} // namespace Json
28} // namespace Utils
29namespace ComputeOptimizer
30{
31namespace Model
32{
34 {
35 public:
36 AWS_COMPUTEOPTIMIZER_API GetEffectiveRecommendationPreferencesResult() = default;
39
40
42
57 inline EnhancedInfrastructureMetrics GetEnhancedInfrastructureMetrics() const { return m_enhancedInfrastructureMetrics; }
58 inline void SetEnhancedInfrastructureMetrics(EnhancedInfrastructureMetrics value) { m_enhancedInfrastructureMetricsHasBeenSet = true; m_enhancedInfrastructureMetrics = value; }
61
63
77 inline const ExternalMetricsPreference& GetExternalMetricsPreference() const { return m_externalMetricsPreference; }
78 template<typename ExternalMetricsPreferenceT = ExternalMetricsPreference>
79 void SetExternalMetricsPreference(ExternalMetricsPreferenceT&& value) { m_externalMetricsPreferenceHasBeenSet = true; m_externalMetricsPreference = std::forward<ExternalMetricsPreferenceT>(value); }
80 template<typename ExternalMetricsPreferenceT = ExternalMetricsPreference>
81 GetEffectiveRecommendationPreferencesResult& WithExternalMetricsPreference(ExternalMetricsPreferenceT&& value) { SetExternalMetricsPreference(std::forward<ExternalMetricsPreferenceT>(value)); return *this;}
83
85
92 inline LookBackPeriodPreference GetLookBackPeriod() const { return m_lookBackPeriod; }
93 inline void SetLookBackPeriod(LookBackPeriodPreference value) { m_lookBackPeriodHasBeenSet = true; m_lookBackPeriod = value; }
96
98
107 inline const Aws::Vector<UtilizationPreference>& GetUtilizationPreferences() const { return m_utilizationPreferences; }
108 template<typename UtilizationPreferencesT = Aws::Vector<UtilizationPreference>>
109 void SetUtilizationPreferences(UtilizationPreferencesT&& value) { m_utilizationPreferencesHasBeenSet = true; m_utilizationPreferences = std::forward<UtilizationPreferencesT>(value); }
110 template<typename UtilizationPreferencesT = Aws::Vector<UtilizationPreference>>
111 GetEffectiveRecommendationPreferencesResult& WithUtilizationPreferences(UtilizationPreferencesT&& value) { SetUtilizationPreferences(std::forward<UtilizationPreferencesT>(value)); return *this;}
112 template<typename UtilizationPreferencesT = UtilizationPreference>
113 GetEffectiveRecommendationPreferencesResult& AddUtilizationPreferences(UtilizationPreferencesT&& value) { m_utilizationPreferencesHasBeenSet = true; m_utilizationPreferences.emplace_back(std::forward<UtilizationPreferencesT>(value)); return *this; }
115
117
127 inline const Aws::Vector<EffectivePreferredResource>& GetPreferredResources() const { return m_preferredResources; }
128 template<typename PreferredResourcesT = Aws::Vector<EffectivePreferredResource>>
129 void SetPreferredResources(PreferredResourcesT&& value) { m_preferredResourcesHasBeenSet = true; m_preferredResources = std::forward<PreferredResourcesT>(value); }
130 template<typename PreferredResourcesT = Aws::Vector<EffectivePreferredResource>>
131 GetEffectiveRecommendationPreferencesResult& WithPreferredResources(PreferredResourcesT&& value) { SetPreferredResources(std::forward<PreferredResourcesT>(value)); return *this;}
132 template<typename PreferredResourcesT = EffectivePreferredResource>
133 GetEffectiveRecommendationPreferencesResult& AddPreferredResources(PreferredResourcesT&& value) { m_preferredResourcesHasBeenSet = true; m_preferredResources.emplace_back(std::forward<PreferredResourcesT>(value)); return *this; }
135
137
138 inline const Aws::String& GetRequestId() const { return m_requestId; }
139 template<typename RequestIdT = Aws::String>
140 void SetRequestId(RequestIdT&& value) { m_requestIdHasBeenSet = true; m_requestId = std::forward<RequestIdT>(value); }
141 template<typename RequestIdT = Aws::String>
142 GetEffectiveRecommendationPreferencesResult& WithRequestId(RequestIdT&& value) { SetRequestId(std::forward<RequestIdT>(value)); return *this;}
144 private:
145
147 bool m_enhancedInfrastructureMetricsHasBeenSet = false;
148
149 ExternalMetricsPreference m_externalMetricsPreference;
150 bool m_externalMetricsPreferenceHasBeenSet = false;
151
153 bool m_lookBackPeriodHasBeenSet = false;
154
155 Aws::Vector<UtilizationPreference> m_utilizationPreferences;
156 bool m_utilizationPreferencesHasBeenSet = false;
157
158 Aws::Vector<EffectivePreferredResource> m_preferredResources;
159 bool m_preferredResourcesHasBeenSet = false;
160
161 Aws::String m_requestId;
162 bool m_requestIdHasBeenSet = false;
163 };
164
165} // namespace Model
166} // namespace ComputeOptimizer
167} // 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