AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
Component.h
1
6#pragma once
7#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/imagebuilder/model/ComponentType.h>
10#include <aws/imagebuilder/model/Platform.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/imagebuilder/model/ComponentState.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/imagebuilder/model/ComponentParameterDetail.h>
15#include <aws/imagebuilder/model/ProductCodeListItem.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace imagebuilder
29{
30namespace Model
31{
32
39 {
40 public:
41 AWS_IMAGEBUILDER_API Component() = default;
42 AWS_IMAGEBUILDER_API Component(Aws::Utils::Json::JsonView jsonValue);
43 AWS_IMAGEBUILDER_API Component& operator=(Aws::Utils::Json::JsonView jsonValue);
44 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const Aws::String& GetArn() const { return m_arn; }
52 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
53 template<typename ArnT = Aws::String>
54 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
55 template<typename ArnT = Aws::String>
56 Component& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
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) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
67 template<typename NameT = Aws::String>
68 Component& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
70
72
75 inline const Aws::String& GetVersion() const { return m_version; }
76 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
77 template<typename VersionT = Aws::String>
78 void SetVersion(VersionT&& value) { m_versionHasBeenSet = true; m_version = std::forward<VersionT>(value); }
79 template<typename VersionT = Aws::String>
80 Component& WithVersion(VersionT&& value) { SetVersion(std::forward<VersionT>(value)); return *this;}
82
84
87 inline const Aws::String& GetDescription() const { return m_description; }
88 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
89 template<typename DescriptionT = Aws::String>
90 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
91 template<typename DescriptionT = Aws::String>
92 Component& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
94
96
100 inline const Aws::String& GetChangeDescription() const { return m_changeDescription; }
101 inline bool ChangeDescriptionHasBeenSet() const { return m_changeDescriptionHasBeenSet; }
102 template<typename ChangeDescriptionT = Aws::String>
103 void SetChangeDescription(ChangeDescriptionT&& value) { m_changeDescriptionHasBeenSet = true; m_changeDescription = std::forward<ChangeDescriptionT>(value); }
104 template<typename ChangeDescriptionT = Aws::String>
105 Component& WithChangeDescription(ChangeDescriptionT&& value) { SetChangeDescription(std::forward<ChangeDescriptionT>(value)); return *this;}
107
109
113 inline ComponentType GetType() const { return m_type; }
114 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
115 inline void SetType(ComponentType value) { m_typeHasBeenSet = true; m_type = value; }
116 inline Component& WithType(ComponentType value) { SetType(value); return *this;}
118
120
123 inline Platform GetPlatform() const { return m_platform; }
124 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
125 inline void SetPlatform(Platform value) { m_platformHasBeenSet = true; m_platform = value; }
126 inline Component& WithPlatform(Platform value) { SetPlatform(value); return *this;}
128
130
135 inline const Aws::Vector<Aws::String>& GetSupportedOsVersions() const { return m_supportedOsVersions; }
136 inline bool SupportedOsVersionsHasBeenSet() const { return m_supportedOsVersionsHasBeenSet; }
137 template<typename SupportedOsVersionsT = Aws::Vector<Aws::String>>
138 void SetSupportedOsVersions(SupportedOsVersionsT&& value) { m_supportedOsVersionsHasBeenSet = true; m_supportedOsVersions = std::forward<SupportedOsVersionsT>(value); }
139 template<typename SupportedOsVersionsT = Aws::Vector<Aws::String>>
140 Component& WithSupportedOsVersions(SupportedOsVersionsT&& value) { SetSupportedOsVersions(std::forward<SupportedOsVersionsT>(value)); return *this;}
141 template<typename SupportedOsVersionsT = Aws::String>
142 Component& AddSupportedOsVersions(SupportedOsVersionsT&& value) { m_supportedOsVersionsHasBeenSet = true; m_supportedOsVersions.emplace_back(std::forward<SupportedOsVersionsT>(value)); return *this; }
144
146
149 inline const ComponentState& GetState() const { return m_state; }
150 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
151 template<typename StateT = ComponentState>
152 void SetState(StateT&& value) { m_stateHasBeenSet = true; m_state = std::forward<StateT>(value); }
153 template<typename StateT = ComponentState>
154 Component& WithState(StateT&& value) { SetState(std::forward<StateT>(value)); return *this;}
156
158
162 inline const Aws::Vector<ComponentParameterDetail>& GetParameters() const { return m_parameters; }
163 inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; }
164 template<typename ParametersT = Aws::Vector<ComponentParameterDetail>>
165 void SetParameters(ParametersT&& value) { m_parametersHasBeenSet = true; m_parameters = std::forward<ParametersT>(value); }
166 template<typename ParametersT = Aws::Vector<ComponentParameterDetail>>
167 Component& WithParameters(ParametersT&& value) { SetParameters(std::forward<ParametersT>(value)); return *this;}
168 template<typename ParametersT = ComponentParameterDetail>
169 Component& AddParameters(ParametersT&& value) { m_parametersHasBeenSet = true; m_parameters.emplace_back(std::forward<ParametersT>(value)); return *this; }
171
173
176 inline const Aws::String& GetOwner() const { return m_owner; }
177 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; }
178 template<typename OwnerT = Aws::String>
179 void SetOwner(OwnerT&& value) { m_ownerHasBeenSet = true; m_owner = std::forward<OwnerT>(value); }
180 template<typename OwnerT = Aws::String>
181 Component& WithOwner(OwnerT&& value) { SetOwner(std::forward<OwnerT>(value)); return *this;}
183
185
188 inline const Aws::String& GetData() const { return m_data; }
189 inline bool DataHasBeenSet() const { return m_dataHasBeenSet; }
190 template<typename DataT = Aws::String>
191 void SetData(DataT&& value) { m_dataHasBeenSet = true; m_data = std::forward<DataT>(value); }
192 template<typename DataT = Aws::String>
193 Component& WithData(DataT&& value) { SetData(std::forward<DataT>(value)); return *this;}
195
197
200 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
201 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
202 template<typename KmsKeyIdT = Aws::String>
203 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
204 template<typename KmsKeyIdT = Aws::String>
205 Component& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
207
209
212 inline bool GetEncrypted() const { return m_encrypted; }
213 inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; }
214 inline void SetEncrypted(bool value) { m_encryptedHasBeenSet = true; m_encrypted = value; }
215 inline Component& WithEncrypted(bool value) { SetEncrypted(value); return *this;}
217
219
222 inline const Aws::String& GetDateCreated() const { return m_dateCreated; }
223 inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }
224 template<typename DateCreatedT = Aws::String>
225 void SetDateCreated(DateCreatedT&& value) { m_dateCreatedHasBeenSet = true; m_dateCreated = std::forward<DateCreatedT>(value); }
226 template<typename DateCreatedT = Aws::String>
227 Component& WithDateCreated(DateCreatedT&& value) { SetDateCreated(std::forward<DateCreatedT>(value)); return *this;}
229
231
234 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
235 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
236 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
237 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
238 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
239 Component& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
240 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
241 Component& AddTags(TagsKeyT&& key, TagsValueT&& value) {
242 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
243 }
245
247
251 inline const Aws::String& GetPublisher() const { return m_publisher; }
252 inline bool PublisherHasBeenSet() const { return m_publisherHasBeenSet; }
253 template<typename PublisherT = Aws::String>
254 void SetPublisher(PublisherT&& value) { m_publisherHasBeenSet = true; m_publisher = std::forward<PublisherT>(value); }
255 template<typename PublisherT = Aws::String>
256 Component& WithPublisher(PublisherT&& value) { SetPublisher(std::forward<PublisherT>(value)); return *this;}
258
260
264 inline bool GetObfuscate() const { return m_obfuscate; }
265 inline bool ObfuscateHasBeenSet() const { return m_obfuscateHasBeenSet; }
266 inline void SetObfuscate(bool value) { m_obfuscateHasBeenSet = true; m_obfuscate = value; }
267 inline Component& WithObfuscate(bool value) { SetObfuscate(value); return *this;}
269
271
275 inline const Aws::Vector<ProductCodeListItem>& GetProductCodes() const { return m_productCodes; }
276 inline bool ProductCodesHasBeenSet() const { return m_productCodesHasBeenSet; }
277 template<typename ProductCodesT = Aws::Vector<ProductCodeListItem>>
278 void SetProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes = std::forward<ProductCodesT>(value); }
279 template<typename ProductCodesT = Aws::Vector<ProductCodeListItem>>
280 Component& WithProductCodes(ProductCodesT&& value) { SetProductCodes(std::forward<ProductCodesT>(value)); return *this;}
281 template<typename ProductCodesT = ProductCodeListItem>
282 Component& AddProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes.emplace_back(std::forward<ProductCodesT>(value)); return *this; }
284 private:
285
286 Aws::String m_arn;
287 bool m_arnHasBeenSet = false;
288
289 Aws::String m_name;
290 bool m_nameHasBeenSet = false;
291
292 Aws::String m_version;
293 bool m_versionHasBeenSet = false;
294
295 Aws::String m_description;
296 bool m_descriptionHasBeenSet = false;
297
298 Aws::String m_changeDescription;
299 bool m_changeDescriptionHasBeenSet = false;
300
302 bool m_typeHasBeenSet = false;
303
304 Platform m_platform{Platform::NOT_SET};
305 bool m_platformHasBeenSet = false;
306
307 Aws::Vector<Aws::String> m_supportedOsVersions;
308 bool m_supportedOsVersionsHasBeenSet = false;
309
310 ComponentState m_state;
311 bool m_stateHasBeenSet = false;
312
314 bool m_parametersHasBeenSet = false;
315
316 Aws::String m_owner;
317 bool m_ownerHasBeenSet = false;
318
319 Aws::String m_data;
320 bool m_dataHasBeenSet = false;
321
322 Aws::String m_kmsKeyId;
323 bool m_kmsKeyIdHasBeenSet = false;
324
325 bool m_encrypted{false};
326 bool m_encryptedHasBeenSet = false;
327
328 Aws::String m_dateCreated;
329 bool m_dateCreatedHasBeenSet = false;
330
332 bool m_tagsHasBeenSet = false;
333
334 Aws::String m_publisher;
335 bool m_publisherHasBeenSet = false;
336
337 bool m_obfuscate{false};
338 bool m_obfuscateHasBeenSet = false;
339
341 bool m_productCodesHasBeenSet = false;
342 };
343
344} // namespace Model
345} // namespace imagebuilder
346} // 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:135
const Aws::String & GetDescription() const
Definition Component.h:87
void SetState(StateT &&value)
Definition Component.h:152
void SetKmsKeyId(KmsKeyIdT &&value)
Definition Component.h:203
Component & WithPlatform(Platform value)
Definition Component.h:126
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Definition Component.h:234
const Aws::String & GetKmsKeyId() const
Definition Component.h:200
Component & WithType(ComponentType value)
Definition Component.h:116
const Aws::String & GetArn() const
Definition Component.h:51
Component & WithName(NameT &&value)
Definition Component.h:68
Component & WithDescription(DescriptionT &&value)
Definition Component.h:92
Component & WithVersion(VersionT &&value)
Definition Component.h:80
Component & WithEncrypted(bool value)
Definition Component.h:215
const Aws::String & GetDateCreated() const
Definition Component.h:222
Component & WithTags(TagsT &&value)
Definition Component.h:239
Component & WithKmsKeyId(KmsKeyIdT &&value)
Definition Component.h:205
Component & WithArn(ArnT &&value)
Definition Component.h:56
Component & WithChangeDescription(ChangeDescriptionT &&value)
Definition Component.h:105
Component & WithOwner(OwnerT &&value)
Definition Component.h:181
Component & WithProductCodes(ProductCodesT &&value)
Definition Component.h:280
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
Component & WithState(StateT &&value)
Definition Component.h:154
Component & WithObfuscate(bool value)
Definition Component.h:267
void SetPublisher(PublisherT &&value)
Definition Component.h:254
Component & WithDateCreated(DateCreatedT &&value)
Definition Component.h:227
const Aws::String & GetPublisher() const
Definition Component.h:251
const Aws::Vector< ProductCodeListItem > & GetProductCodes() const
Definition Component.h:275
void SetDescription(DescriptionT &&value)
Definition Component.h:90
void SetSupportedOsVersions(SupportedOsVersionsT &&value)
Definition Component.h:138
AWS_IMAGEBUILDER_API Component()=default
Component & WithParameters(ParametersT &&value)
Definition Component.h:167
ComponentType GetType() const
Definition Component.h:113
const Aws::String & GetChangeDescription() const
Definition Component.h:100
void SetDateCreated(DateCreatedT &&value)
Definition Component.h:225
const Aws::String & GetVersion() const
Definition Component.h:75
Component & WithData(DataT &&value)
Definition Component.h:193
const Aws::String & GetData() const
Definition Component.h:188
const Aws::String & GetOwner() const
Definition Component.h:176
void SetPlatform(Platform value)
Definition Component.h:125
const Aws::Vector< ComponentParameterDetail > & GetParameters() const
Definition Component.h:162
Component & AddProductCodes(ProductCodesT &&value)
Definition Component.h:282
AWS_IMAGEBUILDER_API Component(Aws::Utils::Json::JsonView jsonValue)
void SetParameters(ParametersT &&value)
Definition Component.h:165
void SetType(ComponentType value)
Definition Component.h:115
void SetOwner(OwnerT &&value)
Definition Component.h:179
void SetChangeDescription(ChangeDescriptionT &&value)
Definition Component.h:103
void SetVersion(VersionT &&value)
Definition Component.h:78
Component & WithSupportedOsVersions(SupportedOsVersionsT &&value)
Definition Component.h:140
Component & AddParameters(ParametersT &&value)
Definition Component.h:169
Component & AddTags(TagsKeyT &&key, TagsValueT &&value)
Definition Component.h:241
void SetProductCodes(ProductCodesT &&value)
Definition Component.h:278
Component & WithPublisher(PublisherT &&value)
Definition Component.h:256
const ComponentState & GetState() const
Definition Component.h:149
Component & AddSupportedOsVersions(SupportedOsVersionsT &&value)
Definition Component.h:142
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