7#include <aws/billing/Billing_EXPORTS.h>
8#include <aws/billing/model/PricingPlanTier.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
43 template <
typename PricingPlanIdT = Aws::String>
45 m_pricingPlanIdHasBeenSet =
true;
46 m_pricingPlanId = std::forward<PricingPlanIdT>(value);
48 template <
typename PricingPlanIdT = Aws::String>
61 template <
typename NameT = Aws::String>
63 m_nameHasBeenSet =
true;
64 m_name = std::forward<NameT>(value);
66 template <
typename NameT = Aws::String>
68 SetName(std::forward<NameT>(value));
79 template <
typename DescriptionT = Aws::String>
81 m_descriptionHasBeenSet =
true;
82 m_description = std::forward<DescriptionT>(value);
84 template <
typename DescriptionT = Aws::String>
97 template <
typename StartDateT = Aws::Utils::DateTime>
99 m_startDateHasBeenSet =
true;
100 m_startDate = std::forward<StartDateT>(value);
102 template <
typename StartDateT = Aws::Utils::DateTime>
115 template <
typename EndDateT = Aws::Utils::DateTime>
117 m_endDateHasBeenSet =
true;
118 m_endDate = std::forward<EndDateT>(value);
120 template <
typename EndDateT = Aws::Utils::DateTime>
133 template <
typename PlanDiscountPercentT = Aws::String>
135 m_planDiscountPercentHasBeenSet =
true;
136 m_planDiscountPercent = std::forward<PlanDiscountPercentT>(value);
138 template <
typename PlanDiscountPercentT = Aws::String>
152 m_discountAppliesToMinimumChargeHasBeenSet =
true;
153 m_discountAppliesToMinimumCharge = value;
167 template <
typename MinimumChargeT = Aws::String>
169 m_minimumChargeHasBeenSet =
true;
170 m_minimumCharge = std::forward<MinimumChargeT>(value);
172 template <
typename MinimumChargeT = Aws::String>
185 template <
typename TieredT = Aws::String>
187 m_tieredHasBeenSet =
true;
188 m_tiered = std::forward<TieredT>(value);
190 template <
typename TieredT = Aws::String>
203 template <
typename TiersT = Aws::Vector<PricingPlanTier>>
205 m_tiersHasBeenSet =
true;
206 m_tiers = std::forward<TiersT>(value);
208 template <
typename TiersT = Aws::Vector<PricingPlanTier>>
210 SetTiers(std::forward<TiersT>(value));
213 template <
typename TiersT = PricingPlanTier>
215 m_tiersHasBeenSet =
true;
216 m_tiers.emplace_back(std::forward<TiersT>(value));
233 bool m_discountAppliesToMinimumCharge{
false};
240 bool m_pricingPlanIdHasBeenSet =
false;
241 bool m_nameHasBeenSet =
false;
242 bool m_descriptionHasBeenSet =
false;
243 bool m_startDateHasBeenSet =
false;
244 bool m_endDateHasBeenSet =
false;
245 bool m_planDiscountPercentHasBeenSet =
false;
246 bool m_discountAppliesToMinimumChargeHasBeenSet =
false;
247 bool m_minimumChargeHasBeenSet =
false;
248 bool m_tieredHasBeenSet =
false;
249 bool m_tiersHasBeenSet =
false;
void SetTiers(TiersT &&value)
AWS_BILLING_API PricingPlan & operator=(Aws::Utils::Json::JsonView jsonValue)
PricingPlan & WithMinimumCharge(MinimumChargeT &&value)
AWS_BILLING_API PricingPlan()=default
void SetEndDate(EndDateT &&value)
bool PlanDiscountPercentHasBeenSet() const
AWS_BILLING_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetPlanDiscountPercent() const
const Aws::String & GetDescription() const
PricingPlan & WithEndDate(EndDateT &&value)
bool TieredHasBeenSet() const
const Aws::Vector< PricingPlanTier > & GetTiers() const
PricingPlan & WithTiers(TiersT &&value)
bool NameHasBeenSet() const
void SetStartDate(StartDateT &&value)
const Aws::Utils::DateTime & GetStartDate() const
PricingPlan & WithPlanDiscountPercent(PlanDiscountPercentT &&value)
bool StartDateHasBeenSet() const
const Aws::Utils::DateTime & GetEndDate() const
void SetMinimumCharge(MinimumChargeT &&value)
bool DiscountAppliesToMinimumChargeHasBeenSet() const
const Aws::String & GetTiered() const
PricingPlan & WithPricingPlanId(PricingPlanIdT &&value)
const Aws::String & GetName() const
PricingPlan & WithName(NameT &&value)
bool PricingPlanIdHasBeenSet() const
void SetPlanDiscountPercent(PlanDiscountPercentT &&value)
bool TiersHasBeenSet() const
PricingPlan & AddTiers(TiersT &&value)
const Aws::String & GetMinimumCharge() const
bool EndDateHasBeenSet() const
void SetTiered(TieredT &&value)
PricingPlan & WithTiered(TieredT &&value)
bool GetDiscountAppliesToMinimumCharge() const
PricingPlan & WithDiscountAppliesToMinimumCharge(bool value)
void SetDiscountAppliesToMinimumCharge(bool value)
PricingPlan & WithDescription(DescriptionT &&value)
bool MinimumChargeHasBeenSet() const
const Aws::String & GetPricingPlanId() const
PricingPlan & WithStartDate(StartDateT &&value)
void SetName(NameT &&value)
void SetDescription(DescriptionT &&value)
AWS_BILLING_API PricingPlan(Aws::Utils::Json::JsonView jsonValue)
bool DescriptionHasBeenSet() const
void SetPricingPlanId(PricingPlanIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue