AWS SDK for C++

AWS SDK for C++ Version 1.11.741

Loading...
Searching...
No Matches
SourceProperties.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/drs/Drs_EXPORTS.h>
10#include <aws/drs/model/CPU.h>
11#include <aws/drs/model/Disk.h>
12#include <aws/drs/model/IdentificationHints.h>
13#include <aws/drs/model/NetworkInterface.h>
14#include <aws/drs/model/OS.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace drs {
26namespace Model {
27
34 public:
35 AWS_DRS_API SourceProperties() = default;
39
41
44 inline const Aws::Vector<CPU>& GetCpus() const { return m_cpus; }
45 inline bool CpusHasBeenSet() const { return m_cpusHasBeenSet; }
46 template <typename CpusT = Aws::Vector<CPU>>
47 void SetCpus(CpusT&& value) {
48 m_cpusHasBeenSet = true;
49 m_cpus = std::forward<CpusT>(value);
50 }
51 template <typename CpusT = Aws::Vector<CPU>>
52 SourceProperties& WithCpus(CpusT&& value) {
53 SetCpus(std::forward<CpusT>(value));
54 return *this;
55 }
56 template <typename CpusT = CPU>
57 SourceProperties& AddCpus(CpusT&& value) {
58 m_cpusHasBeenSet = true;
59 m_cpus.emplace_back(std::forward<CpusT>(value));
60 return *this;
61 }
63
65
68 inline const Aws::Vector<Disk>& GetDisks() const { return m_disks; }
69 inline bool DisksHasBeenSet() const { return m_disksHasBeenSet; }
70 template <typename DisksT = Aws::Vector<Disk>>
71 void SetDisks(DisksT&& value) {
72 m_disksHasBeenSet = true;
73 m_disks = std::forward<DisksT>(value);
74 }
75 template <typename DisksT = Aws::Vector<Disk>>
76 SourceProperties& WithDisks(DisksT&& value) {
77 SetDisks(std::forward<DisksT>(value));
78 return *this;
79 }
80 template <typename DisksT = Disk>
81 SourceProperties& AddDisks(DisksT&& value) {
82 m_disksHasBeenSet = true;
83 m_disks.emplace_back(std::forward<DisksT>(value));
84 return *this;
85 }
87
89
92 inline const IdentificationHints& GetIdentificationHints() const { return m_identificationHints; }
93 inline bool IdentificationHintsHasBeenSet() const { return m_identificationHintsHasBeenSet; }
94 template <typename IdentificationHintsT = IdentificationHints>
95 void SetIdentificationHints(IdentificationHintsT&& value) {
96 m_identificationHintsHasBeenSet = true;
97 m_identificationHints = std::forward<IdentificationHintsT>(value);
98 }
99 template <typename IdentificationHintsT = IdentificationHints>
100 SourceProperties& WithIdentificationHints(IdentificationHintsT&& value) {
101 SetIdentificationHints(std::forward<IdentificationHintsT>(value));
102 return *this;
103 }
105
107
110 inline const Aws::String& GetLastUpdatedDateTime() const { return m_lastUpdatedDateTime; }
111 inline bool LastUpdatedDateTimeHasBeenSet() const { return m_lastUpdatedDateTimeHasBeenSet; }
112 template <typename LastUpdatedDateTimeT = Aws::String>
113 void SetLastUpdatedDateTime(LastUpdatedDateTimeT&& value) {
114 m_lastUpdatedDateTimeHasBeenSet = true;
115 m_lastUpdatedDateTime = std::forward<LastUpdatedDateTimeT>(value);
116 }
117 template <typename LastUpdatedDateTimeT = Aws::String>
118 SourceProperties& WithLastUpdatedDateTime(LastUpdatedDateTimeT&& value) {
119 SetLastUpdatedDateTime(std::forward<LastUpdatedDateTimeT>(value));
120 return *this;
121 }
123
125
128 inline const Aws::Vector<NetworkInterface>& GetNetworkInterfaces() const { return m_networkInterfaces; }
129 inline bool NetworkInterfacesHasBeenSet() const { return m_networkInterfacesHasBeenSet; }
130 template <typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
131 void SetNetworkInterfaces(NetworkInterfacesT&& value) {
132 m_networkInterfacesHasBeenSet = true;
133 m_networkInterfaces = std::forward<NetworkInterfacesT>(value);
134 }
135 template <typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
136 SourceProperties& WithNetworkInterfaces(NetworkInterfacesT&& value) {
137 SetNetworkInterfaces(std::forward<NetworkInterfacesT>(value));
138 return *this;
139 }
140 template <typename NetworkInterfacesT = NetworkInterface>
141 SourceProperties& AddNetworkInterfaces(NetworkInterfacesT&& value) {
142 m_networkInterfacesHasBeenSet = true;
143 m_networkInterfaces.emplace_back(std::forward<NetworkInterfacesT>(value));
144 return *this;
145 }
147
149
152 inline const OS& GetOs() const { return m_os; }
153 inline bool OsHasBeenSet() const { return m_osHasBeenSet; }
154 template <typename OsT = OS>
155 void SetOs(OsT&& value) {
156 m_osHasBeenSet = true;
157 m_os = std::forward<OsT>(value);
158 }
159 template <typename OsT = OS>
160 SourceProperties& WithOs(OsT&& value) {
161 SetOs(std::forward<OsT>(value));
162 return *this;
163 }
165
167
170 inline long long GetRamBytes() const { return m_ramBytes; }
171 inline bool RamBytesHasBeenSet() const { return m_ramBytesHasBeenSet; }
172 inline void SetRamBytes(long long value) {
173 m_ramBytesHasBeenSet = true;
174 m_ramBytes = value;
175 }
176 inline SourceProperties& WithRamBytes(long long value) {
177 SetRamBytes(value);
178 return *this;
179 }
181
183
187 inline const Aws::String& GetRecommendedInstanceType() const { return m_recommendedInstanceType; }
188 inline bool RecommendedInstanceTypeHasBeenSet() const { return m_recommendedInstanceTypeHasBeenSet; }
189 template <typename RecommendedInstanceTypeT = Aws::String>
190 void SetRecommendedInstanceType(RecommendedInstanceTypeT&& value) {
191 m_recommendedInstanceTypeHasBeenSet = true;
192 m_recommendedInstanceType = std::forward<RecommendedInstanceTypeT>(value);
193 }
194 template <typename RecommendedInstanceTypeT = Aws::String>
195 SourceProperties& WithRecommendedInstanceType(RecommendedInstanceTypeT&& value) {
196 SetRecommendedInstanceType(std::forward<RecommendedInstanceTypeT>(value));
197 return *this;
198 }
200
202
205 inline bool GetSupportsNitroInstances() const { return m_supportsNitroInstances; }
206 inline bool SupportsNitroInstancesHasBeenSet() const { return m_supportsNitroInstancesHasBeenSet; }
207 inline void SetSupportsNitroInstances(bool value) {
208 m_supportsNitroInstancesHasBeenSet = true;
209 m_supportsNitroInstances = value;
210 }
213 return *this;
214 }
216 private:
217 Aws::Vector<CPU> m_cpus;
218
219 Aws::Vector<Disk> m_disks;
220
221 IdentificationHints m_identificationHints;
222
223 Aws::String m_lastUpdatedDateTime;
224
225 Aws::Vector<NetworkInterface> m_networkInterfaces;
226
227 OS m_os;
228
229 long long m_ramBytes{0};
230
231 Aws::String m_recommendedInstanceType;
232
233 bool m_supportsNitroInstances{false};
234 bool m_cpusHasBeenSet = false;
235 bool m_disksHasBeenSet = false;
236 bool m_identificationHintsHasBeenSet = false;
237 bool m_lastUpdatedDateTimeHasBeenSet = false;
238 bool m_networkInterfacesHasBeenSet = false;
239 bool m_osHasBeenSet = false;
240 bool m_ramBytesHasBeenSet = false;
241 bool m_recommendedInstanceTypeHasBeenSet = false;
242 bool m_supportsNitroInstancesHasBeenSet = false;
243};
244
245} // namespace Model
246} // namespace drs
247} // namespace Aws
SourceProperties & WithLastUpdatedDateTime(LastUpdatedDateTimeT &&value)
void SetLastUpdatedDateTime(LastUpdatedDateTimeT &&value)
const Aws::Vector< NetworkInterface > & GetNetworkInterfaces() const
const IdentificationHints & GetIdentificationHints() const
AWS_DRS_API SourceProperties()=default
const Aws::Vector< Disk > & GetDisks() const
AWS_DRS_API SourceProperties & operator=(Aws::Utils::Json::JsonView jsonValue)
SourceProperties & WithSupportsNitroInstances(bool value)
SourceProperties & AddNetworkInterfaces(NetworkInterfacesT &&value)
SourceProperties & AddDisks(DisksT &&value)
AWS_DRS_API SourceProperties(Aws::Utils::Json::JsonView jsonValue)
void SetRecommendedInstanceType(RecommendedInstanceTypeT &&value)
SourceProperties & WithRecommendedInstanceType(RecommendedInstanceTypeT &&value)
const Aws::Vector< CPU > & GetCpus() const
const Aws::String & GetRecommendedInstanceType() const
void SetIdentificationHints(IdentificationHintsT &&value)
SourceProperties & WithNetworkInterfaces(NetworkInterfacesT &&value)
SourceProperties & WithCpus(CpusT &&value)
SourceProperties & WithRamBytes(long long value)
SourceProperties & AddCpus(CpusT &&value)
SourceProperties & WithDisks(DisksT &&value)
SourceProperties & WithOs(OsT &&value)
void SetNetworkInterfaces(NetworkInterfacesT &&value)
SourceProperties & WithIdentificationHints(IdentificationHintsT &&value)
AWS_DRS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetLastUpdatedDateTime() 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