7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/AccountScope.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ce/model/AnalysisType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ce/model/DateInterval.h>
13#include <aws/ce/model/SavingsPlans.h>
62 template<
typename AccountIdT = Aws::String>
63 void SetAccountId(AccountIdT&& value) { m_accountIdHasBeenSet =
true; m_accountId = std::forward<AccountIdT>(value); }
64 template<
typename AccountIdT = Aws::String>
84 template<
typename SavingsPlansToAddT = Aws::Vector<SavingsPlans>>
85 void SetSavingsPlansToAdd(SavingsPlansToAddT&& value) { m_savingsPlansToAddHasBeenSet =
true; m_savingsPlansToAdd = std::forward<SavingsPlansToAddT>(value); }
86 template<
typename SavingsPlansToAddT = Aws::Vector<SavingsPlans>>
88 template<
typename SavingsPlansToAddT = SavingsPlans>
98 template<
typename SavingsPlansToExcludeT = Aws::Vector<Aws::String>>
99 void SetSavingsPlansToExclude(SavingsPlansToExcludeT&& value) { m_savingsPlansToExcludeHasBeenSet =
true; m_savingsPlansToExclude = std::forward<SavingsPlansToExcludeT>(value); }
100 template<
typename SavingsPlansToExcludeT = Aws::Vector<Aws::String>>
102 template<
typename SavingsPlansToExcludeT = Aws::String>
112 template<
typename LookBackTimePeriodT = DateInterval>
113 void SetLookBackTimePeriod(LookBackTimePeriodT&& value) { m_lookBackTimePeriodHasBeenSet =
true; m_lookBackTimePeriod = std::forward<LookBackTimePeriodT>(value); }
114 template<
typename LookBackTimePeriodT = DateInterval>
120 bool m_accountScopeHasBeenSet =
false;
123 bool m_accountIdHasBeenSet =
false;
126 bool m_analysisTypeHasBeenSet =
false;
129 bool m_savingsPlansToAddHasBeenSet =
false;
132 bool m_savingsPlansToExcludeHasBeenSet =
false;
134 DateInterval m_lookBackTimePeriod;
135 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