7#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/cost-optimization-hub/model/ResourceType.h>
10#include <aws/cost-optimization-hub/model/Source.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/cost-optimization-hub/model/ImplementationEffort.h>
13#include <aws/cost-optimization-hub/model/ActionType.h>
14#include <aws/cost-optimization-hub/model/ResourceDetails.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16#include <aws/cost-optimization-hub/model/Tag.h>
21template<
typename RESULT_TYPE>
22class AmazonWebServiceResult;
31namespace CostOptimizationHub
48 template<
typename RecommendationIdT = Aws::String>
49 void SetRecommendationId(RecommendationIdT&& value) { m_recommendationIdHasBeenSet =
true; m_recommendationId = std::forward<RecommendationIdT>(value); }
50 template<
typename RecommendationIdT = Aws::String>
60 template<
typename ResourceIdT = Aws::String>
61 void SetResourceId(ResourceIdT&& value) { m_resourceIdHasBeenSet =
true; m_resourceId = std::forward<ResourceIdT>(value); }
62 template<
typename ResourceIdT = Aws::String>
71 template<
typename ResourceArnT = Aws::String>
72 void SetResourceArn(ResourceArnT&& value) { m_resourceArnHasBeenSet =
true; m_resourceArn = std::forward<ResourceArnT>(value); }
73 template<
typename ResourceArnT = Aws::String>
82 template<
typename AccountIdT = Aws::String>
83 void SetAccountId(AccountIdT&& value) { m_accountIdHasBeenSet =
true; m_accountId = std::forward<AccountIdT>(value); }
84 template<
typename AccountIdT = Aws::String>
93 template<
typename CurrencyCodeT = Aws::String>
94 void SetCurrencyCode(CurrencyCodeT&& value) { m_currencyCodeHasBeenSet =
true; m_currencyCode = std::forward<CurrencyCodeT>(value); }
95 template<
typename CurrencyCodeT = Aws::String>
160 template<
typename RegionT = Aws::String>
161 void SetRegion(RegionT&& value) { m_regionHasBeenSet =
true; m_region = std::forward<RegionT>(value); }
162 template<
typename RegionT = Aws::String>
180 template<
typename LastRefreshTimestampT = Aws::Utils::DateTime>
181 void SetLastRefreshTimestamp(LastRefreshTimestampT&& value) { m_lastRefreshTimestampHasBeenSet =
true; m_lastRefreshTimestamp = std::forward<LastRefreshTimestampT>(value); }
182 template<
typename LastRefreshTimestampT = Aws::Utils::DateTime>
201 inline void SetEstimatedMonthlyCost(
double value) { m_estimatedMonthlyCostHasBeenSet =
true; m_estimatedMonthlyCost = value; }
219 inline void SetRestartNeeded(
bool value) { m_restartNeededHasBeenSet =
true; m_restartNeeded = value; }
237 inline void SetRollbackPossible(
bool value) { m_rollbackPossibleHasBeenSet =
true; m_rollbackPossible = value; }
246 template<
typename CurrentResourceDetailsT = ResourceDetails>
247 void SetCurrentResourceDetails(CurrentResourceDetailsT&& value) { m_currentResourceDetailsHasBeenSet =
true; m_currentResourceDetails = std::forward<CurrentResourceDetailsT>(value); }
248 template<
typename CurrentResourceDetailsT = ResourceDetails>
257 template<
typename RecommendedResourceDetailsT = ResourceDetails>
258 void SetRecommendedResourceDetails(RecommendedResourceDetailsT&& value) { m_recommendedResourceDetailsHasBeenSet =
true; m_recommendedResourceDetails = std::forward<RecommendedResourceDetailsT>(value); }
259 template<
typename RecommendedResourceDetailsT = ResourceDetails>
269 template<
typename TagsT = Aws::Vector<Tag>>
270 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
271 template<
typename TagsT = Aws::Vector<Tag>>
273 template<
typename TagsT = Tag>
280 template<
typename RequestIdT = Aws::String>
281 void SetRequestId(RequestIdT&& value) { m_requestIdHasBeenSet =
true; m_requestId = std::forward<RequestIdT>(value); }
282 template<
typename RequestIdT = Aws::String>
288 bool m_recommendationIdHasBeenSet =
false;
291 bool m_resourceIdHasBeenSet =
false;
294 bool m_resourceArnHasBeenSet =
false;
297 bool m_accountIdHasBeenSet =
false;
300 bool m_currencyCodeHasBeenSet =
false;
302 int m_recommendationLookbackPeriodInDays{0};
303 bool m_recommendationLookbackPeriodInDaysHasBeenSet =
false;
305 int m_costCalculationLookbackPeriodInDays{0};
306 bool m_costCalculationLookbackPeriodInDaysHasBeenSet =
false;
308 double m_estimatedSavingsPercentage{0.0};
309 bool m_estimatedSavingsPercentageHasBeenSet =
false;
311 double m_estimatedSavingsOverCostCalculationLookbackPeriod{0.0};
312 bool m_estimatedSavingsOverCostCalculationLookbackPeriodHasBeenSet =
false;
315 bool m_currentResourceTypeHasBeenSet =
false;
318 bool m_recommendedResourceTypeHasBeenSet =
false;
321 bool m_regionHasBeenSet =
false;
324 bool m_sourceHasBeenSet =
false;
327 bool m_lastRefreshTimestampHasBeenSet =
false;
329 double m_estimatedMonthlySavings{0.0};
330 bool m_estimatedMonthlySavingsHasBeenSet =
false;
332 double m_estimatedMonthlyCost{0.0};
333 bool m_estimatedMonthlyCostHasBeenSet =
false;
336 bool m_implementationEffortHasBeenSet =
false;
338 bool m_restartNeeded{
false};
339 bool m_restartNeededHasBeenSet =
false;
342 bool m_actionTypeHasBeenSet =
false;
344 bool m_rollbackPossible{
false};
345 bool m_rollbackPossibleHasBeenSet =
false;
347 ResourceDetails m_currentResourceDetails;
348 bool m_currentResourceDetailsHasBeenSet =
false;
350 ResourceDetails m_recommendedResourceDetails;
351 bool m_recommendedResourceDetailsHasBeenSet =
false;
354 bool m_tagsHasBeenSet =
false;
357 bool m_requestIdHasBeenSet =
false;
void SetTags(TagsT &&value)
void SetCostCalculationLookbackPeriodInDays(int value)
GetRecommendationResult & WithRequestId(RequestIdT &&value)
GetRecommendationResult & WithEstimatedSavingsOverCostCalculationLookbackPeriod(double value)
void SetResourceArn(ResourceArnT &&value)
ActionType GetActionType() const
ResourceType GetCurrentResourceType() const
GetRecommendationResult & WithSource(Source value)
void SetCurrentResourceDetails(CurrentResourceDetailsT &&value)
GetRecommendationResult & WithCurrentResourceType(ResourceType value)
GetRecommendationResult & WithRegion(RegionT &&value)
void SetImplementationEffort(ImplementationEffort value)
void SetRequestId(RequestIdT &&value)
GetRecommendationResult & WithRestartNeeded(bool value)
void SetRollbackPossible(bool value)
const Aws::String & GetRequestId() const
GetRecommendationResult & WithLastRefreshTimestamp(LastRefreshTimestampT &&value)
void SetSource(Source value)
const Aws::Utils::DateTime & GetLastRefreshTimestamp() const
const Aws::String & GetAccountId() const
GetRecommendationResult & AddTags(TagsT &&value)
ResourceType GetRecommendedResourceType() const
void SetRegion(RegionT &&value)
void SetEstimatedMonthlySavings(double value)
GetRecommendationResult & WithTags(TagsT &&value)
GetRecommendationResult & WithResourceId(ResourceIdT &&value)
int GetCostCalculationLookbackPeriodInDays() const
double GetEstimatedSavingsPercentage() const
void SetRecommendedResourceDetails(RecommendedResourceDetailsT &&value)
void SetEstimatedSavingsPercentage(double value)
void SetRecommendationLookbackPeriodInDays(int value)
GetRecommendationResult & WithEstimatedSavingsPercentage(double value)
double GetEstimatedMonthlySavings() const
void SetEstimatedSavingsOverCostCalculationLookbackPeriod(double value)
const ResourceDetails & GetRecommendedResourceDetails() const
GetRecommendationResult & WithRecommendedResourceType(ResourceType value)
const Aws::Vector< Tag > & GetTags() const
void SetCurrencyCode(CurrencyCodeT &&value)
void SetCurrentResourceType(ResourceType value)
void SetAccountId(AccountIdT &&value)
const ResourceDetails & GetCurrentResourceDetails() const
GetRecommendationResult & WithCostCalculationLookbackPeriodInDays(int value)
GetRecommendationResult & WithResourceArn(ResourceArnT &&value)
const Aws::String & GetResourceArn() const
const Aws::String & GetCurrencyCode() const
GetRecommendationResult & WithEstimatedMonthlyCost(double value)
double GetEstimatedMonthlyCost() const
double GetEstimatedSavingsOverCostCalculationLookbackPeriod() const
GetRecommendationResult & WithCurrencyCode(CurrencyCodeT &&value)
const Aws::String & GetRecommendationId() const
ImplementationEffort GetImplementationEffort() const
void SetRestartNeeded(bool value)
GetRecommendationResult & WithAccountId(AccountIdT &&value)
bool GetRollbackPossible() const
GetRecommendationResult & WithRollbackPossible(bool value)
void SetResourceId(ResourceIdT &&value)
GetRecommendationResult & WithRecommendationId(RecommendationIdT &&value)
GetRecommendationResult & WithRecommendationLookbackPeriodInDays(int value)
GetRecommendationResult & WithEstimatedMonthlySavings(double value)
AWS_COSTOPTIMIZATIONHUB_API GetRecommendationResult()=default
void SetLastRefreshTimestamp(LastRefreshTimestampT &&value)
GetRecommendationResult & WithActionType(ActionType value)
GetRecommendationResult & WithImplementationEffort(ImplementationEffort value)
void SetActionType(ActionType value)
void SetEstimatedMonthlyCost(double value)
const Aws::String & GetRegion() const
GetRecommendationResult & WithCurrentResourceDetails(CurrentResourceDetailsT &&value)
const Aws::String & GetResourceId() const
bool GetRestartNeeded() const
int GetRecommendationLookbackPeriodInDays() const
AWS_COSTOPTIMIZATIONHUB_API GetRecommendationResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
void SetRecommendationId(RecommendationIdT &&value)
void SetRecommendedResourceType(ResourceType value)
GetRecommendationResult & WithRecommendedResourceDetails(RecommendedResourceDetailsT &&value)
AWS_COSTOPTIMIZATIONHUB_API GetRecommendationResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue