AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
ElastiCacheReservedInstancesConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace CostOptimizationHub {
20namespace Model {
21
29 public:
30 AWS_COSTOPTIMIZATIONHUB_API ElastiCacheReservedInstancesConfiguration() = default;
33 AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
39 inline const Aws::String& GetAccountScope() const { return m_accountScope; }
40 inline bool AccountScopeHasBeenSet() const { return m_accountScopeHasBeenSet; }
41 template <typename AccountScopeT = Aws::String>
42 void SetAccountScope(AccountScopeT&& value) {
43 m_accountScopeHasBeenSet = true;
44 m_accountScope = std::forward<AccountScopeT>(value);
45 }
46 template <typename AccountScopeT = Aws::String>
48 SetAccountScope(std::forward<AccountScopeT>(value));
49 return *this;
50 }
52
54
57 inline const Aws::String& GetService() const { return m_service; }
58 inline bool ServiceHasBeenSet() const { return m_serviceHasBeenSet; }
59 template <typename ServiceT = Aws::String>
60 void SetService(ServiceT&& value) {
61 m_serviceHasBeenSet = true;
62 m_service = std::forward<ServiceT>(value);
63 }
64 template <typename ServiceT = Aws::String>
66 SetService(std::forward<ServiceT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::String& GetTerm() const { return m_term; }
76 inline bool TermHasBeenSet() const { return m_termHasBeenSet; }
77 template <typename TermT = Aws::String>
78 void SetTerm(TermT&& value) {
79 m_termHasBeenSet = true;
80 m_term = std::forward<TermT>(value);
81 }
82 template <typename TermT = Aws::String>
84 SetTerm(std::forward<TermT>(value));
85 return *this;
86 }
88
90
93 inline const Aws::String& GetPaymentOption() const { return m_paymentOption; }
94 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
95 template <typename PaymentOptionT = Aws::String>
96 void SetPaymentOption(PaymentOptionT&& value) {
97 m_paymentOptionHasBeenSet = true;
98 m_paymentOption = std::forward<PaymentOptionT>(value);
99 }
100 template <typename PaymentOptionT = Aws::String>
102 SetPaymentOption(std::forward<PaymentOptionT>(value));
103 return *this;
104 }
106
108
111 inline const Aws::String& GetReservedInstancesRegion() const { return m_reservedInstancesRegion; }
112 inline bool ReservedInstancesRegionHasBeenSet() const { return m_reservedInstancesRegionHasBeenSet; }
113 template <typename ReservedInstancesRegionT = Aws::String>
114 void SetReservedInstancesRegion(ReservedInstancesRegionT&& value) {
115 m_reservedInstancesRegionHasBeenSet = true;
116 m_reservedInstancesRegion = std::forward<ReservedInstancesRegionT>(value);
117 }
118 template <typename ReservedInstancesRegionT = Aws::String>
120 SetReservedInstancesRegion(std::forward<ReservedInstancesRegionT>(value));
121 return *this;
122 }
124
126
129 inline const Aws::String& GetUpfrontCost() const { return m_upfrontCost; }
130 inline bool UpfrontCostHasBeenSet() const { return m_upfrontCostHasBeenSet; }
131 template <typename UpfrontCostT = Aws::String>
132 void SetUpfrontCost(UpfrontCostT&& value) {
133 m_upfrontCostHasBeenSet = true;
134 m_upfrontCost = std::forward<UpfrontCostT>(value);
135 }
136 template <typename UpfrontCostT = Aws::String>
138 SetUpfrontCost(std::forward<UpfrontCostT>(value));
139 return *this;
140 }
142
144
148 inline const Aws::String& GetMonthlyRecurringCost() const { return m_monthlyRecurringCost; }
149 inline bool MonthlyRecurringCostHasBeenSet() const { return m_monthlyRecurringCostHasBeenSet; }
150 template <typename MonthlyRecurringCostT = Aws::String>
151 void SetMonthlyRecurringCost(MonthlyRecurringCostT&& value) {
152 m_monthlyRecurringCostHasBeenSet = true;
153 m_monthlyRecurringCost = std::forward<MonthlyRecurringCostT>(value);
154 }
155 template <typename MonthlyRecurringCostT = Aws::String>
157 SetMonthlyRecurringCost(std::forward<MonthlyRecurringCostT>(value));
158 return *this;
159 }
161
163
167 inline const Aws::String& GetNormalizedUnitsToPurchase() const { return m_normalizedUnitsToPurchase; }
168 inline bool NormalizedUnitsToPurchaseHasBeenSet() const { return m_normalizedUnitsToPurchaseHasBeenSet; }
169 template <typename NormalizedUnitsToPurchaseT = Aws::String>
170 void SetNormalizedUnitsToPurchase(NormalizedUnitsToPurchaseT&& value) {
171 m_normalizedUnitsToPurchaseHasBeenSet = true;
172 m_normalizedUnitsToPurchase = std::forward<NormalizedUnitsToPurchaseT>(value);
173 }
174 template <typename NormalizedUnitsToPurchaseT = Aws::String>
176 SetNormalizedUnitsToPurchase(std::forward<NormalizedUnitsToPurchaseT>(value));
177 return *this;
178 }
180
182
186 inline const Aws::String& GetNumberOfInstancesToPurchase() const { return m_numberOfInstancesToPurchase; }
187 inline bool NumberOfInstancesToPurchaseHasBeenSet() const { return m_numberOfInstancesToPurchaseHasBeenSet; }
188 template <typename NumberOfInstancesToPurchaseT = Aws::String>
189 void SetNumberOfInstancesToPurchase(NumberOfInstancesToPurchaseT&& value) {
190 m_numberOfInstancesToPurchaseHasBeenSet = true;
191 m_numberOfInstancesToPurchase = std::forward<NumberOfInstancesToPurchaseT>(value);
192 }
193 template <typename NumberOfInstancesToPurchaseT = Aws::String>
195 SetNumberOfInstancesToPurchase(std::forward<NumberOfInstancesToPurchaseT>(value));
196 return *this;
197 }
199
201
204 inline const Aws::String& GetInstanceFamily() const { return m_instanceFamily; }
205 inline bool InstanceFamilyHasBeenSet() const { return m_instanceFamilyHasBeenSet; }
206 template <typename InstanceFamilyT = Aws::String>
207 void SetInstanceFamily(InstanceFamilyT&& value) {
208 m_instanceFamilyHasBeenSet = true;
209 m_instanceFamily = std::forward<InstanceFamilyT>(value);
210 }
211 template <typename InstanceFamilyT = Aws::String>
213 SetInstanceFamily(std::forward<InstanceFamilyT>(value));
214 return *this;
215 }
217
219
222 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
223 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
224 template <typename InstanceTypeT = Aws::String>
225 void SetInstanceType(InstanceTypeT&& value) {
226 m_instanceTypeHasBeenSet = true;
227 m_instanceType = std::forward<InstanceTypeT>(value);
228 }
229 template <typename InstanceTypeT = Aws::String>
231 SetInstanceType(std::forward<InstanceTypeT>(value));
232 return *this;
233 }
235
237
241 inline const Aws::String& GetCurrentGeneration() const { return m_currentGeneration; }
242 inline bool CurrentGenerationHasBeenSet() const { return m_currentGenerationHasBeenSet; }
243 template <typename CurrentGenerationT = Aws::String>
244 void SetCurrentGeneration(CurrentGenerationT&& value) {
245 m_currentGenerationHasBeenSet = true;
246 m_currentGeneration = std::forward<CurrentGenerationT>(value);
247 }
248 template <typename CurrentGenerationT = Aws::String>
250 SetCurrentGeneration(std::forward<CurrentGenerationT>(value));
251 return *this;
252 }
254
256
259 inline bool GetSizeFlexEligible() const { return m_sizeFlexEligible; }
260 inline bool SizeFlexEligibleHasBeenSet() const { return m_sizeFlexEligibleHasBeenSet; }
261 inline void SetSizeFlexEligible(bool value) {
262 m_sizeFlexEligibleHasBeenSet = true;
263 m_sizeFlexEligible = value;
264 }
266 SetSizeFlexEligible(value);
267 return *this;
268 }
270 private:
271 Aws::String m_accountScope;
272
273 Aws::String m_service;
274
275 Aws::String m_term;
276
277 Aws::String m_paymentOption;
278
279 Aws::String m_reservedInstancesRegion;
280
281 Aws::String m_upfrontCost;
282
283 Aws::String m_monthlyRecurringCost;
284
285 Aws::String m_normalizedUnitsToPurchase;
286
287 Aws::String m_numberOfInstancesToPurchase;
288
289 Aws::String m_instanceFamily;
290
291 Aws::String m_instanceType;
292
293 Aws::String m_currentGeneration;
294
295 bool m_sizeFlexEligible{false};
296 bool m_accountScopeHasBeenSet = false;
297 bool m_serviceHasBeenSet = false;
298 bool m_termHasBeenSet = false;
299 bool m_paymentOptionHasBeenSet = false;
300 bool m_reservedInstancesRegionHasBeenSet = false;
301 bool m_upfrontCostHasBeenSet = false;
302 bool m_monthlyRecurringCostHasBeenSet = false;
303 bool m_normalizedUnitsToPurchaseHasBeenSet = false;
304 bool m_numberOfInstancesToPurchaseHasBeenSet = false;
305 bool m_instanceFamilyHasBeenSet = false;
306 bool m_instanceTypeHasBeenSet = false;
307 bool m_currentGenerationHasBeenSet = false;
308 bool m_sizeFlexEligibleHasBeenSet = false;
309};
310
311} // namespace Model
312} // namespace CostOptimizationHub
313} // namespace Aws
ElastiCacheReservedInstancesConfiguration & WithNormalizedUnitsToPurchase(NormalizedUnitsToPurchaseT &&value)
ElastiCacheReservedInstancesConfiguration & WithReservedInstancesRegion(ReservedInstancesRegionT &&value)
ElastiCacheReservedInstancesConfiguration & WithInstanceType(InstanceTypeT &&value)
AWS_COSTOPTIMIZATIONHUB_API ElastiCacheReservedInstancesConfiguration()=default
ElastiCacheReservedInstancesConfiguration & WithAccountScope(AccountScopeT &&value)
ElastiCacheReservedInstancesConfiguration & WithPaymentOption(PaymentOptionT &&value)
AWS_COSTOPTIMIZATIONHUB_API ElastiCacheReservedInstancesConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
ElastiCacheReservedInstancesConfiguration & WithNumberOfInstancesToPurchase(NumberOfInstancesToPurchaseT &&value)
ElastiCacheReservedInstancesConfiguration & WithMonthlyRecurringCost(MonthlyRecurringCostT &&value)
ElastiCacheReservedInstancesConfiguration & WithCurrentGeneration(CurrentGenerationT &&value)
AWS_COSTOPTIMIZATIONHUB_API ElastiCacheReservedInstancesConfiguration(Aws::Utils::Json::JsonView jsonValue)
ElastiCacheReservedInstancesConfiguration & WithUpfrontCost(UpfrontCostT &&value)
ElastiCacheReservedInstancesConfiguration & WithInstanceFamily(InstanceFamilyT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue