7#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
8#include <aws/imagebuilder/ImagebuilderRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/imagebuilder/model/AdditionalInstanceConfiguration.h>
13#include <aws/imagebuilder/model/ComponentConfiguration.h>
14#include <aws/imagebuilder/model/InstanceBlockDeviceMapping.h>
16#include <aws/core/utils/UUID.h>
47 template<
typename NameT = Aws::String>
48 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
49 template<
typename NameT = Aws::String>
59 template<
typename DescriptionT = Aws::String>
60 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
61 template<
typename DescriptionT = Aws::String>
81 template<
typename SemanticVersionT = Aws::String>
82 void SetSemanticVersion(SemanticVersionT&& value) { m_semanticVersionHasBeenSet =
true; m_semanticVersion = std::forward<SemanticVersionT>(value); }
83 template<
typename SemanticVersionT = Aws::String>
93 template<
typename ComponentsT = Aws::Vector<ComponentConfiguration>>
94 void SetComponents(ComponentsT&& value) { m_componentsHasBeenSet =
true; m_components = std::forward<ComponentsT>(value); }
95 template<
typename ComponentsT = Aws::Vector<ComponentConfiguration>>
97 template<
typename ComponentsT = ComponentConfiguration>
114 template<
typename ParentImageT = Aws::String>
115 void SetParentImage(ParentImageT&& value) { m_parentImageHasBeenSet =
true; m_parentImage = std::forward<ParentImageT>(value); }
116 template<
typename ParentImageT = Aws::String>
126 template<
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
127 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet =
true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
128 template<
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
130 template<
typename BlockDeviceMappingsT = InstanceBlockDeviceMapping>
140 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
141 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
142 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
144 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
146 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
156 template<
typename WorkingDirectoryT = Aws::String>
157 void SetWorkingDirectory(WorkingDirectoryT&& value) { m_workingDirectoryHasBeenSet =
true; m_workingDirectory = std::forward<WorkingDirectoryT>(value); }
158 template<
typename WorkingDirectoryT = Aws::String>
168 template<
typename AdditionalInstanceConfigurationT = AdditionalInstanceConfiguration>
169 void SetAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT&& value) { m_additionalInstanceConfigurationHasBeenSet =
true; m_additionalInstanceConfiguration = std::forward<AdditionalInstanceConfigurationT>(value); }
170 template<
typename AdditionalInstanceConfigurationT = AdditionalInstanceConfiguration>
183 template<
typename ClientTokenT = Aws::String>
184 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet =
true; m_clientToken = std::forward<ClientTokenT>(value); }
185 template<
typename ClientTokenT = Aws::String>
191 bool m_nameHasBeenSet =
false;
194 bool m_descriptionHasBeenSet =
false;
197 bool m_semanticVersionHasBeenSet =
false;
200 bool m_componentsHasBeenSet =
false;
203 bool m_parentImageHasBeenSet =
false;
206 bool m_blockDeviceMappingsHasBeenSet =
false;
209 bool m_tagsHasBeenSet =
false;
212 bool m_workingDirectoryHasBeenSet =
false;
215 bool m_additionalInstanceConfigurationHasBeenSet =
false;
218 bool m_clientTokenHasBeenSet =
true;
static Aws::Utils::UUID PseudoRandomUUID()
bool ClientTokenHasBeenSet() const
CreateImageRecipeRequest & WithClientToken(ClientTokenT &&value)
void SetParentImage(ParentImageT &&value)
void SetBlockDeviceMappings(BlockDeviceMappingsT &&value)
CreateImageRecipeRequest & WithTags(TagsT &&value)
bool ComponentsHasBeenSet() const
const Aws::String & GetDescription() const
CreateImageRecipeRequest & WithDescription(DescriptionT &&value)
CreateImageRecipeRequest & WithSemanticVersion(SemanticVersionT &&value)
CreateImageRecipeRequest & WithComponents(ComponentsT &&value)
const Aws::String & GetName() const
const Aws::String & GetSemanticVersion() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetWorkingDirectory(WorkingDirectoryT &&value)
CreateImageRecipeRequest & WithParentImage(ParentImageT &&value)
void SetClientToken(ClientTokenT &&value)
const Aws::String & GetClientToken() const
const AdditionalInstanceConfiguration & GetAdditionalInstanceConfiguration() const
void SetComponents(ComponentsT &&value)
bool ParentImageHasBeenSet() const
CreateImageRecipeRequest & AddComponents(ComponentsT &&value)
AWS_IMAGEBUILDER_API CreateImageRecipeRequest()=default
bool AdditionalInstanceConfigurationHasBeenSet() const
const Aws::Vector< InstanceBlockDeviceMapping > & GetBlockDeviceMappings() const
void SetName(NameT &&value)
bool WorkingDirectoryHasBeenSet() const
bool DescriptionHasBeenSet() const
void SetDescription(DescriptionT &&value)
bool NameHasBeenSet() const
bool SemanticVersionHasBeenSet() const
void SetAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT &&value)
CreateImageRecipeRequest & WithWorkingDirectory(WorkingDirectoryT &&value)
CreateImageRecipeRequest & WithAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT &&value)
const Aws::String & GetParentImage() const
CreateImageRecipeRequest & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
void SetSemanticVersion(SemanticVersionT &&value)
bool TagsHasBeenSet() const
bool BlockDeviceMappingsHasBeenSet() const
CreateImageRecipeRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateImageRecipeRequest & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
const Aws::String & GetWorkingDirectory() const
AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override
void SetTags(TagsT &&value)
const Aws::Vector< ComponentConfiguration > & GetComponents() const
virtual const char * GetServiceRequestName() const override
CreateImageRecipeRequest & WithName(NameT &&value)
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