AWS SDK for C++

AWS SDK for C++ Version 1.11.889

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#include <aws/drs/model/SourceServerArchitecture.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace drs {
27namespace Model {
28
35 public:
36 AWS_DRS_API SourceProperties() = default;
40
42
45 inline const Aws::String& GetLastUpdatedDateTime() const { return m_lastUpdatedDateTime; }
46 inline bool LastUpdatedDateTimeHasBeenSet() const { return m_lastUpdatedDateTimeHasBeenSet; }
47 template <typename LastUpdatedDateTimeT = Aws::String>
48 void SetLastUpdatedDateTime(LastUpdatedDateTimeT&& value) {
49 m_lastUpdatedDateTimeHasBeenSet = true;
50 m_lastUpdatedDateTime = std::forward<LastUpdatedDateTimeT>(value);
51 }
52 template <typename LastUpdatedDateTimeT = Aws::String>
53 SourceProperties& WithLastUpdatedDateTime(LastUpdatedDateTimeT&& value) {
54 SetLastUpdatedDateTime(std::forward<LastUpdatedDateTimeT>(value));
55 return *this;
56 }
58
60
64 inline const Aws::String& GetRecommendedInstanceType() const { return m_recommendedInstanceType; }
65 inline bool RecommendedInstanceTypeHasBeenSet() const { return m_recommendedInstanceTypeHasBeenSet; }
66 template <typename RecommendedInstanceTypeT = Aws::String>
67 void SetRecommendedInstanceType(RecommendedInstanceTypeT&& value) {
68 m_recommendedInstanceTypeHasBeenSet = true;
69 m_recommendedInstanceType = std::forward<RecommendedInstanceTypeT>(value);
70 }
71 template <typename RecommendedInstanceTypeT = Aws::String>
72 SourceProperties& WithRecommendedInstanceType(RecommendedInstanceTypeT&& value) {
73 SetRecommendedInstanceType(std::forward<RecommendedInstanceTypeT>(value));
74 return *this;
75 }
77
79
82 inline const IdentificationHints& GetIdentificationHints() const { return m_identificationHints; }
83 inline bool IdentificationHintsHasBeenSet() const { return m_identificationHintsHasBeenSet; }
84 template <typename IdentificationHintsT = IdentificationHints>
85 void SetIdentificationHints(IdentificationHintsT&& value) {
86 m_identificationHintsHasBeenSet = true;
87 m_identificationHints = std::forward<IdentificationHintsT>(value);
88 }
89 template <typename IdentificationHintsT = IdentificationHints>
90 SourceProperties& WithIdentificationHints(IdentificationHintsT&& value) {
91 SetIdentificationHints(std::forward<IdentificationHintsT>(value));
92 return *this;
93 }
95
97
100 inline const Aws::Vector<NetworkInterface>& GetNetworkInterfaces() const { return m_networkInterfaces; }
101 inline bool NetworkInterfacesHasBeenSet() const { return m_networkInterfacesHasBeenSet; }
102 template <typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
103 void SetNetworkInterfaces(NetworkInterfacesT&& value) {
104 m_networkInterfacesHasBeenSet = true;
105 m_networkInterfaces = std::forward<NetworkInterfacesT>(value);
106 }
107 template <typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
108 SourceProperties& WithNetworkInterfaces(NetworkInterfacesT&& value) {
109 SetNetworkInterfaces(std::forward<NetworkInterfacesT>(value));
110 return *this;
111 }
112 template <typename NetworkInterfacesT = NetworkInterface>
113 SourceProperties& AddNetworkInterfaces(NetworkInterfacesT&& value) {
114 m_networkInterfacesHasBeenSet = true;
115 m_networkInterfaces.emplace_back(std::forward<NetworkInterfacesT>(value));
116 return *this;
117 }
119
121
124 inline const Aws::Vector<Disk>& GetDisks() const { return m_disks; }
125 inline bool DisksHasBeenSet() const { return m_disksHasBeenSet; }
126 template <typename DisksT = Aws::Vector<Disk>>
127 void SetDisks(DisksT&& value) {
128 m_disksHasBeenSet = true;
129 m_disks = std::forward<DisksT>(value);
130 }
131 template <typename DisksT = Aws::Vector<Disk>>
132 SourceProperties& WithDisks(DisksT&& value) {
133 SetDisks(std::forward<DisksT>(value));
134 return *this;
135 }
136 template <typename DisksT = Disk>
137 SourceProperties& AddDisks(DisksT&& value) {
138 m_disksHasBeenSet = true;
139 m_disks.emplace_back(std::forward<DisksT>(value));
140 return *this;
141 }
143
145
148 inline const Aws::Vector<CPU>& GetCpus() const { return m_cpus; }
149 inline bool CpusHasBeenSet() const { return m_cpusHasBeenSet; }
150 template <typename CpusT = Aws::Vector<CPU>>
151 void SetCpus(CpusT&& value) {
152 m_cpusHasBeenSet = true;
153 m_cpus = std::forward<CpusT>(value);
154 }
155 template <typename CpusT = Aws::Vector<CPU>>
156 SourceProperties& WithCpus(CpusT&& value) {
157 SetCpus(std::forward<CpusT>(value));
158 return *this;
159 }
160 template <typename CpusT = CPU>
161 SourceProperties& AddCpus(CpusT&& value) {
162 m_cpusHasBeenSet = true;
163 m_cpus.emplace_back(std::forward<CpusT>(value));
164 return *this;
165 }
167
169
172 inline long long GetRamBytes() const { return m_ramBytes; }
173 inline bool RamBytesHasBeenSet() const { return m_ramBytesHasBeenSet; }
174 inline void SetRamBytes(long long value) {
175 m_ramBytesHasBeenSet = true;
176 m_ramBytes = value;
177 }
178 inline SourceProperties& WithRamBytes(long long value) {
179 SetRamBytes(value);
180 return *this;
181 }
183
185
188 inline const OS& GetOs() const { return m_os; }
189 inline bool OsHasBeenSet() const { return m_osHasBeenSet; }
190 template <typename OsT = OS>
191 void SetOs(OsT&& value) {
192 m_osHasBeenSet = true;
193 m_os = std::forward<OsT>(value);
194 }
195 template <typename OsT = OS>
196 SourceProperties& WithOs(OsT&& value) {
197 SetOs(std::forward<OsT>(value));
198 return *this;
199 }
201
203
206 inline bool GetSupportsNitroInstances() const { return m_supportsNitroInstances; }
207 inline bool SupportsNitroInstancesHasBeenSet() const { return m_supportsNitroInstancesHasBeenSet; }
208 inline void SetSupportsNitroInstances(bool value) {
209 m_supportsNitroInstancesHasBeenSet = true;
210 m_supportsNitroInstances = value;
211 }
214 return *this;
215 }
217
219
222 inline SourceServerArchitecture GetArchitecture() const { return m_architecture; }
223 inline bool ArchitectureHasBeenSet() const { return m_architectureHasBeenSet; }
225 m_architectureHasBeenSet = true;
226 m_architecture = value;
227 }
229 SetArchitecture(value);
230 return *this;
231 }
233 private:
234 Aws::String m_lastUpdatedDateTime;
235
236 Aws::String m_recommendedInstanceType;
237
238 IdentificationHints m_identificationHints;
239
240 Aws::Vector<NetworkInterface> m_networkInterfaces;
241
242 Aws::Vector<Disk> m_disks;
243
244 Aws::Vector<CPU> m_cpus;
245
246 long long m_ramBytes{0};
247
248 OS m_os;
249
250 bool m_supportsNitroInstances{false};
251
253 bool m_lastUpdatedDateTimeHasBeenSet = false;
254 bool m_recommendedInstanceTypeHasBeenSet = false;
255 bool m_identificationHintsHasBeenSet = false;
256 bool m_networkInterfacesHasBeenSet = false;
257 bool m_disksHasBeenSet = false;
258 bool m_cpusHasBeenSet = false;
259 bool m_ramBytesHasBeenSet = false;
260 bool m_osHasBeenSet = false;
261 bool m_supportsNitroInstancesHasBeenSet = false;
262 bool m_architectureHasBeenSet = false;
263};
264
265} // namespace Model
266} // namespace drs
267} // namespace Aws
SourceProperties & WithLastUpdatedDateTime(LastUpdatedDateTimeT &&value)
void SetLastUpdatedDateTime(LastUpdatedDateTimeT &&value)
const Aws::Vector< NetworkInterface > & GetNetworkInterfaces() const
const IdentificationHints & GetIdentificationHints() const
SourceServerArchitecture GetArchitecture() 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)
void SetArchitecture(SourceServerArchitecture value)
SourceProperties & WithArchitecture(SourceServerArchitecture 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