7#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/imagebuilder/model/ImageType.h>
10#include <aws/imagebuilder/model/Platform.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/imagebuilder/model/AdditionalInstanceConfiguration.h>
14#include <aws/imagebuilder/model/ComponentConfiguration.h>
15#include <aws/imagebuilder/model/InstanceBlockDeviceMapping.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>
76 template<
typename NameT = Aws::String>
77 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
78 template<
typename NameT = Aws::String>
88 template<
typename DescriptionT = Aws::String>
89 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
90 template<
typename DescriptionT = Aws::String>
110 template<
typename OwnerT = Aws::String>
111 void SetOwner(OwnerT&& value) { m_ownerHasBeenSet =
true; m_owner = std::forward<OwnerT>(value); }
112 template<
typename OwnerT = Aws::String>
122 template<
typename VersionT = Aws::String>
123 void SetVersion(VersionT&& value) { m_versionHasBeenSet =
true; m_version = std::forward<VersionT>(value); }
124 template<
typename VersionT = Aws::String>
136 template<
typename ComponentsT = Aws::Vector<ComponentConfiguration>>
137 void SetComponents(ComponentsT&& value) { m_componentsHasBeenSet =
true; m_components = std::forward<ComponentsT>(value); }
138 template<
typename ComponentsT = Aws::Vector<ComponentConfiguration>>
140 template<
typename ComponentsT = ComponentConfiguration>
141 ImageRecipe&
AddComponents(ComponentsT&& value) { m_componentsHasBeenSet =
true; m_components.emplace_back(std::forward<ComponentsT>(value));
return *
this; }
156 template<
typename ParentImageT = Aws::String>
157 void SetParentImage(ParentImageT&& value) { m_parentImageHasBeenSet =
true; m_parentImage = std::forward<ParentImageT>(value); }
158 template<
typename ParentImageT = Aws::String>
168 template<
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
169 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet =
true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
170 template<
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
172 template<
typename BlockDeviceMappingsT = InstanceBlockDeviceMapping>
173 ImageRecipe&
AddBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet =
true; m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
return *
this; }
182 template<
typename DateCreatedT = Aws::String>
183 void SetDateCreated(DateCreatedT&& value) { m_dateCreatedHasBeenSet =
true; m_dateCreated = std::forward<DateCreatedT>(value); }
184 template<
typename DateCreatedT = Aws::String>
194 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
195 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
196 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
198 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
200 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
210 template<
typename WorkingDirectoryT = Aws::String>
211 void SetWorkingDirectory(WorkingDirectoryT&& value) { m_workingDirectoryHasBeenSet =
true; m_workingDirectory = std::forward<WorkingDirectoryT>(value); }
212 template<
typename WorkingDirectoryT = Aws::String>
225 template<
typename AdditionalInstanceConfigurationT = AdditionalInstanceConfiguration>
226 void SetAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT&& value) { m_additionalInstanceConfigurationHasBeenSet =
true; m_additionalInstanceConfiguration = std::forward<AdditionalInstanceConfigurationT>(value); }
227 template<
typename AdditionalInstanceConfigurationT = AdditionalInstanceConfiguration>
233 bool m_arnHasBeenSet =
false;
236 bool m_typeHasBeenSet =
false;
239 bool m_nameHasBeenSet =
false;
242 bool m_descriptionHasBeenSet =
false;
245 bool m_platformHasBeenSet =
false;
248 bool m_ownerHasBeenSet =
false;
251 bool m_versionHasBeenSet =
false;
254 bool m_componentsHasBeenSet =
false;
257 bool m_parentImageHasBeenSet =
false;
260 bool m_blockDeviceMappingsHasBeenSet =
false;
263 bool m_dateCreatedHasBeenSet =
false;
266 bool m_tagsHasBeenSet =
false;
269 bool m_workingDirectoryHasBeenSet =
false;
271 AdditionalInstanceConfiguration m_additionalInstanceConfiguration;
272 bool m_additionalInstanceConfigurationHasBeenSet =
false;
void SetWorkingDirectory(WorkingDirectoryT &&value)
bool ArnHasBeenSet() const
ImageRecipe & WithDescription(DescriptionT &&value)
bool ComponentsHasBeenSet() const
void SetPlatform(Platform value)
ImageRecipe & AddComponents(ComponentsT &&value)
const Aws::String & GetVersion() const
bool DescriptionHasBeenSet() const
const Aws::Vector< ComponentConfiguration > & GetComponents() const
ImageRecipe & WithName(NameT &&value)
ImageRecipe & WithType(ImageType value)
void SetVersion(VersionT &&value)
ImageRecipe & WithArn(ArnT &&value)
bool TagsHasBeenSet() const
bool TypeHasBeenSet() const
const Aws::String & GetArn() const
ImageRecipe & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
void SetTags(TagsT &&value)
void SetAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT &&value)
ImageRecipe & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
const Aws::String & GetName() const
ImageRecipe & WithTags(TagsT &&value)
ImageRecipe & WithDateCreated(DateCreatedT &&value)
void SetParentImage(ParentImageT &&value)
AWS_IMAGEBUILDER_API ImageRecipe(Aws::Utils::Json::JsonView jsonValue)
ImageRecipe & WithWorkingDirectory(WorkingDirectoryT &&value)
const Aws::String & GetWorkingDirectory() const
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetDateCreated() const
ImageRecipe & WithVersion(VersionT &&value)
const Aws::String & GetOwner() const
ImageRecipe & WithOwner(OwnerT &&value)
void SetOwner(OwnerT &&value)
bool NameHasBeenSet() const
void SetType(ImageType value)
bool BlockDeviceMappingsHasBeenSet() const
void SetArn(ArnT &&value)
ImageRecipe & WithAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT &&value)
Platform GetPlatform() const
const Aws::String & GetParentImage() const
void SetDescription(DescriptionT &&value)
AWS_IMAGEBUILDER_API ImageRecipe()=default
bool PlatformHasBeenSet() const
bool ParentImageHasBeenSet() const
void SetDateCreated(DateCreatedT &&value)
ImageRecipe & WithPlatform(Platform value)
bool WorkingDirectoryHasBeenSet() const
ImageRecipe & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetBlockDeviceMappings(BlockDeviceMappingsT &&value)
AWS_IMAGEBUILDER_API ImageRecipe & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetDescription() const
void SetComponents(ComponentsT &&value)
bool AdditionalInstanceConfigurationHasBeenSet() const
bool DateCreatedHasBeenSet() const
const Aws::Vector< InstanceBlockDeviceMapping > & GetBlockDeviceMappings() const
void SetName(NameT &&value)
bool OwnerHasBeenSet() const
const AdditionalInstanceConfiguration & GetAdditionalInstanceConfiguration() const
ImageRecipe & WithComponents(ComponentsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
ImageRecipe & WithParentImage(ParentImageT &&value)
ImageType GetType() const
bool VersionHasBeenSet() 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