7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/CurrencyCodeValues.h>
12#include <aws/ec2/model/InstanceType.h>
13#include <aws/ec2/model/OfferingClassType.h>
14#include <aws/ec2/model/OfferingTypeValues.h>
15#include <aws/ec2/model/PricingDetail.h>
16#include <aws/ec2/model/RIProductDescription.h>
17#include <aws/ec2/model/RecurringCharge.h>
18#include <aws/ec2/model/Scope.h>
19#include <aws/ec2/model/Tenancy.h>
55 m_currencyCodeHasBeenSet =
true;
56 m_currencyCode = value;
71 m_instanceTenancyHasBeenSet =
true;
72 m_instanceTenancy = value;
89 m_marketplaceHasBeenSet =
true;
90 m_marketplace = value;
107 m_offeringClassHasBeenSet =
true;
108 m_offeringClass = value;
123 m_offeringTypeHasBeenSet =
true;
124 m_offeringType = value;
138 template <
typename PricingDetailsT = Aws::Vector<PricingDetail>>
140 m_pricingDetailsHasBeenSet =
true;
141 m_pricingDetails = std::forward<PricingDetailsT>(value);
143 template <
typename PricingDetailsT = Aws::Vector<PricingDetail>>
148 template <
typename PricingDetailsT = PricingDetail>
150 m_pricingDetailsHasBeenSet =
true;
151 m_pricingDetails.emplace_back(std::forward<PricingDetailsT>(value));
162 template <
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
164 m_recurringChargesHasBeenSet =
true;
165 m_recurringCharges = std::forward<RecurringChargesT>(value);
167 template <
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
172 template <
typename RecurringChargesT = RecurringCharge>
174 m_recurringChargesHasBeenSet =
true;
175 m_recurringCharges.emplace_back(std::forward<RecurringChargesT>(value));
188 m_scopeHasBeenSet =
true;
203 template <
typename AvailabilityZoneIdT = Aws::String>
205 m_availabilityZoneIdHasBeenSet =
true;
206 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
208 template <
typename AvailabilityZoneIdT = Aws::String>
223 template <
typename ReservedInstancesOfferingIdT = Aws::String>
225 m_reservedInstancesOfferingIdHasBeenSet =
true;
226 m_reservedInstancesOfferingId = std::forward<ReservedInstancesOfferingIdT>(value);
228 template <
typename ReservedInstancesOfferingIdT = Aws::String>
242 m_instanceTypeHasBeenSet =
true;
243 m_instanceType = value;
257 template <
typename AvailabilityZoneT = Aws::String>
259 m_availabilityZoneHasBeenSet =
true;
260 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
262 template <
typename AvailabilityZoneT = Aws::String>
276 m_durationHasBeenSet =
true;
292 m_usagePriceHasBeenSet =
true;
293 m_usagePrice = value;
308 m_fixedPriceHasBeenSet =
true;
309 m_fixedPrice = value;
324 m_productDescriptionHasBeenSet =
true;
325 m_productDescription = value;
337 bool m_marketplace{
false};
357 long long m_duration{0};
359 double m_usagePrice{0.0};
361 double m_fixedPrice{0.0};
364 bool m_currencyCodeHasBeenSet =
false;
365 bool m_instanceTenancyHasBeenSet =
false;
366 bool m_marketplaceHasBeenSet =
false;
367 bool m_offeringClassHasBeenSet =
false;
368 bool m_offeringTypeHasBeenSet =
false;
369 bool m_pricingDetailsHasBeenSet =
false;
370 bool m_recurringChargesHasBeenSet =
false;
371 bool m_scopeHasBeenSet =
false;
372 bool m_availabilityZoneIdHasBeenSet =
false;
373 bool m_reservedInstancesOfferingIdHasBeenSet =
false;
374 bool m_instanceTypeHasBeenSet =
false;
375 bool m_availabilityZoneHasBeenSet =
false;
376 bool m_durationHasBeenSet =
false;
377 bool m_usagePriceHasBeenSet =
false;
378 bool m_fixedPriceHasBeenSet =
false;
379 bool m_productDescriptionHasBeenSet =
false;
double GetFixedPrice() const
ReservedInstancesOffering & WithMarketplace(bool value)
ReservedInstancesOffering & WithProductDescription(RIProductDescription value)
void SetUsagePrice(double value)
InstanceType GetInstanceType() const
ReservedInstancesOffering & WithInstanceType(InstanceType value)
bool PricingDetailsHasBeenSet() const
bool AvailabilityZoneIdHasBeenSet() const
bool FixedPriceHasBeenSet() const
bool ProductDescriptionHasBeenSet() const
Tenancy GetInstanceTenancy() const
ReservedInstancesOffering & WithReservedInstancesOfferingId(ReservedInstancesOfferingIdT &&value)
const Aws::String & GetAvailabilityZone() const
bool ReservedInstancesOfferingIdHasBeenSet() const
ReservedInstancesOffering & WithOfferingType(OfferingTypeValues value)
void SetRecurringCharges(RecurringChargesT &&value)
void SetOfferingType(OfferingTypeValues value)
ReservedInstancesOffering & WithUsagePrice(double value)
long long GetDuration() const
bool GetMarketplace() const
const Aws::String & GetReservedInstancesOfferingId() const
void SetProductDescription(RIProductDescription value)
void SetMarketplace(bool value)
ReservedInstancesOffering & WithOfferingClass(OfferingClassType value)
void SetPricingDetails(PricingDetailsT &&value)
bool UsagePriceHasBeenSet() const
AWS_EC2_API ReservedInstancesOffering & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetCurrencyCode(CurrencyCodeValues value)
bool InstanceTypeHasBeenSet() const
void SetDuration(long long value)
ReservedInstancesOffering & WithDuration(long long value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
bool ScopeHasBeenSet() const
ReservedInstancesOffering & WithRecurringCharges(RecurringChargesT &&value)
bool InstanceTenancyHasBeenSet() const
bool DurationHasBeenSet() const
CurrencyCodeValues GetCurrencyCode() const
bool OfferingTypeHasBeenSet() const
void SetInstanceTenancy(Tenancy value)
RIProductDescription GetProductDescription() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool AvailabilityZoneHasBeenSet() const
ReservedInstancesOffering & WithFixedPrice(double value)
void SetAvailabilityZone(AvailabilityZoneT &&value)
OfferingTypeValues GetOfferingType() const
bool OfferingClassHasBeenSet() const
void SetReservedInstancesOfferingId(ReservedInstancesOfferingIdT &&value)
AWS_EC2_API ReservedInstancesOffering(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< PricingDetail > & GetPricingDetails() const
void SetInstanceType(InstanceType value)
double GetUsagePrice() const
void SetOfferingClass(OfferingClassType value)
bool MarketplaceHasBeenSet() const
ReservedInstancesOffering & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
OfferingClassType GetOfferingClass() const
void SetFixedPrice(double value)
const Aws::String & GetAvailabilityZoneId() const
ReservedInstancesOffering & WithPricingDetails(PricingDetailsT &&value)
void SetScope(Scope value)
ReservedInstancesOffering & WithInstanceTenancy(Tenancy value)
ReservedInstancesOffering & AddRecurringCharges(RecurringChargesT &&value)
const Aws::Vector< RecurringCharge > & GetRecurringCharges() const
AWS_EC2_API ReservedInstancesOffering()=default
ReservedInstancesOffering & AddPricingDetails(PricingDetailsT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
ReservedInstancesOffering & WithScope(Scope value)
bool RecurringChargesHasBeenSet() const
bool CurrencyCodeHasBeenSet() const
ReservedInstancesOffering & WithCurrencyCode(CurrencyCodeValues value)
ReservedInstancesOffering & WithAvailabilityZone(AvailabilityZoneT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream