7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/AccountScope.h>
9#include <aws/ce/model/AnalysisType.h>
10#include <aws/ce/model/DateInterval.h>
11#include <aws/ce/model/SavingsPlans.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
24namespace CostExplorer {
47 m_accountScopeHasBeenSet =
true;
48 m_accountScope = value;
62 template <
typename AccountIdT = Aws::String>
64 m_accountIdHasBeenSet =
true;
65 m_accountId = std::forward<AccountIdT>(value);
67 template <
typename AccountIdT = Aws::String>
81 m_analysisTypeHasBeenSet =
true;
82 m_analysisType = value;
96 template <
typename SavingsPlansToAddT = Aws::Vector<SavingsPlans>>
98 m_savingsPlansToAddHasBeenSet =
true;
99 m_savingsPlansToAdd = std::forward<SavingsPlansToAddT>(value);
101 template <
typename SavingsPlansToAddT = Aws::Vector<SavingsPlans>>
106 template <
typename SavingsPlansToAddT = SavingsPlans>
108 m_savingsPlansToAddHasBeenSet =
true;
109 m_savingsPlansToAdd.emplace_back(std::forward<SavingsPlansToAddT>(value));
120 template <
typename SavingsPlansToExcludeT = Aws::Vector<Aws::String>>
122 m_savingsPlansToExcludeHasBeenSet =
true;
123 m_savingsPlansToExclude = std::forward<SavingsPlansToExcludeT>(value);
125 template <
typename SavingsPlansToExcludeT = Aws::Vector<Aws::String>>
130 template <
typename SavingsPlansToExcludeT = Aws::String>
132 m_savingsPlansToExcludeHasBeenSet =
true;
133 m_savingsPlansToExclude.emplace_back(std::forward<SavingsPlansToExcludeT>(value));
144 template <
typename LookBackTimePeriodT = DateInterval>
146 m_lookBackTimePeriodHasBeenSet =
true;
147 m_lookBackTimePeriod = std::forward<LookBackTimePeriodT>(value);
149 template <
typename LookBackTimePeriodT = DateInterval>
166 DateInterval m_lookBackTimePeriod;
167 bool m_accountScopeHasBeenSet =
false;
168 bool m_accountIdHasBeenSet =
false;
169 bool m_analysisTypeHasBeenSet =
false;
170 bool m_savingsPlansToAddHasBeenSet =
false;
171 bool m_savingsPlansToExcludeHasBeenSet =
false;
172 bool m_lookBackTimePeriodHasBeenSet =
false;
SavingsPlansPurchaseAnalysisConfiguration & WithAccountScope(AccountScope value)
void SetSavingsPlansToExclude(SavingsPlansToExcludeT &&value)
SavingsPlansPurchaseAnalysisConfiguration & AddSavingsPlansToExclude(SavingsPlansToExcludeT &&value)
bool SavingsPlansToExcludeHasBeenSet() const
void SetLookBackTimePeriod(LookBackTimePeriodT &&value)
void SetAccountScope(AccountScope value)
void SetAccountId(AccountIdT &&value)
SavingsPlansPurchaseAnalysisConfiguration & WithAccountId(AccountIdT &&value)
AWS_COSTEXPLORER_API SavingsPlansPurchaseAnalysisConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetAnalysisType(AnalysisType value)
const Aws::String & GetAccountId() const
SavingsPlansPurchaseAnalysisConfiguration & WithAnalysisType(AnalysisType value)
SavingsPlansPurchaseAnalysisConfiguration & WithSavingsPlansToExclude(SavingsPlansToExcludeT &&value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_COSTEXPLORER_API SavingsPlansPurchaseAnalysisConfiguration(Aws::Utils::Json::JsonView jsonValue)
SavingsPlansPurchaseAnalysisConfiguration & AddSavingsPlansToAdd(SavingsPlansToAddT &&value)
bool SavingsPlansToAddHasBeenSet() const
SavingsPlansPurchaseAnalysisConfiguration & WithLookBackTimePeriod(LookBackTimePeriodT &&value)
AccountScope GetAccountScope() const
AnalysisType GetAnalysisType() const
bool AnalysisTypeHasBeenSet() const
void SetSavingsPlansToAdd(SavingsPlansToAddT &&value)
const Aws::Vector< Aws::String > & GetSavingsPlansToExclude() const
bool AccountIdHasBeenSet() const
bool LookBackTimePeriodHasBeenSet() const
const DateInterval & GetLookBackTimePeriod() const
bool AccountScopeHasBeenSet() const
AWS_COSTEXPLORER_API SavingsPlansPurchaseAnalysisConfiguration()=default
SavingsPlansPurchaseAnalysisConfiguration & WithSavingsPlansToAdd(SavingsPlansToAddT &&value)
const Aws::Vector< SavingsPlans > & GetSavingsPlansToAdd() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue