7#include <aws/savingsplans/SavingsPlans_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/savingsplans/model/CurrencyCode.h>
10#include <aws/savingsplans/model/SavingsPlanRateUnit.h>
11#include <aws/savingsplans/model/SavingsPlanProductType.h>
12#include <aws/savingsplans/model/SavingsPlanRateServiceCode.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/savingsplans/model/SavingsPlanRateProperty.h>
52 template<
typename RateT = Aws::String>
53 void SetRate(RateT&& value) { m_rateHasBeenSet =
true; m_rate = std::forward<RateT>(value); }
54 template<
typename RateT = Aws::String>
104 template<
typename UsageTypeT = Aws::String>
105 void SetUsageType(UsageTypeT&& value) { m_usageTypeHasBeenSet =
true; m_usageType = std::forward<UsageTypeT>(value); }
106 template<
typename UsageTypeT = Aws::String>
117 template<
typename OperationT = Aws::String>
118 void SetOperation(OperationT&& value) { m_operationHasBeenSet =
true; m_operation = std::forward<OperationT>(value); }
119 template<
typename OperationT = Aws::String>
129 template<
typename PropertiesT = Aws::Vector<SavingsPlanRateProperty>>
130 void SetProperties(PropertiesT&& value) { m_propertiesHasBeenSet =
true; m_properties = std::forward<PropertiesT>(value); }
131 template<
typename PropertiesT = Aws::Vector<SavingsPlanRateProperty>>
133 template<
typename PropertiesT = SavingsPlanRateProperty>
134 SavingsPlanRate&
AddProperties(PropertiesT&& value) { m_propertiesHasBeenSet =
true; m_properties.emplace_back(std::forward<PropertiesT>(value));
return *
this; }
139 bool m_rateHasBeenSet =
false;
142 bool m_currencyHasBeenSet =
false;
145 bool m_unitHasBeenSet =
false;
148 bool m_productTypeHasBeenSet =
false;
151 bool m_serviceCodeHasBeenSet =
false;
154 bool m_usageTypeHasBeenSet =
false;
157 bool m_operationHasBeenSet =
false;
160 bool m_propertiesHasBeenSet =
false;
bool RateHasBeenSet() const
SavingsPlanProductType GetProductType() const
AWS_SAVINGSPLANS_API SavingsPlanRate(Aws::Utils::Json::JsonView jsonValue)
SavingsPlanRate & WithCurrency(CurrencyCode value)
bool OperationHasBeenSet() const
bool ProductTypeHasBeenSet() const
bool UnitHasBeenSet() const
SavingsPlanRate & WithProperties(PropertiesT &&value)
bool CurrencyHasBeenSet() const
void SetCurrency(CurrencyCode value)
bool PropertiesHasBeenSet() const
SavingsPlanRate & WithOperation(OperationT &&value)
AWS_SAVINGSPLANS_API SavingsPlanRate()=default
CurrencyCode GetCurrency() const
const Aws::String & GetRate() const
AWS_SAVINGSPLANS_API SavingsPlanRate & operator=(Aws::Utils::Json::JsonView jsonValue)
bool UsageTypeHasBeenSet() const
SavingsPlanRate & WithUsageType(UsageTypeT &&value)
SavingsPlanRate & WithRate(RateT &&value)
SavingsPlanRate & WithServiceCode(SavingsPlanRateServiceCode value)
AWS_SAVINGSPLANS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetProperties(PropertiesT &&value)
void SetUnit(SavingsPlanRateUnit value)
const Aws::String & GetOperation() const
bool ServiceCodeHasBeenSet() const
SavingsPlanRateUnit GetUnit() const
SavingsPlanRate & AddProperties(PropertiesT &&value)
void SetUsageType(UsageTypeT &&value)
SavingsPlanRate & WithUnit(SavingsPlanRateUnit value)
void SetRate(RateT &&value)
void SetProductType(SavingsPlanProductType value)
void SetOperation(OperationT &&value)
void SetServiceCode(SavingsPlanRateServiceCode value)
SavingsPlanRateServiceCode GetServiceCode() const
SavingsPlanRate & WithProductType(SavingsPlanProductType value)
const Aws::String & GetUsageType() const
const Aws::Vector< SavingsPlanRateProperty > & GetProperties() const
SavingsPlanRateServiceCode
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue