AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Ec2ReservedInstancesConfiguration.h
1
6#pragma once
7#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <utility>
10
11namespace Aws
12{
13namespace Utils
14{
15namespace Json
16{
17 class JsonValue;
18 class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CostOptimizationHub
22{
23namespace Model
24{
25
33 {
34 public:
35 AWS_COSTOPTIMIZATIONHUB_API Ec2ReservedInstancesConfiguration() = default;
36 AWS_COSTOPTIMIZATIONHUB_API Ec2ReservedInstancesConfiguration(Aws::Utils::Json::JsonView jsonValue);
38 AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
45 inline const Aws::String& GetAccountScope() const { return m_accountScope; }
46 inline bool AccountScopeHasBeenSet() const { return m_accountScopeHasBeenSet; }
47 template<typename AccountScopeT = Aws::String>
48 void SetAccountScope(AccountScopeT&& value) { m_accountScopeHasBeenSet = true; m_accountScope = std::forward<AccountScopeT>(value); }
49 template<typename AccountScopeT = Aws::String>
50 Ec2ReservedInstancesConfiguration& WithAccountScope(AccountScopeT&& value) { SetAccountScope(std::forward<AccountScopeT>(value)); return *this;}
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) { m_serviceHasBeenSet = true; m_service = std::forward<ServiceT>(value); }
61 template<typename ServiceT = Aws::String>
62 Ec2ReservedInstancesConfiguration& WithService(ServiceT&& value) { SetService(std::forward<ServiceT>(value)); return *this;}
64
66
69 inline const Aws::String& GetTerm() const { return m_term; }
70 inline bool TermHasBeenSet() const { return m_termHasBeenSet; }
71 template<typename TermT = Aws::String>
72 void SetTerm(TermT&& value) { m_termHasBeenSet = true; m_term = std::forward<TermT>(value); }
73 template<typename TermT = Aws::String>
74 Ec2ReservedInstancesConfiguration& WithTerm(TermT&& value) { SetTerm(std::forward<TermT>(value)); return *this;}
76
78
81 inline const Aws::String& GetPaymentOption() const { return m_paymentOption; }
82 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
83 template<typename PaymentOptionT = Aws::String>
84 void SetPaymentOption(PaymentOptionT&& value) { m_paymentOptionHasBeenSet = true; m_paymentOption = std::forward<PaymentOptionT>(value); }
85 template<typename PaymentOptionT = Aws::String>
86 Ec2ReservedInstancesConfiguration& WithPaymentOption(PaymentOptionT&& value) { SetPaymentOption(std::forward<PaymentOptionT>(value)); return *this;}
88
90
93 inline const Aws::String& GetReservedInstancesRegion() const { return m_reservedInstancesRegion; }
94 inline bool ReservedInstancesRegionHasBeenSet() const { return m_reservedInstancesRegionHasBeenSet; }
95 template<typename ReservedInstancesRegionT = Aws::String>
96 void SetReservedInstancesRegion(ReservedInstancesRegionT&& value) { m_reservedInstancesRegionHasBeenSet = true; m_reservedInstancesRegion = std::forward<ReservedInstancesRegionT>(value); }
97 template<typename ReservedInstancesRegionT = Aws::String>
98 Ec2ReservedInstancesConfiguration& WithReservedInstancesRegion(ReservedInstancesRegionT&& value) { SetReservedInstancesRegion(std::forward<ReservedInstancesRegionT>(value)); return *this;}
100
102
105 inline const Aws::String& GetUpfrontCost() const { return m_upfrontCost; }
106 inline bool UpfrontCostHasBeenSet() const { return m_upfrontCostHasBeenSet; }
107 template<typename UpfrontCostT = Aws::String>
108 void SetUpfrontCost(UpfrontCostT&& value) { m_upfrontCostHasBeenSet = true; m_upfrontCost = std::forward<UpfrontCostT>(value); }
109 template<typename UpfrontCostT = Aws::String>
110 Ec2ReservedInstancesConfiguration& WithUpfrontCost(UpfrontCostT&& value) { SetUpfrontCost(std::forward<UpfrontCostT>(value)); return *this;}
112
114
118 inline const Aws::String& GetMonthlyRecurringCost() const { return m_monthlyRecurringCost; }
119 inline bool MonthlyRecurringCostHasBeenSet() const { return m_monthlyRecurringCostHasBeenSet; }
120 template<typename MonthlyRecurringCostT = Aws::String>
121 void SetMonthlyRecurringCost(MonthlyRecurringCostT&& value) { m_monthlyRecurringCostHasBeenSet = true; m_monthlyRecurringCost = std::forward<MonthlyRecurringCostT>(value); }
122 template<typename MonthlyRecurringCostT = Aws::String>
123 Ec2ReservedInstancesConfiguration& WithMonthlyRecurringCost(MonthlyRecurringCostT&& value) { SetMonthlyRecurringCost(std::forward<MonthlyRecurringCostT>(value)); return *this;}
125
127
131 inline const Aws::String& GetNormalizedUnitsToPurchase() const { return m_normalizedUnitsToPurchase; }
132 inline bool NormalizedUnitsToPurchaseHasBeenSet() const { return m_normalizedUnitsToPurchaseHasBeenSet; }
133 template<typename NormalizedUnitsToPurchaseT = Aws::String>
134 void SetNormalizedUnitsToPurchase(NormalizedUnitsToPurchaseT&& value) { m_normalizedUnitsToPurchaseHasBeenSet = true; m_normalizedUnitsToPurchase = std::forward<NormalizedUnitsToPurchaseT>(value); }
135 template<typename NormalizedUnitsToPurchaseT = Aws::String>
136 Ec2ReservedInstancesConfiguration& WithNormalizedUnitsToPurchase(NormalizedUnitsToPurchaseT&& value) { SetNormalizedUnitsToPurchase(std::forward<NormalizedUnitsToPurchaseT>(value)); return *this;}
138
140
144 inline const Aws::String& GetNumberOfInstancesToPurchase() const { return m_numberOfInstancesToPurchase; }
145 inline bool NumberOfInstancesToPurchaseHasBeenSet() const { return m_numberOfInstancesToPurchaseHasBeenSet; }
146 template<typename NumberOfInstancesToPurchaseT = Aws::String>
147 void SetNumberOfInstancesToPurchase(NumberOfInstancesToPurchaseT&& value) { m_numberOfInstancesToPurchaseHasBeenSet = true; m_numberOfInstancesToPurchase = std::forward<NumberOfInstancesToPurchaseT>(value); }
148 template<typename NumberOfInstancesToPurchaseT = Aws::String>
149 Ec2ReservedInstancesConfiguration& WithNumberOfInstancesToPurchase(NumberOfInstancesToPurchaseT&& value) { SetNumberOfInstancesToPurchase(std::forward<NumberOfInstancesToPurchaseT>(value)); return *this;}
151
153
157 inline const Aws::String& GetOfferingClass() const { return m_offeringClass; }
158 inline bool OfferingClassHasBeenSet() const { return m_offeringClassHasBeenSet; }
159 template<typename OfferingClassT = Aws::String>
160 void SetOfferingClass(OfferingClassT&& value) { m_offeringClassHasBeenSet = true; m_offeringClass = std::forward<OfferingClassT>(value); }
161 template<typename OfferingClassT = Aws::String>
162 Ec2ReservedInstancesConfiguration& WithOfferingClass(OfferingClassT&& value) { SetOfferingClass(std::forward<OfferingClassT>(value)); return *this;}
164
166
169 inline const Aws::String& GetInstanceFamily() const { return m_instanceFamily; }
170 inline bool InstanceFamilyHasBeenSet() const { return m_instanceFamilyHasBeenSet; }
171 template<typename InstanceFamilyT = Aws::String>
172 void SetInstanceFamily(InstanceFamilyT&& value) { m_instanceFamilyHasBeenSet = true; m_instanceFamily = std::forward<InstanceFamilyT>(value); }
173 template<typename InstanceFamilyT = Aws::String>
174 Ec2ReservedInstancesConfiguration& WithInstanceFamily(InstanceFamilyT&& value) { SetInstanceFamily(std::forward<InstanceFamilyT>(value)); return *this;}
176
178
181 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
182 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
183 template<typename InstanceTypeT = Aws::String>
184 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
185 template<typename InstanceTypeT = Aws::String>
186 Ec2ReservedInstancesConfiguration& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
188
190
194 inline const Aws::String& GetCurrentGeneration() const { return m_currentGeneration; }
195 inline bool CurrentGenerationHasBeenSet() const { return m_currentGenerationHasBeenSet; }
196 template<typename CurrentGenerationT = Aws::String>
197 void SetCurrentGeneration(CurrentGenerationT&& value) { m_currentGenerationHasBeenSet = true; m_currentGeneration = std::forward<CurrentGenerationT>(value); }
198 template<typename CurrentGenerationT = Aws::String>
199 Ec2ReservedInstancesConfiguration& WithCurrentGeneration(CurrentGenerationT&& value) { SetCurrentGeneration(std::forward<CurrentGenerationT>(value)); return *this;}
201
203
207 inline const Aws::String& GetPlatform() const { return m_platform; }
208 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
209 template<typename PlatformT = Aws::String>
210 void SetPlatform(PlatformT&& value) { m_platformHasBeenSet = true; m_platform = std::forward<PlatformT>(value); }
211 template<typename PlatformT = Aws::String>
212 Ec2ReservedInstancesConfiguration& WithPlatform(PlatformT&& value) { SetPlatform(std::forward<PlatformT>(value)); return *this;}
214
216
219 inline const Aws::String& GetTenancy() const { return m_tenancy; }
220 inline bool TenancyHasBeenSet() const { return m_tenancyHasBeenSet; }
221 template<typename TenancyT = Aws::String>
222 void SetTenancy(TenancyT&& value) { m_tenancyHasBeenSet = true; m_tenancy = std::forward<TenancyT>(value); }
223 template<typename TenancyT = Aws::String>
224 Ec2ReservedInstancesConfiguration& WithTenancy(TenancyT&& value) { SetTenancy(std::forward<TenancyT>(value)); return *this;}
226
228
231 inline bool GetSizeFlexEligible() const { return m_sizeFlexEligible; }
232 inline bool SizeFlexEligibleHasBeenSet() const { return m_sizeFlexEligibleHasBeenSet; }
233 inline void SetSizeFlexEligible(bool value) { m_sizeFlexEligibleHasBeenSet = true; m_sizeFlexEligible = value; }
236 private:
237
238 Aws::String m_accountScope;
239 bool m_accountScopeHasBeenSet = false;
240
241 Aws::String m_service;
242 bool m_serviceHasBeenSet = false;
243
244 Aws::String m_term;
245 bool m_termHasBeenSet = false;
246
247 Aws::String m_paymentOption;
248 bool m_paymentOptionHasBeenSet = false;
249
250 Aws::String m_reservedInstancesRegion;
251 bool m_reservedInstancesRegionHasBeenSet = false;
252
253 Aws::String m_upfrontCost;
254 bool m_upfrontCostHasBeenSet = false;
255
256 Aws::String m_monthlyRecurringCost;
257 bool m_monthlyRecurringCostHasBeenSet = false;
258
259 Aws::String m_normalizedUnitsToPurchase;
260 bool m_normalizedUnitsToPurchaseHasBeenSet = false;
261
262 Aws::String m_numberOfInstancesToPurchase;
263 bool m_numberOfInstancesToPurchaseHasBeenSet = false;
264
265 Aws::String m_offeringClass;
266 bool m_offeringClassHasBeenSet = false;
267
268 Aws::String m_instanceFamily;
269 bool m_instanceFamilyHasBeenSet = false;
270
271 Aws::String m_instanceType;
272 bool m_instanceTypeHasBeenSet = false;
273
274 Aws::String m_currentGeneration;
275 bool m_currentGenerationHasBeenSet = false;
276
277 Aws::String m_platform;
278 bool m_platformHasBeenSet = false;
279
280 Aws::String m_tenancy;
281 bool m_tenancyHasBeenSet = false;
282
283 bool m_sizeFlexEligible{false};
284 bool m_sizeFlexEligibleHasBeenSet = false;
285 };
286
287} // namespace Model
288} // namespace CostOptimizationHub
289} // 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