7#include <aws/budgets/Budgets_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/budgets/model/Spend.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/budgets/model/TimeUnit.h>
12#include <aws/budgets/model/TimePeriod.h>
13#include <aws/budgets/model/CalculatedSpend.h>
14#include <aws/budgets/model/BudgetType.h>
15#include <aws/core/utils/DateTime.h>
16#include <aws/budgets/model/AutoAdjustData.h>
17#include <aws/budgets/model/Expression.h>
18#include <aws/core/utils/memory/stl/AWSVector.h>
19#include <aws/budgets/model/Metric.h>
64 template<
typename BudgetNameT = Aws::String>
65 void SetBudgetName(BudgetNameT&& value) { m_budgetNameHasBeenSet =
true; m_budgetName = std::forward<BudgetNameT>(value); }
66 template<
typename BudgetNameT = Aws::String>
83 template<
typename BudgetLimitT = Spend>
84 void SetBudgetLimit(BudgetLimitT&& value) { m_budgetLimitHasBeenSet =
true; m_budgetLimit = std::forward<BudgetLimitT>(value); }
85 template<
typename BudgetLimitT = Spend>
120 template<
typename PlannedBudgetLimitsT = Aws::Map<Aws::String, Spend>>
121 void SetPlannedBudgetLimits(PlannedBudgetLimitsT&& value) { m_plannedBudgetLimitsHasBeenSet =
true; m_plannedBudgetLimits = std::forward<PlannedBudgetLimitsT>(value); }
122 template<
typename PlannedBudgetLimitsT = Aws::Map<Aws::String, Spend>>
124 template<
typename PlannedBudgetLimitsKeyT = Aws::String,
typename PlannedBudgetLimitsValueT = Spend>
126 m_plannedBudgetLimitsHasBeenSet =
true; m_plannedBudgetLimits.emplace(std::forward<PlannedBudgetLimitsKeyT>(key), std::forward<PlannedBudgetLimitsValueT>(value));
return *
this;
159 template<
typename TimePeriodT = TimePeriod>
160 void SetTimePeriod(TimePeriodT&& value) { m_timePeriodHasBeenSet =
true; m_timePeriod = std::forward<TimePeriodT>(value); }
161 template<
typename TimePeriodT = TimePeriod>
171 template<
typename CalculatedSpendT = CalculatedSpend>
172 void SetCalculatedSpend(CalculatedSpendT&& value) { m_calculatedSpendHasBeenSet =
true; m_calculatedSpend = std::forward<CalculatedSpendT>(value); }
173 template<
typename CalculatedSpendT = CalculatedSpend>
194 template<
typename LastUpdatedTimeT = Aws::Utils::DateTime>
195 void SetLastUpdatedTime(LastUpdatedTimeT&& value) { m_lastUpdatedTimeHasBeenSet =
true; m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value); }
196 template<
typename LastUpdatedTimeT = Aws::Utils::DateTime>
207 template<
typename AutoAdjustDataT = AutoAdjustData>
208 void SetAutoAdjustData(AutoAdjustDataT&& value) { m_autoAdjustDataHasBeenSet =
true; m_autoAdjustData = std::forward<AutoAdjustDataT>(value); }
209 template<
typename AutoAdjustDataT = AutoAdjustData>
219 template<
typename FilterExpressionT = Expression>
220 void SetFilterExpression(FilterExpressionT&& value) { m_filterExpressionHasBeenSet =
true; m_filterExpression = std::forward<FilterExpressionT>(value); }
221 template<
typename FilterExpressionT = Expression>
231 template<
typename MetricsT = Aws::Vector<Metric>>
232 void SetMetrics(MetricsT&& value) { m_metricsHasBeenSet =
true; m_metrics = std::forward<MetricsT>(value); }
233 template<
typename MetricsT = Aws::Vector<Metric>>
240 bool m_budgetNameHasBeenSet =
false;
243 bool m_budgetLimitHasBeenSet =
false;
246 bool m_plannedBudgetLimitsHasBeenSet =
false;
249 bool m_timeUnitHasBeenSet =
false;
251 TimePeriod m_timePeriod;
252 bool m_timePeriodHasBeenSet =
false;
254 CalculatedSpend m_calculatedSpend;
255 bool m_calculatedSpendHasBeenSet =
false;
258 bool m_budgetTypeHasBeenSet =
false;
261 bool m_lastUpdatedTimeHasBeenSet =
false;
263 AutoAdjustData m_autoAdjustData;
264 bool m_autoAdjustDataHasBeenSet =
false;
266 Expression m_filterExpression;
267 bool m_filterExpressionHasBeenSet =
false;
270 bool m_metricsHasBeenSet =
false;
Budget & AddMetrics(Metric value)
Budget & WithLastUpdatedTime(LastUpdatedTimeT &&value)
const TimePeriod & GetTimePeriod() const
bool PlannedBudgetLimitsHasBeenSet() const
const Aws::Map< Aws::String, Spend > & GetPlannedBudgetLimits() const
TimeUnit GetTimeUnit() const
Budget & WithCalculatedSpend(CalculatedSpendT &&value)
bool TimeUnitHasBeenSet() const
bool LastUpdatedTimeHasBeenSet() const
const AutoAdjustData & GetAutoAdjustData() const
const Spend & GetBudgetLimit() const
void SetAutoAdjustData(AutoAdjustDataT &&value)
AWS_BUDGETS_API Budget & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetBudgetName() const
const CalculatedSpend & GetCalculatedSpend() const
AWS_BUDGETS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Metric > & GetMetrics() const
bool AutoAdjustDataHasBeenSet() const
Budget & WithTimeUnit(TimeUnit value)
AWS_BUDGETS_API Budget()=default
Budget & WithBudgetName(BudgetNameT &&value)
AWS_BUDGETS_API Budget(Aws::Utils::Json::JsonView jsonValue)
bool BudgetNameHasBeenSet() const
void SetMetrics(MetricsT &&value)
Budget & WithAutoAdjustData(AutoAdjustDataT &&value)
Budget & WithTimePeriod(TimePeriodT &&value)
Budget & WithBudgetType(BudgetType value)
void SetBudgetLimit(BudgetLimitT &&value)
bool MetricsHasBeenSet() const
bool FilterExpressionHasBeenSet() const
const Expression & GetFilterExpression() const
bool CalculatedSpendHasBeenSet() const
void SetBudgetName(BudgetNameT &&value)
bool BudgetTypeHasBeenSet() const
Budget & WithPlannedBudgetLimits(PlannedBudgetLimitsT &&value)
Budget & WithFilterExpression(FilterExpressionT &&value)
Budget & WithBudgetLimit(BudgetLimitT &&value)
bool TimePeriodHasBeenSet() const
void SetPlannedBudgetLimits(PlannedBudgetLimitsT &&value)
void SetCalculatedSpend(CalculatedSpendT &&value)
Budget & WithMetrics(MetricsT &&value)
BudgetType GetBudgetType() const
void SetBudgetType(BudgetType value)
void SetTimePeriod(TimePeriodT &&value)
void SetFilterExpression(FilterExpressionT &&value)
bool BudgetLimitHasBeenSet() const
void SetTimeUnit(TimeUnit value)
Budget & AddPlannedBudgetLimits(PlannedBudgetLimitsKeyT &&key, PlannedBudgetLimitsValueT &&value)
const Aws::Utils::DateTime & GetLastUpdatedTime() const
void SetLastUpdatedTime(LastUpdatedTimeT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue