7#include <aws/mgn/Mgn_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/mgn/model/IdentificationHints.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/mgn/model/OS.h>
12#include <aws/mgn/model/CPU.h>
13#include <aws/mgn/model/Disk.h>
14#include <aws/mgn/model/NetworkInterface.h>
52 template<
typename CpusT = Aws::Vector<CPU>>
53 void SetCpus(CpusT&& value) { m_cpusHasBeenSet =
true; m_cpus = std::forward<CpusT>(value); }
54 template<
typename CpusT = Aws::Vector<CPU>>
56 template<
typename CpusT = CPU>
57 SourceProperties&
AddCpus(CpusT&& value) { m_cpusHasBeenSet =
true; m_cpus.emplace_back(std::forward<CpusT>(value));
return *
this; }
66 template<
typename DisksT = Aws::Vector<Disk>>
67 void SetDisks(DisksT&& value) { m_disksHasBeenSet =
true; m_disks = std::forward<DisksT>(value); }
68 template<
typename DisksT = Aws::Vector<Disk>>
70 template<
typename DisksT = Disk>
71 SourceProperties&
AddDisks(DisksT&& value) { m_disksHasBeenSet =
true; m_disks.emplace_back(std::forward<DisksT>(value));
return *
this; }
80 template<
typename IdentificationH
intsT = IdentificationH
ints>
81 void SetIdentificationHints(IdentificationHintsT&& value) { m_identificationHintsHasBeenSet =
true; m_identificationHints = std::forward<IdentificationHintsT>(value); }
82 template<
typename IdentificationH
intsT = IdentificationH
ints>
92 template<
typename LastUpdatedDateTimeT = Aws::String>
93 void SetLastUpdatedDateTime(LastUpdatedDateTimeT&& value) { m_lastUpdatedDateTimeHasBeenSet =
true; m_lastUpdatedDateTime = std::forward<LastUpdatedDateTimeT>(value); }
94 template<
typename LastUpdatedDateTimeT = Aws::String>
104 template<
typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
105 void SetNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet =
true; m_networkInterfaces = std::forward<NetworkInterfacesT>(value); }
106 template<
typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
108 template<
typename NetworkInterfacesT = NetworkInterface>
109 SourceProperties&
AddNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet =
true; m_networkInterfaces.emplace_back(std::forward<NetworkInterfacesT>(value));
return *
this; }
116 inline const OS&
GetOs()
const {
return m_os; }
118 template<
typename OsT = OS>
119 void SetOs(OsT&& value) { m_osHasBeenSet =
true; m_os = std::forward<OsT>(value); }
120 template<
typename OsT = OS>
130 inline void SetRamBytes(
long long value) { m_ramBytesHasBeenSet =
true; m_ramBytes = value; }
140 template<
typename RecommendedInstanceTypeT = Aws::String>
141 void SetRecommendedInstanceType(RecommendedInstanceTypeT&& value) { m_recommendedInstanceTypeHasBeenSet =
true; m_recommendedInstanceType = std::forward<RecommendedInstanceTypeT>(value); }
142 template<
typename RecommendedInstanceTypeT = Aws::String>
148 bool m_cpusHasBeenSet =
false;
151 bool m_disksHasBeenSet =
false;
154 bool m_identificationHintsHasBeenSet =
false;
157 bool m_lastUpdatedDateTimeHasBeenSet =
false;
160 bool m_networkInterfacesHasBeenSet =
false;
163 bool m_osHasBeenSet =
false;
165 long long m_ramBytes{0};
166 bool m_ramBytesHasBeenSet =
false;
169 bool m_recommendedInstanceTypeHasBeenSet =
false;
void SetRamBytes(long long value)
bool RamBytesHasBeenSet() const
const Aws::Vector< NetworkInterface > & GetNetworkInterfaces() const
bool DisksHasBeenSet() const
bool RecommendedInstanceTypeHasBeenSet() const
SourceProperties & WithOs(OsT &&value)
const Aws::String & GetRecommendedInstanceType() const
AWS_MGN_API Aws::Utils::Json::JsonValue Jsonize() const
SourceProperties & WithRamBytes(long long value)
void SetIdentificationHints(IdentificationHintsT &&value)
SourceProperties & WithRecommendedInstanceType(RecommendedInstanceTypeT &&value)
SourceProperties & WithDisks(DisksT &&value)
const IdentificationHints & GetIdentificationHints() const
SourceProperties & WithNetworkInterfaces(NetworkInterfacesT &&value)
void SetDisks(DisksT &&value)
bool NetworkInterfacesHasBeenSet() const
void SetNetworkInterfaces(NetworkInterfacesT &&value)
AWS_MGN_API SourceProperties(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Disk > & GetDisks() const
SourceProperties & AddDisks(DisksT &&value)
void SetCpus(CpusT &&value)
void SetLastUpdatedDateTime(LastUpdatedDateTimeT &&value)
bool IdentificationHintsHasBeenSet() const
bool LastUpdatedDateTimeHasBeenSet() const
SourceProperties & WithCpus(CpusT &&value)
AWS_MGN_API SourceProperties()=default
long long GetRamBytes() const
const Aws::String & GetLastUpdatedDateTime() const
SourceProperties & WithIdentificationHints(IdentificationHintsT &&value)
AWS_MGN_API SourceProperties & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< CPU > & GetCpus() const
bool CpusHasBeenSet() const
SourceProperties & AddCpus(CpusT &&value)
void SetRecommendedInstanceType(RecommendedInstanceTypeT &&value)
bool OsHasBeenSet() const
SourceProperties & WithLastUpdatedDateTime(LastUpdatedDateTimeT &&value)
SourceProperties & AddNetworkInterfaces(NetworkInterfacesT &&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