AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateImageRecipeRequest.h
1
6#pragma once
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>
15#include <utility>
16#include <aws/core/utils/UUID.h>
17
18namespace Aws
19{
20namespace imagebuilder
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_IMAGEBUILDER_API CreateImageRecipeRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateImageRecipe"; }
37
38 AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override;
39
40
42
45 inline const Aws::String& GetName() const { return m_name; }
46 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
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>
50 CreateImageRecipeRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
52
54
57 inline const Aws::String& GetDescription() const { return m_description; }
58 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
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>
62 CreateImageRecipeRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
64
66
79 inline const Aws::String& GetSemanticVersion() const { return m_semanticVersion; }
80 inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
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>
84 CreateImageRecipeRequest& WithSemanticVersion(SemanticVersionT&& value) { SetSemanticVersion(std::forward<SemanticVersionT>(value)); return *this;}
86
88
91 inline const Aws::Vector<ComponentConfiguration>& GetComponents() const { return m_components; }
92 inline bool ComponentsHasBeenSet() const { return m_componentsHasBeenSet; }
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>>
96 CreateImageRecipeRequest& WithComponents(ComponentsT&& value) { SetComponents(std::forward<ComponentsT>(value)); return *this;}
97 template<typename ComponentsT = ComponentConfiguration>
98 CreateImageRecipeRequest& AddComponents(ComponentsT&& value) { m_componentsHasBeenSet = true; m_components.emplace_back(std::forward<ComponentsT>(value)); return *this; }
100
102
112 inline const Aws::String& GetParentImage() const { return m_parentImage; }
113 inline bool ParentImageHasBeenSet() const { return m_parentImageHasBeenSet; }
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>
117 CreateImageRecipeRequest& WithParentImage(ParentImageT&& value) { SetParentImage(std::forward<ParentImageT>(value)); return *this;}
119
121
124 inline const Aws::Vector<InstanceBlockDeviceMapping>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
125 inline bool BlockDeviceMappingsHasBeenSet() const { return m_blockDeviceMappingsHasBeenSet; }
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>>
129 CreateImageRecipeRequest& WithBlockDeviceMappings(BlockDeviceMappingsT&& value) { SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value)); return *this;}
130 template<typename BlockDeviceMappingsT = InstanceBlockDeviceMapping>
131 CreateImageRecipeRequest& AddBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value)); return *this; }
133
135
138 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
139 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
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>>
143 CreateImageRecipeRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
144 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
145 CreateImageRecipeRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
146 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
147 }
149
151
154 inline const Aws::String& GetWorkingDirectory() const { return m_workingDirectory; }
155 inline bool WorkingDirectoryHasBeenSet() const { return m_workingDirectoryHasBeenSet; }
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>
159 CreateImageRecipeRequest& WithWorkingDirectory(WorkingDirectoryT&& value) { SetWorkingDirectory(std::forward<WorkingDirectoryT>(value)); return *this;}
161
163
166 inline const AdditionalInstanceConfiguration& GetAdditionalInstanceConfiguration() const { return m_additionalInstanceConfiguration; }
167 inline bool AdditionalInstanceConfigurationHasBeenSet() const { return m_additionalInstanceConfigurationHasBeenSet; }
168 template<typename AdditionalInstanceConfigurationT = AdditionalInstanceConfiguration>
169 void SetAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT&& value) { m_additionalInstanceConfigurationHasBeenSet = true; m_additionalInstanceConfiguration = std::forward<AdditionalInstanceConfigurationT>(value); }
170 template<typename AdditionalInstanceConfigurationT = AdditionalInstanceConfiguration>
171 CreateImageRecipeRequest& WithAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT&& value) { SetAdditionalInstanceConfiguration(std::forward<AdditionalInstanceConfigurationT>(value)); return *this;}
173
175
181 inline const Aws::String& GetClientToken() const { return m_clientToken; }
182 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
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>
186 CreateImageRecipeRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
188 private:
189
190 Aws::String m_name;
191 bool m_nameHasBeenSet = false;
192
193 Aws::String m_description;
194 bool m_descriptionHasBeenSet = false;
195
196 Aws::String m_semanticVersion;
197 bool m_semanticVersionHasBeenSet = false;
198
200 bool m_componentsHasBeenSet = false;
201
202 Aws::String m_parentImage;
203 bool m_parentImageHasBeenSet = false;
204
205 Aws::Vector<InstanceBlockDeviceMapping> m_blockDeviceMappings;
206 bool m_blockDeviceMappingsHasBeenSet = false;
207
209 bool m_tagsHasBeenSet = false;
210
211 Aws::String m_workingDirectory;
212 bool m_workingDirectoryHasBeenSet = false;
213
214 AdditionalInstanceConfiguration m_additionalInstanceConfiguration;
215 bool m_additionalInstanceConfigurationHasBeenSet = false;
216
218 bool m_clientTokenHasBeenSet = true;
219 };
220
221} // namespace Model
222} // namespace imagebuilder
223} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
CreateImageRecipeRequest & WithClientToken(ClientTokenT &&value)
CreateImageRecipeRequest & WithTags(TagsT &&value)
CreateImageRecipeRequest & WithDescription(DescriptionT &&value)
CreateImageRecipeRequest & WithSemanticVersion(SemanticVersionT &&value)
CreateImageRecipeRequest & WithComponents(ComponentsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateImageRecipeRequest & WithParentImage(ParentImageT &&value)
const AdditionalInstanceConfiguration & GetAdditionalInstanceConfiguration() const
CreateImageRecipeRequest & AddComponents(ComponentsT &&value)
AWS_IMAGEBUILDER_API CreateImageRecipeRequest()=default
const Aws::Vector< InstanceBlockDeviceMapping > & GetBlockDeviceMappings() const
void SetAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT &&value)
CreateImageRecipeRequest & WithWorkingDirectory(WorkingDirectoryT &&value)
CreateImageRecipeRequest & WithAdditionalInstanceConfiguration(AdditionalInstanceConfigurationT &&value)
CreateImageRecipeRequest & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
CreateImageRecipeRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateImageRecipeRequest & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override
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