AWS SDK for C++

AWS SDK for C++ Version 1.11.754

Loading...
Searching...
No Matches
Ec2ReservedInstancesConfiguration.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 Ec2ReservedInstancesConfiguration() = default;
31 AWS_COSTOPTIMIZATIONHUB_API Ec2ReservedInstancesConfiguration(Aws::Utils::Json::JsonView jsonValue);
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
205 inline const Aws::String& GetOfferingClass() const { return m_offeringClass; }
206 inline bool OfferingClassHasBeenSet() const { return m_offeringClassHasBeenSet; }
207 template <typename OfferingClassT = Aws::String>
208 void SetOfferingClass(OfferingClassT&& value) {
209 m_offeringClassHasBeenSet = true;
210 m_offeringClass = std::forward<OfferingClassT>(value);
211 }
212 template <typename OfferingClassT = Aws::String>
214 SetOfferingClass(std::forward<OfferingClassT>(value));
215 return *this;
216 }
218
220
223 inline const Aws::String& GetInstanceFamily() const { return m_instanceFamily; }
224 inline bool InstanceFamilyHasBeenSet() const { return m_instanceFamilyHasBeenSet; }
225 template <typename InstanceFamilyT = Aws::String>
226 void SetInstanceFamily(InstanceFamilyT&& value) {
227 m_instanceFamilyHasBeenSet = true;
228 m_instanceFamily = std::forward<InstanceFamilyT>(value);
229 }
230 template <typename InstanceFamilyT = Aws::String>
232 SetInstanceFamily(std::forward<InstanceFamilyT>(value));
233 return *this;
234 }
236
238
241 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
242 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
243 template <typename InstanceTypeT = Aws::String>
244 void SetInstanceType(InstanceTypeT&& value) {
245 m_instanceTypeHasBeenSet = true;
246 m_instanceType = std::forward<InstanceTypeT>(value);
247 }
248 template <typename InstanceTypeT = Aws::String>
250 SetInstanceType(std::forward<InstanceTypeT>(value));
251 return *this;
252 }
254
256
260 inline const Aws::String& GetCurrentGeneration() const { return m_currentGeneration; }
261 inline bool CurrentGenerationHasBeenSet() const { return m_currentGenerationHasBeenSet; }
262 template <typename CurrentGenerationT = Aws::String>
263 void SetCurrentGeneration(CurrentGenerationT&& value) {
264 m_currentGenerationHasBeenSet = true;
265 m_currentGeneration = std::forward<CurrentGenerationT>(value);
266 }
267 template <typename CurrentGenerationT = Aws::String>
269 SetCurrentGeneration(std::forward<CurrentGenerationT>(value));
270 return *this;
271 }
273
275
279 inline const Aws::String& GetPlatform() const { return m_platform; }
280 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
281 template <typename PlatformT = Aws::String>
282 void SetPlatform(PlatformT&& value) {
283 m_platformHasBeenSet = true;
284 m_platform = std::forward<PlatformT>(value);
285 }
286 template <typename PlatformT = Aws::String>
288 SetPlatform(std::forward<PlatformT>(value));
289 return *this;
290 }
292
294
297 inline const Aws::String& GetTenancy() const { return m_tenancy; }
298 inline bool TenancyHasBeenSet() const { return m_tenancyHasBeenSet; }
299 template <typename TenancyT = Aws::String>
300 void SetTenancy(TenancyT&& value) {
301 m_tenancyHasBeenSet = true;
302 m_tenancy = std::forward<TenancyT>(value);
303 }
304 template <typename TenancyT = Aws::String>
306 SetTenancy(std::forward<TenancyT>(value));
307 return *this;
308 }
310
312
315 inline bool GetSizeFlexEligible() const { return m_sizeFlexEligible; }
316 inline bool SizeFlexEligibleHasBeenSet() const { return m_sizeFlexEligibleHasBeenSet; }
317 inline void SetSizeFlexEligible(bool value) {
318 m_sizeFlexEligibleHasBeenSet = true;
319 m_sizeFlexEligible = value;
320 }
322 SetSizeFlexEligible(value);
323 return *this;
324 }
326 private:
327 Aws::String m_accountScope;
328
329 Aws::String m_service;
330
331 Aws::String m_term;
332
333 Aws::String m_paymentOption;
334
335 Aws::String m_reservedInstancesRegion;
336
337 Aws::String m_upfrontCost;
338
339 Aws::String m_monthlyRecurringCost;
340
341 Aws::String m_normalizedUnitsToPurchase;
342
343 Aws::String m_numberOfInstancesToPurchase;
344
345 Aws::String m_offeringClass;
346
347 Aws::String m_instanceFamily;
348
349 Aws::String m_instanceType;
350
351 Aws::String m_currentGeneration;
352
353 Aws::String m_platform;
354
355 Aws::String m_tenancy;
356
357 bool m_sizeFlexEligible{false};
358 bool m_accountScopeHasBeenSet = false;
359 bool m_serviceHasBeenSet = false;
360 bool m_termHasBeenSet = false;
361 bool m_paymentOptionHasBeenSet = false;
362 bool m_reservedInstancesRegionHasBeenSet = false;
363 bool m_upfrontCostHasBeenSet = false;
364 bool m_monthlyRecurringCostHasBeenSet = false;
365 bool m_normalizedUnitsToPurchaseHasBeenSet = false;
366 bool m_numberOfInstancesToPurchaseHasBeenSet = false;
367 bool m_offeringClassHasBeenSet = false;
368 bool m_instanceFamilyHasBeenSet = false;
369 bool m_instanceTypeHasBeenSet = false;
370 bool m_currentGenerationHasBeenSet = false;
371 bool m_platformHasBeenSet = false;
372 bool m_tenancyHasBeenSet = false;
373 bool m_sizeFlexEligibleHasBeenSet = false;
374};
375
376} // namespace Model
377} // namespace CostOptimizationHub
378} // namespace Aws
Ec2ReservedInstancesConfiguration & WithInstanceType(InstanceTypeT &&value)
Ec2ReservedInstancesConfiguration & WithAccountScope(AccountScopeT &&value)
Ec2ReservedInstancesConfiguration & WithUpfrontCost(UpfrontCostT &&value)
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
Ec2ReservedInstancesConfiguration & WithInstanceFamily(InstanceFamilyT &&value)
Ec2ReservedInstancesConfiguration & WithMonthlyRecurringCost(MonthlyRecurringCostT &&value)
Ec2ReservedInstancesConfiguration & WithOfferingClass(OfferingClassT &&value)
AWS_COSTOPTIMIZATIONHUB_API Ec2ReservedInstancesConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_COSTOPTIMIZATIONHUB_API Ec2ReservedInstancesConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
Ec2ReservedInstancesConfiguration & WithCurrentGeneration(CurrentGenerationT &&value)
Ec2ReservedInstancesConfiguration & WithNumberOfInstancesToPurchase(NumberOfInstancesToPurchaseT &&value)
Ec2ReservedInstancesConfiguration & WithPaymentOption(PaymentOptionT &&value)
Ec2ReservedInstancesConfiguration & WithNormalizedUnitsToPurchase(NormalizedUnitsToPurchaseT &&value)
Ec2ReservedInstancesConfiguration & WithReservedInstancesRegion(ReservedInstancesRegionT &&value)
AWS_COSTOPTIMIZATIONHUB_API Ec2ReservedInstancesConfiguration()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue