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>
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>
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>
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>
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>
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>
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>>
141 template<
typename SupportedOsVersionsT = Aws::String>
142 Component&
AddSupportedOsVersions(SupportedOsVersionsT&& value) { m_supportedOsVersionsHasBeenSet =
true; m_supportedOsVersions.emplace_back(std::forward<SupportedOsVersionsT>(value));
return *
this; }
151 template<
typename StateT = ComponentState>
152 void SetState(StateT&& value) { m_stateHasBeenSet =
true; m_state = std::forward<StateT>(value); }
153 template<
typename StateT = ComponentState>
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>>
168 template<
typename ParametersT = ComponentParameterDetail>
169 Component&
AddParameters(ParametersT&& value) { m_parametersHasBeenSet =
true; m_parameters.emplace_back(std::forward<ParametersT>(value));
return *
this; }
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>
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>
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>
214 inline void SetEncrypted(
bool value) { m_encryptedHasBeenSet =
true; m_encrypted = value; }
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>
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>>
240 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
242 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
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>
266 inline void SetObfuscate(
bool value) { m_obfuscateHasBeenSet =
true; m_obfuscate = value; }
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>>
281 template<
typename ProductCodesT = ProductCodeListItem>
282 Component&
AddProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet =
true; m_productCodes.emplace_back(std::forward<ProductCodesT>(value));
return *
this; }
287 bool m_arnHasBeenSet =
false;
290 bool m_nameHasBeenSet =
false;
293 bool m_versionHasBeenSet =
false;
296 bool m_descriptionHasBeenSet =
false;
299 bool m_changeDescriptionHasBeenSet =
false;
302 bool m_typeHasBeenSet =
false;
305 bool m_platformHasBeenSet =
false;
308 bool m_supportedOsVersionsHasBeenSet =
false;
310 ComponentState m_state;
311 bool m_stateHasBeenSet =
false;
314 bool m_parametersHasBeenSet =
false;
317 bool m_ownerHasBeenSet =
false;
320 bool m_dataHasBeenSet =
false;
323 bool m_kmsKeyIdHasBeenSet =
false;
325 bool m_encrypted{
false};
326 bool m_encryptedHasBeenSet =
false;
329 bool m_dateCreatedHasBeenSet =
false;
332 bool m_tagsHasBeenSet =
false;
335 bool m_publisherHasBeenSet =
false;
337 bool m_obfuscate{
false};
338 bool m_obfuscateHasBeenSet =
false;
341 bool m_productCodesHasBeenSet =
false;
void SetName(NameT &&value)
bool ParametersHasBeenSet() const
const Aws::String & GetName() const
bool ArnHasBeenSet() const
bool SupportedOsVersionsHasBeenSet() const
AWS_IMAGEBUILDER_API Component & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetSupportedOsVersions() const
const Aws::String & GetDescription() const
void SetState(StateT &&value)
bool DateCreatedHasBeenSet() const
void SetObfuscate(bool value)
bool ProductCodesHasBeenSet() const
void SetKmsKeyId(KmsKeyIdT &&value)
Component & WithPlatform(Platform value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::String & GetKmsKeyId() const
Component & WithType(ComponentType value)
const Aws::String & GetArn() const
bool TypeHasBeenSet() const
bool ObfuscateHasBeenSet() const
void SetEncrypted(bool value)
bool StateHasBeenSet() const
Component & WithName(NameT &&value)
Component & WithDescription(DescriptionT &&value)
Component & WithVersion(VersionT &&value)
Component & WithEncrypted(bool value)
const Aws::String & GetDateCreated() const
bool NameHasBeenSet() const
Component & WithTags(TagsT &&value)
bool DataHasBeenSet() const
Component & WithKmsKeyId(KmsKeyIdT &&value)
Component & WithArn(ArnT &&value)
Component & WithChangeDescription(ChangeDescriptionT &&value)
Component & WithOwner(OwnerT &&value)
Component & WithProductCodes(ProductCodesT &&value)
bool DescriptionHasBeenSet() const
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
void SetArn(ArnT &&value)
Component & WithState(StateT &&value)
Component & WithObfuscate(bool value)
void SetPublisher(PublisherT &&value)
Component & WithDateCreated(DateCreatedT &&value)
const Aws::String & GetPublisher() const
const Aws::Vector< ProductCodeListItem > & GetProductCodes() const
bool EncryptedHasBeenSet() const
bool PlatformHasBeenSet() const
void SetDescription(DescriptionT &&value)
void SetSupportedOsVersions(SupportedOsVersionsT &&value)
AWS_IMAGEBUILDER_API Component()=default
Component & WithParameters(ParametersT &&value)
ComponentType GetType() const
const Aws::String & GetChangeDescription() const
void SetDateCreated(DateCreatedT &&value)
const Aws::String & GetVersion() const
Component & WithData(DataT &&value)
const Aws::String & GetData() const
bool VersionHasBeenSet() const
const Aws::String & GetOwner() const
bool GetEncrypted() const
void SetPlatform(Platform value)
void SetTags(TagsT &&value)
const Aws::Vector< ComponentParameterDetail > & GetParameters() const
Component & AddProductCodes(ProductCodesT &&value)
bool ChangeDescriptionHasBeenSet() const
AWS_IMAGEBUILDER_API Component(Aws::Utils::Json::JsonView jsonValue)
void SetParameters(ParametersT &&value)
bool TagsHasBeenSet() const
void SetType(ComponentType value)
void SetOwner(OwnerT &&value)
bool PublisherHasBeenSet() const
Platform GetPlatform() const
void SetChangeDescription(ChangeDescriptionT &&value)
void SetVersion(VersionT &&value)
Component & WithSupportedOsVersions(SupportedOsVersionsT &&value)
Component & AddParameters(ParametersT &&value)
Component & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetProductCodes(ProductCodesT &&value)
Component & WithPublisher(PublisherT &&value)
void SetData(DataT &&value)
bool OwnerHasBeenSet() const
const ComponentState & GetState() const
Component & AddSupportedOsVersions(SupportedOsVersionsT &&value)
bool GetObfuscate() const
bool KmsKeyIdHasBeenSet() const
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