AWS SDK for C++

AWS SDK for C++ Version 1.11.717

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/mgn/Mgn_EXPORTS.h>
10#include <aws/mgn/model/CPU.h>
11#include <aws/mgn/model/Disk.h>
12#include <aws/mgn/model/IdentificationHints.h>
13#include <aws/mgn/model/NetworkInterface.h>
14#include <aws/mgn/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 mgn {
26namespace Model {
27
34 public:
35 AWS_MGN_API SourceProperties() = default;
39
41
44 inline const Aws::String& GetLastUpdatedDateTime() const { return m_lastUpdatedDateTime; }
45 inline bool LastUpdatedDateTimeHasBeenSet() const { return m_lastUpdatedDateTimeHasBeenSet; }
46 template <typename LastUpdatedDateTimeT = Aws::String>
47 void SetLastUpdatedDateTime(LastUpdatedDateTimeT&& value) {
48 m_lastUpdatedDateTimeHasBeenSet = true;
49 m_lastUpdatedDateTime = std::forward<LastUpdatedDateTimeT>(value);
50 }
51 template <typename LastUpdatedDateTimeT = Aws::String>
52 SourceProperties& WithLastUpdatedDateTime(LastUpdatedDateTimeT&& value) {
53 SetLastUpdatedDateTime(std::forward<LastUpdatedDateTimeT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetRecommendedInstanceType() const { return m_recommendedInstanceType; }
63 inline bool RecommendedInstanceTypeHasBeenSet() const { return m_recommendedInstanceTypeHasBeenSet; }
64 template <typename RecommendedInstanceTypeT = Aws::String>
65 void SetRecommendedInstanceType(RecommendedInstanceTypeT&& value) {
66 m_recommendedInstanceTypeHasBeenSet = true;
67 m_recommendedInstanceType = std::forward<RecommendedInstanceTypeT>(value);
68 }
69 template <typename RecommendedInstanceTypeT = Aws::String>
70 SourceProperties& WithRecommendedInstanceType(RecommendedInstanceTypeT&& value) {
71 SetRecommendedInstanceType(std::forward<RecommendedInstanceTypeT>(value));
72 return *this;
73 }
75
77
80 inline const IdentificationHints& GetIdentificationHints() const { return m_identificationHints; }
81 inline bool IdentificationHintsHasBeenSet() const { return m_identificationHintsHasBeenSet; }
82 template <typename IdentificationHintsT = IdentificationHints>
83 void SetIdentificationHints(IdentificationHintsT&& value) {
84 m_identificationHintsHasBeenSet = true;
85 m_identificationHints = std::forward<IdentificationHintsT>(value);
86 }
87 template <typename IdentificationHintsT = IdentificationHints>
88 SourceProperties& WithIdentificationHints(IdentificationHintsT&& value) {
89 SetIdentificationHints(std::forward<IdentificationHintsT>(value));
90 return *this;
91 }
93
95
98 inline const Aws::Vector<NetworkInterface>& GetNetworkInterfaces() const { return m_networkInterfaces; }
99 inline bool NetworkInterfacesHasBeenSet() const { return m_networkInterfacesHasBeenSet; }
100 template <typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
101 void SetNetworkInterfaces(NetworkInterfacesT&& value) {
102 m_networkInterfacesHasBeenSet = true;
103 m_networkInterfaces = std::forward<NetworkInterfacesT>(value);
104 }
105 template <typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
106 SourceProperties& WithNetworkInterfaces(NetworkInterfacesT&& value) {
107 SetNetworkInterfaces(std::forward<NetworkInterfacesT>(value));
108 return *this;
109 }
110 template <typename NetworkInterfacesT = NetworkInterface>
111 SourceProperties& AddNetworkInterfaces(NetworkInterfacesT&& value) {
112 m_networkInterfacesHasBeenSet = true;
113 m_networkInterfaces.emplace_back(std::forward<NetworkInterfacesT>(value));
114 return *this;
115 }
117
119
122 inline const Aws::Vector<Disk>& GetDisks() const { return m_disks; }
123 inline bool DisksHasBeenSet() const { return m_disksHasBeenSet; }
124 template <typename DisksT = Aws::Vector<Disk>>
125 void SetDisks(DisksT&& value) {
126 m_disksHasBeenSet = true;
127 m_disks = std::forward<DisksT>(value);
128 }
129 template <typename DisksT = Aws::Vector<Disk>>
130 SourceProperties& WithDisks(DisksT&& value) {
131 SetDisks(std::forward<DisksT>(value));
132 return *this;
133 }
134 template <typename DisksT = Disk>
135 SourceProperties& AddDisks(DisksT&& value) {
136 m_disksHasBeenSet = true;
137 m_disks.emplace_back(std::forward<DisksT>(value));
138 return *this;
139 }
141
143
146 inline const Aws::Vector<CPU>& GetCpus() const { return m_cpus; }
147 inline bool CpusHasBeenSet() const { return m_cpusHasBeenSet; }
148 template <typename CpusT = Aws::Vector<CPU>>
149 void SetCpus(CpusT&& value) {
150 m_cpusHasBeenSet = true;
151 m_cpus = std::forward<CpusT>(value);
152 }
153 template <typename CpusT = Aws::Vector<CPU>>
154 SourceProperties& WithCpus(CpusT&& value) {
155 SetCpus(std::forward<CpusT>(value));
156 return *this;
157 }
158 template <typename CpusT = CPU>
159 SourceProperties& AddCpus(CpusT&& value) {
160 m_cpusHasBeenSet = true;
161 m_cpus.emplace_back(std::forward<CpusT>(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
186 inline const OS& GetOs() const { return m_os; }
187 inline bool OsHasBeenSet() const { return m_osHasBeenSet; }
188 template <typename OsT = OS>
189 void SetOs(OsT&& value) {
190 m_osHasBeenSet = true;
191 m_os = std::forward<OsT>(value);
192 }
193 template <typename OsT = OS>
194 SourceProperties& WithOs(OsT&& value) {
195 SetOs(std::forward<OsT>(value));
196 return *this;
197 }
199 private:
200 Aws::String m_lastUpdatedDateTime;
201
202 Aws::String m_recommendedInstanceType;
203
204 IdentificationHints m_identificationHints;
205
206 Aws::Vector<NetworkInterface> m_networkInterfaces;
207
208 Aws::Vector<Disk> m_disks;
209
210 Aws::Vector<CPU> m_cpus;
211
212 long long m_ramBytes{0};
213
214 OS m_os;
215 bool m_lastUpdatedDateTimeHasBeenSet = false;
216 bool m_recommendedInstanceTypeHasBeenSet = false;
217 bool m_identificationHintsHasBeenSet = false;
218 bool m_networkInterfacesHasBeenSet = false;
219 bool m_disksHasBeenSet = false;
220 bool m_cpusHasBeenSet = false;
221 bool m_ramBytesHasBeenSet = false;
222 bool m_osHasBeenSet = false;
223};
224
225} // namespace Model
226} // namespace mgn
227} // namespace Aws
const Aws::Vector< NetworkInterface > & GetNetworkInterfaces() 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 SetNetworkInterfaces(NetworkInterfacesT &&value)
AWS_MGN_API SourceProperties(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Disk > & GetDisks() const
SourceProperties & AddDisks(DisksT &&value)
void SetLastUpdatedDateTime(LastUpdatedDateTimeT &&value)
SourceProperties & WithCpus(CpusT &&value)
AWS_MGN_API SourceProperties()=default
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
SourceProperties & AddCpus(CpusT &&value)
void SetRecommendedInstanceType(RecommendedInstanceTypeT &&value)
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