AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
Component.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
11#include <aws/imagebuilder/model/ComponentParameterDetail.h>
12#include <aws/imagebuilder/model/ComponentState.h>
13#include <aws/imagebuilder/model/ComponentType.h>
14#include <aws/imagebuilder/model/Platform.h>
15#include <aws/imagebuilder/model/ProductCodeListItem.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace imagebuilder {
27namespace Model {
28
34class Component {
35 public:
36 AWS_IMAGEBUILDER_API Component() = default;
37 AWS_IMAGEBUILDER_API Component(Aws::Utils::Json::JsonView jsonValue);
38 AWS_IMAGEBUILDER_API Component& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
45 inline const Aws::String& GetArn() const { return m_arn; }
46 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
47 template <typename ArnT = Aws::String>
48 void SetArn(ArnT&& value) {
49 m_arnHasBeenSet = true;
50 m_arn = std::forward<ArnT>(value);
51 }
52 template <typename ArnT = Aws::String>
53 Component& WithArn(ArnT&& value) {
54 SetArn(std::forward<ArnT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetName() const { return m_name; }
64 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
65 template <typename NameT = Aws::String>
66 void SetName(NameT&& value) {
67 m_nameHasBeenSet = true;
68 m_name = std::forward<NameT>(value);
69 }
70 template <typename NameT = Aws::String>
71 Component& WithName(NameT&& value) {
72 SetName(std::forward<NameT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetVersion() const { return m_version; }
82 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
83 template <typename VersionT = Aws::String>
84 void SetVersion(VersionT&& value) {
85 m_versionHasBeenSet = true;
86 m_version = std::forward<VersionT>(value);
87 }
88 template <typename VersionT = Aws::String>
89 Component& WithVersion(VersionT&& value) {
90 SetVersion(std::forward<VersionT>(value));
91 return *this;
92 }
94
96
99 inline const Aws::String& GetDescription() const { return m_description; }
100 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
101 template <typename DescriptionT = Aws::String>
102 void SetDescription(DescriptionT&& value) {
103 m_descriptionHasBeenSet = true;
104 m_description = std::forward<DescriptionT>(value);
105 }
106 template <typename DescriptionT = Aws::String>
107 Component& WithDescription(DescriptionT&& value) {
108 SetDescription(std::forward<DescriptionT>(value));
109 return *this;
110 }
112
114
118 inline const Aws::String& GetChangeDescription() const { return m_changeDescription; }
119 inline bool ChangeDescriptionHasBeenSet() const { return m_changeDescriptionHasBeenSet; }
120 template <typename ChangeDescriptionT = Aws::String>
121 void SetChangeDescription(ChangeDescriptionT&& value) {
122 m_changeDescriptionHasBeenSet = true;
123 m_changeDescription = std::forward<ChangeDescriptionT>(value);
124 }
125 template <typename ChangeDescriptionT = Aws::String>
126 Component& WithChangeDescription(ChangeDescriptionT&& value) {
127 SetChangeDescription(std::forward<ChangeDescriptionT>(value));
128 return *this;
129 }
131
133
137 inline ComponentType GetType() const { return m_type; }
138 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
139 inline void SetType(ComponentType value) {
140 m_typeHasBeenSet = true;
141 m_type = value;
142 }
144 SetType(value);
145 return *this;
146 }
148
150
153 inline Platform GetPlatform() const { return m_platform; }
154 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
155 inline void SetPlatform(Platform value) {
156 m_platformHasBeenSet = true;
157 m_platform = value;
158 }
160 SetPlatform(value);
161 return *this;
162 }
164
166
171 inline const Aws::Vector<Aws::String>& GetSupportedOsVersions() const { return m_supportedOsVersions; }
172 inline bool SupportedOsVersionsHasBeenSet() const { return m_supportedOsVersionsHasBeenSet; }
173 template <typename SupportedOsVersionsT = Aws::Vector<Aws::String>>
174 void SetSupportedOsVersions(SupportedOsVersionsT&& value) {
175 m_supportedOsVersionsHasBeenSet = true;
176 m_supportedOsVersions = std::forward<SupportedOsVersionsT>(value);
177 }
178 template <typename SupportedOsVersionsT = Aws::Vector<Aws::String>>
179 Component& WithSupportedOsVersions(SupportedOsVersionsT&& value) {
180 SetSupportedOsVersions(std::forward<SupportedOsVersionsT>(value));
181 return *this;
182 }
183 template <typename SupportedOsVersionsT = Aws::String>
184 Component& AddSupportedOsVersions(SupportedOsVersionsT&& value) {
185 m_supportedOsVersionsHasBeenSet = true;
186 m_supportedOsVersions.emplace_back(std::forward<SupportedOsVersionsT>(value));
187 return *this;
188 }
190
192
195 inline const ComponentState& GetState() const { return m_state; }
196 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
197 template <typename StateT = ComponentState>
198 void SetState(StateT&& value) {
199 m_stateHasBeenSet = true;
200 m_state = std::forward<StateT>(value);
201 }
202 template <typename StateT = ComponentState>
203 Component& WithState(StateT&& value) {
204 SetState(std::forward<StateT>(value));
205 return *this;
206 }
208
210
214 inline const Aws::Vector<ComponentParameterDetail>& GetParameters() const { return m_parameters; }
215 inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; }
216 template <typename ParametersT = Aws::Vector<ComponentParameterDetail>>
217 void SetParameters(ParametersT&& value) {
218 m_parametersHasBeenSet = true;
219 m_parameters = std::forward<ParametersT>(value);
220 }
221 template <typename ParametersT = Aws::Vector<ComponentParameterDetail>>
222 Component& WithParameters(ParametersT&& value) {
223 SetParameters(std::forward<ParametersT>(value));
224 return *this;
225 }
226 template <typename ParametersT = ComponentParameterDetail>
227 Component& AddParameters(ParametersT&& value) {
228 m_parametersHasBeenSet = true;
229 m_parameters.emplace_back(std::forward<ParametersT>(value));
230 return *this;
231 }
233
235
238 inline const Aws::String& GetOwner() const { return m_owner; }
239 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; }
240 template <typename OwnerT = Aws::String>
241 void SetOwner(OwnerT&& value) {
242 m_ownerHasBeenSet = true;
243 m_owner = std::forward<OwnerT>(value);
244 }
245 template <typename OwnerT = Aws::String>
246 Component& WithOwner(OwnerT&& value) {
247 SetOwner(std::forward<OwnerT>(value));
248 return *this;
249 }
251
253
256 inline const Aws::String& GetData() const { return m_data; }
257 inline bool DataHasBeenSet() const { return m_dataHasBeenSet; }
258 template <typename DataT = Aws::String>
259 void SetData(DataT&& value) {
260 m_dataHasBeenSet = true;
261 m_data = std::forward<DataT>(value);
262 }
263 template <typename DataT = Aws::String>
264 Component& WithData(DataT&& value) {
265 SetData(std::forward<DataT>(value));
266 return *this;
267 }
269
271
278 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
279 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
280 template <typename KmsKeyIdT = Aws::String>
281 void SetKmsKeyId(KmsKeyIdT&& value) {
282 m_kmsKeyIdHasBeenSet = true;
283 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
284 }
285 template <typename KmsKeyIdT = Aws::String>
286 Component& WithKmsKeyId(KmsKeyIdT&& value) {
287 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
288 return *this;
289 }
291
293
296 inline bool GetEncrypted() const { return m_encrypted; }
297 inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; }
298 inline void SetEncrypted(bool value) {
299 m_encryptedHasBeenSet = true;
300 m_encrypted = value;
301 }
302 inline Component& WithEncrypted(bool value) {
303 SetEncrypted(value);
304 return *this;
305 }
307
309
312 inline const Aws::String& GetDateCreated() const { return m_dateCreated; }
313 inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }
314 template <typename DateCreatedT = Aws::String>
315 void SetDateCreated(DateCreatedT&& value) {
316 m_dateCreatedHasBeenSet = true;
317 m_dateCreated = std::forward<DateCreatedT>(value);
318 }
319 template <typename DateCreatedT = Aws::String>
320 Component& WithDateCreated(DateCreatedT&& value) {
321 SetDateCreated(std::forward<DateCreatedT>(value));
322 return *this;
323 }
325
327
330 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
331 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
332 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
333 void SetTags(TagsT&& value) {
334 m_tagsHasBeenSet = true;
335 m_tags = std::forward<TagsT>(value);
336 }
337 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
338 Component& WithTags(TagsT&& value) {
339 SetTags(std::forward<TagsT>(value));
340 return *this;
341 }
342 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
343 Component& AddTags(TagsKeyT&& key, TagsValueT&& value) {
344 m_tagsHasBeenSet = true;
345 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
346 return *this;
347 }
349
351
355 inline const Aws::String& GetPublisher() const { return m_publisher; }
356 inline bool PublisherHasBeenSet() const { return m_publisherHasBeenSet; }
357 template <typename PublisherT = Aws::String>
358 void SetPublisher(PublisherT&& value) {
359 m_publisherHasBeenSet = true;
360 m_publisher = std::forward<PublisherT>(value);
361 }
362 template <typename PublisherT = Aws::String>
363 Component& WithPublisher(PublisherT&& value) {
364 SetPublisher(std::forward<PublisherT>(value));
365 return *this;
366 }
368
370
374 inline bool GetObfuscate() const { return m_obfuscate; }
375 inline bool ObfuscateHasBeenSet() const { return m_obfuscateHasBeenSet; }
376 inline void SetObfuscate(bool value) {
377 m_obfuscateHasBeenSet = true;
378 m_obfuscate = value;
379 }
380 inline Component& WithObfuscate(bool value) {
381 SetObfuscate(value);
382 return *this;
383 }
385
387
391 inline const Aws::Vector<ProductCodeListItem>& GetProductCodes() const { return m_productCodes; }
392 inline bool ProductCodesHasBeenSet() const { return m_productCodesHasBeenSet; }
393 template <typename ProductCodesT = Aws::Vector<ProductCodeListItem>>
394 void SetProductCodes(ProductCodesT&& value) {
395 m_productCodesHasBeenSet = true;
396 m_productCodes = std::forward<ProductCodesT>(value);
397 }
398 template <typename ProductCodesT = Aws::Vector<ProductCodeListItem>>
399 Component& WithProductCodes(ProductCodesT&& value) {
400 SetProductCodes(std::forward<ProductCodesT>(value));
401 return *this;
402 }
403 template <typename ProductCodesT = ProductCodeListItem>
404 Component& AddProductCodes(ProductCodesT&& value) {
405 m_productCodesHasBeenSet = true;
406 m_productCodes.emplace_back(std::forward<ProductCodesT>(value));
407 return *this;
408 }
410 private:
411 Aws::String m_arn;
412
413 Aws::String m_name;
414
415 Aws::String m_version;
416
417 Aws::String m_description;
418
419 Aws::String m_changeDescription;
420
422
423 Platform m_platform{Platform::NOT_SET};
424
425 Aws::Vector<Aws::String> m_supportedOsVersions;
426
427 ComponentState m_state;
428
430
431 Aws::String m_owner;
432
433 Aws::String m_data;
434
435 Aws::String m_kmsKeyId;
436
437 bool m_encrypted{false};
438
439 Aws::String m_dateCreated;
440
442
443 Aws::String m_publisher;
444
445 bool m_obfuscate{false};
446
448 bool m_arnHasBeenSet = false;
449 bool m_nameHasBeenSet = false;
450 bool m_versionHasBeenSet = false;
451 bool m_descriptionHasBeenSet = false;
452 bool m_changeDescriptionHasBeenSet = false;
453 bool m_typeHasBeenSet = false;
454 bool m_platformHasBeenSet = false;
455 bool m_supportedOsVersionsHasBeenSet = false;
456 bool m_stateHasBeenSet = false;
457 bool m_parametersHasBeenSet = false;
458 bool m_ownerHasBeenSet = false;
459 bool m_dataHasBeenSet = false;
460 bool m_kmsKeyIdHasBeenSet = false;
461 bool m_encryptedHasBeenSet = false;
462 bool m_dateCreatedHasBeenSet = false;
463 bool m_tagsHasBeenSet = false;
464 bool m_publisherHasBeenSet = false;
465 bool m_obfuscateHasBeenSet = false;
466 bool m_productCodesHasBeenSet = false;
467};
468
469} // namespace Model
470} // namespace imagebuilder
471} // namespace Aws
const Aws::String & GetName() const
Definition Component.h:63
AWS_IMAGEBUILDER_API Component & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetSupportedOsVersions() const
Definition Component.h:171
const Aws::String & GetDescription() const
Definition Component.h:99
void SetState(StateT &&value)
Definition Component.h:198
void SetKmsKeyId(KmsKeyIdT &&value)
Definition Component.h:281
Component & WithPlatform(Platform value)
Definition Component.h:159
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Definition Component.h:330
const Aws::String & GetKmsKeyId() const
Definition Component.h:278
Component & WithType(ComponentType value)
Definition Component.h:143
const Aws::String & GetArn() const
Definition Component.h:45
Component & WithName(NameT &&value)
Definition Component.h:71
Component & WithDescription(DescriptionT &&value)
Definition Component.h:107
Component & WithVersion(VersionT &&value)
Definition Component.h:89
Component & WithEncrypted(bool value)
Definition Component.h:302
const Aws::String & GetDateCreated() const
Definition Component.h:312
Component & WithTags(TagsT &&value)
Definition Component.h:338
Component & WithKmsKeyId(KmsKeyIdT &&value)
Definition Component.h:286
Component & WithArn(ArnT &&value)
Definition Component.h:53
Component & WithChangeDescription(ChangeDescriptionT &&value)
Definition Component.h:126
Component & WithOwner(OwnerT &&value)
Definition Component.h:246
Component & WithProductCodes(ProductCodesT &&value)
Definition Component.h:399
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
Component & WithState(StateT &&value)
Definition Component.h:203
Component & WithObfuscate(bool value)
Definition Component.h:380
void SetPublisher(PublisherT &&value)
Definition Component.h:358
Component & WithDateCreated(DateCreatedT &&value)
Definition Component.h:320
const Aws::String & GetPublisher() const
Definition Component.h:355
const Aws::Vector< ProductCodeListItem > & GetProductCodes() const
Definition Component.h:391
void SetDescription(DescriptionT &&value)
Definition Component.h:102
void SetSupportedOsVersions(SupportedOsVersionsT &&value)
Definition Component.h:174
AWS_IMAGEBUILDER_API Component()=default
Component & WithParameters(ParametersT &&value)
Definition Component.h:222
ComponentType GetType() const
Definition Component.h:137
const Aws::String & GetChangeDescription() const
Definition Component.h:118
void SetDateCreated(DateCreatedT &&value)
Definition Component.h:315
const Aws::String & GetVersion() const
Definition Component.h:81
Component & WithData(DataT &&value)
Definition Component.h:264
const Aws::String & GetData() const
Definition Component.h:256
const Aws::String & GetOwner() const
Definition Component.h:238
void SetPlatform(Platform value)
Definition Component.h:155
const Aws::Vector< ComponentParameterDetail > & GetParameters() const
Definition Component.h:214
Component & AddProductCodes(ProductCodesT &&value)
Definition Component.h:404
AWS_IMAGEBUILDER_API Component(Aws::Utils::Json::JsonView jsonValue)
void SetParameters(ParametersT &&value)
Definition Component.h:217
void SetType(ComponentType value)
Definition Component.h:139
void SetOwner(OwnerT &&value)
Definition Component.h:241
void SetChangeDescription(ChangeDescriptionT &&value)
Definition Component.h:121
void SetVersion(VersionT &&value)
Definition Component.h:84
Component & WithSupportedOsVersions(SupportedOsVersionsT &&value)
Definition Component.h:179
Component & AddParameters(ParametersT &&value)
Definition Component.h:227
Component & AddTags(TagsKeyT &&key, TagsValueT &&value)
Definition Component.h:343
void SetProductCodes(ProductCodesT &&value)
Definition Component.h:394
Component & WithPublisher(PublisherT &&value)
Definition Component.h:363
const ComponentState & GetState() const
Definition Component.h:195
Component & AddSupportedOsVersions(SupportedOsVersionsT &&value)
Definition Component.h:184
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue