7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
47 template<
typename FamilyT = Aws::String>
48 void SetFamily(FamilyT&& value) { m_familyHasBeenSet =
true; m_family = std::forward<FamilyT>(value); }
49 template<
typename FamilyT = Aws::String>
59 template<
typename InstanceTypeT = Aws::String>
60 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
61 template<
typename InstanceTypeT = Aws::String>
71 template<
typename RegionT = Aws::String>
72 void SetRegion(RegionT&& value) { m_regionHasBeenSet =
true; m_region = std::forward<RegionT>(value); }
73 template<
typename RegionT = Aws::String>
83 template<
typename AvailabilityZoneT = Aws::String>
84 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet =
true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
85 template<
typename AvailabilityZoneT = Aws::String>
96 template<
typename PlatformT = Aws::String>
97 void SetPlatform(PlatformT&& value) { m_platformHasBeenSet =
true; m_platform = std::forward<PlatformT>(value); }
98 template<
typename PlatformT = Aws::String>
108 template<
typename TenancyT = Aws::String>
109 void SetTenancy(TenancyT&& value) { m_tenancyHasBeenSet =
true; m_tenancy = std::forward<TenancyT>(value); }
110 template<
typename TenancyT = Aws::String>
121 inline void SetCurrentGeneration(
bool value) { m_currentGenerationHasBeenSet =
true; m_currentGeneration = value; }
131 inline void SetSizeFlexEligible(
bool value) { m_sizeFlexEligibleHasBeenSet =
true; m_sizeFlexEligible = value; }
137 bool m_familyHasBeenSet =
false;
140 bool m_instanceTypeHasBeenSet =
false;
143 bool m_regionHasBeenSet =
false;
146 bool m_availabilityZoneHasBeenSet =
false;
149 bool m_platformHasBeenSet =
false;
152 bool m_tenancyHasBeenSet =
false;
154 bool m_currentGeneration{
false};
155 bool m_currentGenerationHasBeenSet =
false;
157 bool m_sizeFlexEligible{
false};
158 bool m_sizeFlexEligibleHasBeenSet =
false;
void SetRegion(RegionT &&value)
const Aws::String & GetTenancy() const
void SetSizeFlexEligible(bool value)
EC2InstanceDetails & WithTenancy(TenancyT &&value)
const Aws::String & GetInstanceType() const
EC2InstanceDetails & WithRegion(RegionT &&value)
void SetFamily(FamilyT &&value)
const Aws::String & GetAvailabilityZone() const
bool PlatformHasBeenSet() const
EC2InstanceDetails & WithFamily(FamilyT &&value)
AWS_COSTEXPLORER_API EC2InstanceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
bool SizeFlexEligibleHasBeenSet() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
bool CurrentGenerationHasBeenSet() const
void SetTenancy(TenancyT &&value)
const Aws::String & GetPlatform() const
EC2InstanceDetails & WithAvailabilityZone(AvailabilityZoneT &&value)
bool GetCurrentGeneration() const
bool FamilyHasBeenSet() const
bool AvailabilityZoneHasBeenSet() const
EC2InstanceDetails & WithCurrentGeneration(bool value)
void SetInstanceType(InstanceTypeT &&value)
AWS_COSTEXPLORER_API EC2InstanceDetails(Aws::Utils::Json::JsonView jsonValue)
bool GetSizeFlexEligible() const
const Aws::String & GetRegion() const
EC2InstanceDetails & WithSizeFlexEligible(bool value)
bool TenancyHasBeenSet() const
const Aws::String & GetFamily() const
EC2InstanceDetails & WithInstanceType(InstanceTypeT &&value)
bool RegionHasBeenSet() const
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
bool InstanceTypeHasBeenSet() const
AWS_COSTEXPLORER_API EC2InstanceDetails()=default
EC2InstanceDetails & WithPlatform(PlatformT &&value)
void SetPlatform(PlatformT &&value)
void SetCurrentGeneration(bool value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue