/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Budgets { namespace Model { /** *

The amount of cost or usage that you created the budget for, compared to your * actual costs or usage.

See Also:

AWS * API Reference

*/ class BudgetedAndActualAmounts { public: AWS_BUDGETS_API BudgetedAndActualAmounts(); AWS_BUDGETS_API BudgetedAndActualAmounts(Aws::Utils::Json::JsonView jsonValue); AWS_BUDGETS_API BudgetedAndActualAmounts& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_BUDGETS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The amount of cost or usage that you created the budget for.

*/ inline const Spend& GetBudgetedAmount() const{ return m_budgetedAmount; } /** *

The amount of cost or usage that you created the budget for.

*/ inline bool BudgetedAmountHasBeenSet() const { return m_budgetedAmountHasBeenSet; } /** *

The amount of cost or usage that you created the budget for.

*/ inline void SetBudgetedAmount(const Spend& value) { m_budgetedAmountHasBeenSet = true; m_budgetedAmount = value; } /** *

The amount of cost or usage that you created the budget for.

*/ inline void SetBudgetedAmount(Spend&& value) { m_budgetedAmountHasBeenSet = true; m_budgetedAmount = std::move(value); } /** *

The amount of cost or usage that you created the budget for.

*/ inline BudgetedAndActualAmounts& WithBudgetedAmount(const Spend& value) { SetBudgetedAmount(value); return *this;} /** *

The amount of cost or usage that you created the budget for.

*/ inline BudgetedAndActualAmounts& WithBudgetedAmount(Spend&& value) { SetBudgetedAmount(std::move(value)); return *this;} /** *

Your actual costs or usage for a budget period.

*/ inline const Spend& GetActualAmount() const{ return m_actualAmount; } /** *

Your actual costs or usage for a budget period.

*/ inline bool ActualAmountHasBeenSet() const { return m_actualAmountHasBeenSet; } /** *

Your actual costs or usage for a budget period.

*/ inline void SetActualAmount(const Spend& value) { m_actualAmountHasBeenSet = true; m_actualAmount = value; } /** *

Your actual costs or usage for a budget period.

*/ inline void SetActualAmount(Spend&& value) { m_actualAmountHasBeenSet = true; m_actualAmount = std::move(value); } /** *

Your actual costs or usage for a budget period.

*/ inline BudgetedAndActualAmounts& WithActualAmount(const Spend& value) { SetActualAmount(value); return *this;} /** *

Your actual costs or usage for a budget period.

*/ inline BudgetedAndActualAmounts& WithActualAmount(Spend&& value) { SetActualAmount(std::move(value)); return *this;} /** *

The time period that's covered by this budget comparison.

*/ inline const TimePeriod& GetTimePeriod() const{ return m_timePeriod; } /** *

The time period that's covered by this budget comparison.

*/ inline bool TimePeriodHasBeenSet() const { return m_timePeriodHasBeenSet; } /** *

The time period that's covered by this budget comparison.

*/ inline void SetTimePeriod(const TimePeriod& value) { m_timePeriodHasBeenSet = true; m_timePeriod = value; } /** *

The time period that's covered by this budget comparison.

*/ inline void SetTimePeriod(TimePeriod&& value) { m_timePeriodHasBeenSet = true; m_timePeriod = std::move(value); } /** *

The time period that's covered by this budget comparison.

*/ inline BudgetedAndActualAmounts& WithTimePeriod(const TimePeriod& value) { SetTimePeriod(value); return *this;} /** *

The time period that's covered by this budget comparison.

*/ inline BudgetedAndActualAmounts& WithTimePeriod(TimePeriod&& value) { SetTimePeriod(std::move(value)); return *this;} private: Spend m_budgetedAmount; bool m_budgetedAmountHasBeenSet = false; Spend m_actualAmount; bool m_actualAmountHasBeenSet = false; TimePeriod m_timePeriod; bool m_timePeriodHasBeenSet = false; }; } // namespace Model } // namespace Budgets } // namespace Aws