AWS SDK for C++

AWS SDK for C++ Version 1.11.902

Loading...
Searching...
No Matches
ComponentVersion.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/imagebuilder/Imagebuilder_EXPORTS.h>
10#include <aws/imagebuilder/model/ComponentStatus.h>
11#include <aws/imagebuilder/model/ComponentType.h>
12#include <aws/imagebuilder/model/Platform.h>
13#include <aws/imagebuilder/model/ProductCodeListItem.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace imagebuilder {
25namespace Model {
26
34 public:
35 AWS_IMAGEBUILDER_API ComponentVersion() = default;
36 AWS_IMAGEBUILDER_API ComponentVersion(Aws::Utils::Json::JsonView jsonValue);
37 AWS_IMAGEBUILDER_API ComponentVersion& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
52 inline const Aws::String& GetArn() const { return m_arn; }
53 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
54 template <typename ArnT = Aws::String>
55 void SetArn(ArnT&& value) {
56 m_arnHasBeenSet = true;
57 m_arn = std::forward<ArnT>(value);
58 }
59 template <typename ArnT = Aws::String>
60 ComponentVersion& WithArn(ArnT&& value) {
61 SetArn(std::forward<ArnT>(value));
62 return *this;
63 }
65
67
70 inline const Aws::String& GetName() const { return m_name; }
71 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
72 template <typename NameT = Aws::String>
73 void SetName(NameT&& value) {
74 m_nameHasBeenSet = true;
75 m_name = std::forward<NameT>(value);
76 }
77 template <typename NameT = Aws::String>
78 ComponentVersion& WithName(NameT&& value) {
79 SetName(std::forward<NameT>(value));
80 return *this;
81 }
83
85
100 inline const Aws::String& GetVersion() const { return m_version; }
101 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
102 template <typename VersionT = Aws::String>
103 void SetVersion(VersionT&& value) {
104 m_versionHasBeenSet = true;
105 m_version = std::forward<VersionT>(value);
106 }
107 template <typename VersionT = Aws::String>
108 ComponentVersion& WithVersion(VersionT&& value) {
109 SetVersion(std::forward<VersionT>(value));
110 return *this;
111 }
113
115
118 inline const Aws::String& GetDescription() const { return m_description; }
119 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
120 template <typename DescriptionT = Aws::String>
121 void SetDescription(DescriptionT&& value) {
122 m_descriptionHasBeenSet = true;
123 m_description = std::forward<DescriptionT>(value);
124 }
125 template <typename DescriptionT = Aws::String>
126 ComponentVersion& WithDescription(DescriptionT&& value) {
127 SetDescription(std::forward<DescriptionT>(value));
128 return *this;
129 }
131
133
136 inline Platform GetPlatform() const { return m_platform; }
137 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
138 inline void SetPlatform(Platform value) {
139 m_platformHasBeenSet = true;
140 m_platform = value;
141 }
143 SetPlatform(value);
144 return *this;
145 }
147
149
154 inline const Aws::Vector<Aws::String>& GetSupportedOsVersions() const { return m_supportedOsVersions; }
155 inline bool SupportedOsVersionsHasBeenSet() const { return m_supportedOsVersionsHasBeenSet; }
156 template <typename SupportedOsVersionsT = Aws::Vector<Aws::String>>
157 void SetSupportedOsVersions(SupportedOsVersionsT&& value) {
158 m_supportedOsVersionsHasBeenSet = true;
159 m_supportedOsVersions = std::forward<SupportedOsVersionsT>(value);
160 }
161 template <typename SupportedOsVersionsT = Aws::Vector<Aws::String>>
162 ComponentVersion& WithSupportedOsVersions(SupportedOsVersionsT&& value) {
163 SetSupportedOsVersions(std::forward<SupportedOsVersionsT>(value));
164 return *this;
165 }
166 template <typename SupportedOsVersionsT = Aws::String>
167 ComponentVersion& AddSupportedOsVersions(SupportedOsVersionsT&& value) {
168 m_supportedOsVersionsHasBeenSet = true;
169 m_supportedOsVersions.emplace_back(std::forward<SupportedOsVersionsT>(value));
170 return *this;
171 }
173
175
179 inline ComponentType GetType() const { return m_type; }
180 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
181 inline void SetType(ComponentType value) {
182 m_typeHasBeenSet = true;
183 m_type = value;
184 }
186 SetType(value);
187 return *this;
188 }
190
192
197 inline const Aws::String& GetOwner() const { return m_owner; }
198 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; }
199 template <typename OwnerT = Aws::String>
200 void SetOwner(OwnerT&& value) {
201 m_ownerHasBeenSet = true;
202 m_owner = std::forward<OwnerT>(value);
203 }
204 template <typename OwnerT = Aws::String>
205 ComponentVersion& WithOwner(OwnerT&& value) {
206 SetOwner(std::forward<OwnerT>(value));
207 return *this;
208 }
210
212
215 inline const Aws::String& GetDateCreated() const { return m_dateCreated; }
216 inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }
217 template <typename DateCreatedT = Aws::String>
218 void SetDateCreated(DateCreatedT&& value) {
219 m_dateCreatedHasBeenSet = true;
220 m_dateCreated = std::forward<DateCreatedT>(value);
221 }
222 template <typename DateCreatedT = Aws::String>
223 ComponentVersion& WithDateCreated(DateCreatedT&& value) {
224 SetDateCreated(std::forward<DateCreatedT>(value));
225 return *this;
226 }
228
230
233 inline ComponentStatus GetStatus() const { return m_status; }
234 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
235 inline void SetStatus(ComponentStatus value) {
236 m_statusHasBeenSet = true;
237 m_status = value;
238 }
240 SetStatus(value);
241 return *this;
242 }
244
246
250 inline const Aws::Vector<ProductCodeListItem>& GetProductCodes() const { return m_productCodes; }
251 inline bool ProductCodesHasBeenSet() const { return m_productCodesHasBeenSet; }
252 template <typename ProductCodesT = Aws::Vector<ProductCodeListItem>>
253 void SetProductCodes(ProductCodesT&& value) {
254 m_productCodesHasBeenSet = true;
255 m_productCodes = std::forward<ProductCodesT>(value);
256 }
257 template <typename ProductCodesT = Aws::Vector<ProductCodeListItem>>
258 ComponentVersion& WithProductCodes(ProductCodesT&& value) {
259 SetProductCodes(std::forward<ProductCodesT>(value));
260 return *this;
261 }
262 template <typename ProductCodesT = ProductCodeListItem>
263 ComponentVersion& AddProductCodes(ProductCodesT&& value) {
264 m_productCodesHasBeenSet = true;
265 m_productCodes.emplace_back(std::forward<ProductCodesT>(value));
266 return *this;
267 }
269 private:
270 Aws::String m_arn;
271
272 Aws::String m_name;
273
274 Aws::String m_version;
275
276 Aws::String m_description;
277
278 Platform m_platform{Platform::NOT_SET};
279
280 Aws::Vector<Aws::String> m_supportedOsVersions;
281
283
284 Aws::String m_owner;
285
286 Aws::String m_dateCreated;
287
289
291 bool m_arnHasBeenSet = false;
292 bool m_nameHasBeenSet = false;
293 bool m_versionHasBeenSet = false;
294 bool m_descriptionHasBeenSet = false;
295 bool m_platformHasBeenSet = false;
296 bool m_supportedOsVersionsHasBeenSet = false;
297 bool m_typeHasBeenSet = false;
298 bool m_ownerHasBeenSet = false;
299 bool m_dateCreatedHasBeenSet = false;
300 bool m_statusHasBeenSet = false;
301 bool m_productCodesHasBeenSet = false;
302};
303
304} // namespace Model
305} // namespace imagebuilder
306} // namespace Aws
ComponentVersion & WithProductCodes(ProductCodesT &&value)
const Aws::Vector< ProductCodeListItem > & GetProductCodes() const
ComponentVersion & AddSupportedOsVersions(SupportedOsVersionsT &&value)
AWS_IMAGEBUILDER_API ComponentVersion()=default
void SetSupportedOsVersions(SupportedOsVersionsT &&value)
ComponentVersion & WithDateCreated(DateCreatedT &&value)
ComponentVersion & WithType(ComponentType value)
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
ComponentVersion & WithDescription(DescriptionT &&value)
ComponentVersion & WithVersion(VersionT &&value)
AWS_IMAGEBUILDER_API ComponentVersion & operator=(Aws::Utils::Json::JsonView jsonValue)
ComponentVersion & WithStatus(ComponentStatus value)
ComponentVersion & WithOwner(OwnerT &&value)
ComponentVersion & AddProductCodes(ProductCodesT &&value)
ComponentVersion & WithName(NameT &&value)
ComponentVersion & WithPlatform(Platform value)
const Aws::Vector< Aws::String > & GetSupportedOsVersions() const
ComponentVersion & WithArn(ArnT &&value)
AWS_IMAGEBUILDER_API ComponentVersion(Aws::Utils::Json::JsonView jsonValue)
void SetProductCodes(ProductCodesT &&value)
ComponentVersion & WithSupportedOsVersions(SupportedOsVersionsT &&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