7#include <aws/lightsail/Lightsail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/lightsail/model/InstancePlatform.h>
11#include <aws/lightsail/model/AppCategory.h>
38 AWS_LIGHTSAIL_API
Bundle() =
default;
48 inline double GetPrice()
const {
return m_price; }
50 inline void SetPrice(
double value) { m_priceHasBeenSet =
true; m_price = value; }
60 inline void SetCpuCount(
int value) { m_cpuCountHasBeenSet =
true; m_cpuCount = value; }
70 inline void SetDiskSizeInGb(
int value) { m_diskSizeInGbHasBeenSet =
true; m_diskSizeInGb = value; }
80 template<
typename BundleIdT = Aws::String>
81 void SetBundleId(BundleIdT&& value) { m_bundleIdHasBeenSet =
true; m_bundleId = std::forward<BundleIdT>(value); }
82 template<
typename BundleIdT = Aws::String>
92 template<
typename InstanceTypeT = Aws::String>
93 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
94 template<
typename InstanceTypeT = Aws::String>
104 inline void SetIsActive(
bool value) { m_isActiveHasBeenSet =
true; m_isActive = value; }
114 template<
typename NameT = Aws::String>
115 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
116 template<
typename NameT = Aws::String>
130 inline void SetPower(
int value) { m_powerHasBeenSet =
true; m_power = value; }
140 inline void SetRamSizeInGb(
double value) { m_ramSizeInGbHasBeenSet =
true; m_ramSizeInGb = value; }
163 template<
typename SupportedPlatformsT = Aws::Vector<InstancePlatform>>
164 void SetSupportedPlatforms(SupportedPlatformsT&& value) { m_supportedPlatformsHasBeenSet =
true; m_supportedPlatforms = std::forward<SupportedPlatformsT>(value); }
165 template<
typename SupportedPlatformsT = Aws::Vector<InstancePlatform>>
178 template<
typename SupportedAppCategoriesT = Aws::Vector<AppCategory>>
179 void SetSupportedAppCategories(SupportedAppCategoriesT&& value) { m_supportedAppCategoriesHasBeenSet =
true; m_supportedAppCategories = std::forward<SupportedAppCategoriesT>(value); }
180 template<
typename SupportedAppCategoriesT = Aws::Vector<AppCategory>>
198 bool m_priceHasBeenSet =
false;
201 bool m_cpuCountHasBeenSet =
false;
203 int m_diskSizeInGb{0};
204 bool m_diskSizeInGbHasBeenSet =
false;
207 bool m_bundleIdHasBeenSet =
false;
210 bool m_instanceTypeHasBeenSet =
false;
212 bool m_isActive{
false};
213 bool m_isActiveHasBeenSet =
false;
216 bool m_nameHasBeenSet =
false;
219 bool m_powerHasBeenSet =
false;
221 double m_ramSizeInGb{0.0};
222 bool m_ramSizeInGbHasBeenSet =
false;
224 int m_transferPerMonthInGb{0};
225 bool m_transferPerMonthInGbHasBeenSet =
false;
228 bool m_supportedPlatformsHasBeenSet =
false;
231 bool m_supportedAppCategoriesHasBeenSet =
false;
233 int m_publicIpv4AddressCount{0};
234 bool m_publicIpv4AddressCountHasBeenSet =
false;
Bundle & AddSupportedPlatforms(InstancePlatform value)
Bundle & WithPrice(double value)
const Aws::Vector< InstancePlatform > & GetSupportedPlatforms() const
bool NameHasBeenSet() const
void SetTransferPerMonthInGb(int value)
Bundle & WithSupportedAppCategories(SupportedAppCategoriesT &&value)
AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_LIGHTSAIL_API Bundle & operator=(Aws::Utils::Json::JsonView jsonValue)
bool PublicIpv4AddressCountHasBeenSet() const
Bundle & WithBundleId(BundleIdT &&value)
void SetRamSizeInGb(double value)
void SetDiskSizeInGb(int value)
Bundle & WithName(NameT &&value)
void SetCpuCount(int value)
void SetSupportedPlatforms(SupportedPlatformsT &&value)
int GetPublicIpv4AddressCount() const
bool DiskSizeInGbHasBeenSet() const
AWS_LIGHTSAIL_API Bundle(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetName() const
Bundle & WithSupportedPlatforms(SupportedPlatformsT &&value)
AWS_LIGHTSAIL_API Bundle()=default
int GetDiskSizeInGb() const
const Aws::Vector< AppCategory > & GetSupportedAppCategories() const
bool RamSizeInGbHasBeenSet() const
double GetRamSizeInGb() const
Bundle & WithIsActive(bool value)
bool IsActiveHasBeenSet() const
void SetPublicIpv4AddressCount(int value)
bool TransferPerMonthInGbHasBeenSet() const
bool CpuCountHasBeenSet() const
bool InstanceTypeHasBeenSet() const
const Aws::String & GetInstanceType() const
Bundle & WithCpuCount(int value)
bool PowerHasBeenSet() const
Bundle & WithPublicIpv4AddressCount(int value)
bool SupportedAppCategoriesHasBeenSet() const
Bundle & WithRamSizeInGb(double value)
Bundle & AddSupportedAppCategories(AppCategory value)
Bundle & WithPower(int value)
void SetSupportedAppCategories(SupportedAppCategoriesT &&value)
int GetTransferPerMonthInGb() const
bool SupportedPlatformsHasBeenSet() const
void SetInstanceType(InstanceTypeT &&value)
void SetPrice(double value)
Bundle & WithDiskSizeInGb(int value)
void SetIsActive(bool value)
void SetBundleId(BundleIdT &&value)
void SetName(NameT &&value)
bool PriceHasBeenSet() const
const Aws::String & GetBundleId() const
bool BundleIdHasBeenSet() const
Bundle & WithTransferPerMonthInGb(int value)
Bundle & WithInstanceType(InstanceTypeT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue