7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/CostExplorerRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ce/model/Expression.h>
11#include <aws/ce/model/AccountScope.h>
12#include <aws/ce/model/LookbackPeriodInDays.h>
13#include <aws/ce/model/TermInYears.h>
14#include <aws/ce/model/PaymentOption.h>
15#include <aws/ce/model/ServiceSpecification.h>
36 inline virtual const char*
GetServiceRequestName()
const override {
return "GetReservationPurchaseRecommendation"; }
49 template<
typename AccountIdT = Aws::String>
50 void SetAccountId(AccountIdT&& value) { m_accountIdHasBeenSet =
true; m_accountId = std::forward<AccountIdT>(value); }
51 template<
typename AccountIdT = Aws::String>
61 template<
typename ServiceT = Aws::String>
62 void SetService(ServiceT&& value) { m_serviceHasBeenSet =
true; m_service = std::forward<ServiceT>(value); }
63 template<
typename ServiceT = Aws::String>
71 template<
typename FilterT = Expression>
72 void SetFilter(FilterT&& value) { m_filterHasBeenSet =
true; m_filter = std::forward<FilterT>(value); }
73 template<
typename FilterT = Expression>
128 template<
typename ServiceSpecificationT = ServiceSpecification>
129 void SetServiceSpecification(ServiceSpecificationT&& value) { m_serviceSpecificationHasBeenSet =
true; m_serviceSpecification = std::forward<ServiceSpecificationT>(value); }
130 template<
typename ServiceSpecificationT = ServiceSpecification>
141 inline void SetPageSize(
int value) { m_pageSizeHasBeenSet =
true; m_pageSize = value; }
152 template<
typename NextPageTokenT = Aws::String>
153 void SetNextPageToken(NextPageTokenT&& value) { m_nextPageTokenHasBeenSet =
true; m_nextPageToken = std::forward<NextPageTokenT>(value); }
154 template<
typename NextPageTokenT = Aws::String>
160 bool m_accountIdHasBeenSet =
false;
163 bool m_serviceHasBeenSet =
false;
166 bool m_filterHasBeenSet =
false;
169 bool m_accountScopeHasBeenSet =
false;
172 bool m_lookbackPeriodInDaysHasBeenSet =
false;
175 bool m_termInYearsHasBeenSet =
false;
178 bool m_paymentOptionHasBeenSet =
false;
180 ServiceSpecification m_serviceSpecification;
181 bool m_serviceSpecificationHasBeenSet =
false;
184 bool m_pageSizeHasBeenSet =
false;
187 bool m_nextPageTokenHasBeenSet =
false;
void SetAccountScope(AccountScope value)
void SetPaymentOption(PaymentOption value)
bool LookbackPeriodInDaysHasBeenSet() const
GetReservationPurchaseRecommendationRequest & WithTermInYears(TermInYears value)
void SetFilter(FilterT &&value)
bool PaymentOptionHasBeenSet() const
GetReservationPurchaseRecommendationRequest & WithNextPageToken(NextPageTokenT &&value)
void SetServiceSpecification(ServiceSpecificationT &&value)
GetReservationPurchaseRecommendationRequest & WithAccountId(AccountIdT &&value)
const Aws::String & GetAccountId() const
bool TermInYearsHasBeenSet() const
GetReservationPurchaseRecommendationRequest & WithFilter(FilterT &&value)
void SetAccountId(AccountIdT &&value)
const ServiceSpecification & GetServiceSpecification() const
void SetPageSize(int value)
bool PageSizeHasBeenSet() const
virtual const char * GetServiceRequestName() const override
LookbackPeriodInDays GetLookbackPeriodInDays() const
void SetLookbackPeriodInDays(LookbackPeriodInDays value)
const Aws::String & GetService() const
GetReservationPurchaseRecommendationRequest & WithServiceSpecification(ServiceSpecificationT &&value)
AWS_COSTEXPLORER_API GetReservationPurchaseRecommendationRequest()=default
bool AccountIdHasBeenSet() const
PaymentOption GetPaymentOption() const
TermInYears GetTermInYears() const
GetReservationPurchaseRecommendationRequest & WithPageSize(int value)
bool NextPageTokenHasBeenSet() const
const Expression & GetFilter() const
AccountScope GetAccountScope() const
GetReservationPurchaseRecommendationRequest & WithLookbackPeriodInDays(LookbackPeriodInDays value)
GetReservationPurchaseRecommendationRequest & WithService(ServiceT &&value)
bool ServiceHasBeenSet() const
void SetNextPageToken(NextPageTokenT &&value)
bool ServiceSpecificationHasBeenSet() const
GetReservationPurchaseRecommendationRequest & WithAccountScope(AccountScope value)
void SetTermInYears(TermInYears value)
AWS_COSTEXPLORER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
AWS_COSTEXPLORER_API Aws::String SerializePayload() const override
bool FilterHasBeenSet() const
void SetService(ServiceT &&value)
GetReservationPurchaseRecommendationRequest & WithPaymentOption(PaymentOption value)
const Aws::String & GetNextPageToken() const
bool AccountScopeHasBeenSet() const
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String