7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/compute-optimizer/model/LicenseConfiguration.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/compute-optimizer/model/LicenseFinding.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/compute-optimizer/model/LicenseFindingReasonCode.h>
14#include <aws/compute-optimizer/model/LicenseRecommendationOption.h>
15#include <aws/compute-optimizer/model/Tag.h>
28namespace ComputeOptimizer
54 template<
typename ResourceArnT = Aws::String>
55 void SetResourceArn(ResourceArnT&& value) { m_resourceArnHasBeenSet =
true; m_resourceArn = std::forward<ResourceArnT>(value); }
56 template<
typename ResourceArnT = Aws::String>
66 template<
typename AccountIdT = Aws::String>
67 void SetAccountId(AccountIdT&& value) { m_accountIdHasBeenSet =
true; m_accountId = std::forward<AccountIdT>(value); }
68 template<
typename AccountIdT = Aws::String>
79 template<
typename CurrentLicenseConfigurationT = LicenseConfiguration>
80 void SetCurrentLicenseConfiguration(CurrentLicenseConfigurationT&& value) { m_currentLicenseConfigurationHasBeenSet =
true; m_currentLicenseConfiguration = std::forward<CurrentLicenseConfigurationT>(value); }
81 template<
typename CurrentLicenseConfigurationT = LicenseConfiguration>
92 inline void SetLookbackPeriodInDays(
double value) { m_lookbackPeriodInDaysHasBeenSet =
true; m_lookbackPeriodInDays = value; }
102 template<
typename LastRefreshTimestampT = Aws::Utils::DateTime>
103 void SetLastRefreshTimestamp(LastRefreshTimestampT&& value) { m_lastRefreshTimestampHasBeenSet =
true; m_lastRefreshTimestamp = std::forward<LastRefreshTimestampT>(value); }
104 template<
typename LastRefreshTimestampT = Aws::Utils::DateTime>
143 template<
typename FindingReasonCodesT = Aws::Vector<LicenseFindingReasonCode>>
144 void SetFindingReasonCodes(FindingReasonCodesT&& value) { m_findingReasonCodesHasBeenSet =
true; m_findingReasonCodes = std::forward<FindingReasonCodesT>(value); }
145 template<
typename FindingReasonCodesT = Aws::Vector<LicenseFindingReasonCode>>
156 template<
typename LicenseRecommendationOptionsT = Aws::Vector<LicenseRecommendationOption>>
157 void SetLicenseRecommendationOptions(LicenseRecommendationOptionsT&& value) { m_licenseRecommendationOptionsHasBeenSet =
true; m_licenseRecommendationOptions = std::forward<LicenseRecommendationOptionsT>(value); }
158 template<
typename LicenseRecommendationOptionsT = Aws::Vector<LicenseRecommendationOption>>
160 template<
typename LicenseRecommendationOptionsT = LicenseRecommendationOption>
170 template<
typename TagsT = Aws::Vector<Tag>>
171 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
172 template<
typename TagsT = Aws::Vector<Tag>>
174 template<
typename TagsT = Tag>
180 bool m_resourceArnHasBeenSet =
false;
183 bool m_accountIdHasBeenSet =
false;
186 bool m_currentLicenseConfigurationHasBeenSet =
false;
188 double m_lookbackPeriodInDays{0.0};
189 bool m_lookbackPeriodInDaysHasBeenSet =
false;
192 bool m_lastRefreshTimestampHasBeenSet =
false;
195 bool m_findingHasBeenSet =
false;
198 bool m_findingReasonCodesHasBeenSet =
false;
201 bool m_licenseRecommendationOptionsHasBeenSet =
false;
204 bool m_tagsHasBeenSet =
false;
const Aws::Vector< LicenseFindingReasonCode > & GetFindingReasonCodes() const
LicenseRecommendation & AddTags(TagsT &&value)
AWS_COMPUTEOPTIMIZER_API LicenseRecommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetAccountId(AccountIdT &&value)
LicenseRecommendation & WithLicenseRecommendationOptions(LicenseRecommendationOptionsT &&value)
LicenseFinding GetFinding() const
const Aws::Utils::DateTime & GetLastRefreshTimestamp() const
void SetLicenseRecommendationOptions(LicenseRecommendationOptionsT &&value)
bool LastRefreshTimestampHasBeenSet() const
LicenseRecommendation & WithLookbackPeriodInDays(double value)
const Aws::String & GetAccountId() const
LicenseRecommendation & WithLastRefreshTimestamp(LastRefreshTimestampT &&value)
void SetFinding(LicenseFinding value)
LicenseRecommendation & WithTags(TagsT &&value)
LicenseRecommendation & AddLicenseRecommendationOptions(LicenseRecommendationOptionsT &&value)
bool LookbackPeriodInDaysHasBeenSet() const
LicenseRecommendation & WithFindingReasonCodes(FindingReasonCodesT &&value)
bool TagsHasBeenSet() const
void SetLastRefreshTimestamp(LastRefreshTimestampT &&value)
LicenseRecommendation & WithAccountId(AccountIdT &&value)
bool CurrentLicenseConfigurationHasBeenSet() const
bool ResourceArnHasBeenSet() const
AWS_COMPUTEOPTIMIZER_API LicenseRecommendation(Aws::Utils::Json::JsonView jsonValue)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
const LicenseConfiguration & GetCurrentLicenseConfiguration() const
void SetLookbackPeriodInDays(double value)
const Aws::String & GetResourceArn() const
AWS_COMPUTEOPTIMIZER_API LicenseRecommendation()=default
LicenseRecommendation & WithResourceArn(ResourceArnT &&value)
bool FindingHasBeenSet() const
const Aws::Vector< LicenseRecommendationOption > & GetLicenseRecommendationOptions() const
LicenseRecommendation & AddFindingReasonCodes(LicenseFindingReasonCode value)
double GetLookbackPeriodInDays() const
const Aws::Vector< Tag > & GetTags() const
void SetCurrentLicenseConfiguration(CurrentLicenseConfigurationT &&value)
void SetTags(TagsT &&value)
bool LicenseRecommendationOptionsHasBeenSet() const
bool AccountIdHasBeenSet() const
void SetResourceArn(ResourceArnT &&value)
LicenseRecommendation & WithCurrentLicenseConfiguration(CurrentLicenseConfigurationT &&value)
LicenseRecommendation & WithFinding(LicenseFinding value)
void SetFindingReasonCodes(FindingReasonCodesT &&value)
bool FindingReasonCodesHasBeenSet() 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