AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CreateContainerRecipeRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/imagebuilder/ImagebuilderRequest.h>
12#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
13#include <aws/imagebuilder/model/ComponentConfiguration.h>
14#include <aws/imagebuilder/model/ContainerType.h>
15#include <aws/imagebuilder/model/InstanceConfiguration.h>
16#include <aws/imagebuilder/model/Platform.h>
17#include <aws/imagebuilder/model/TargetContainerRepository.h>
18
19#include <utility>
20
21namespace Aws {
22namespace imagebuilder {
23namespace Model {
24
28 public:
29 AWS_IMAGEBUILDER_API CreateContainerRecipeRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "CreateContainerRecipe"; }
36
37 AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override;
38
40
43 inline ContainerType GetContainerType() const { return m_containerType; }
44 inline bool ContainerTypeHasBeenSet() const { return m_containerTypeHasBeenSet; }
45 inline void SetContainerType(ContainerType value) {
46 m_containerTypeHasBeenSet = true;
47 m_containerType = value;
48 }
50 SetContainerType(value);
51 return *this;
52 }
54
56
59 inline const Aws::String& GetName() const { return m_name; }
60 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
61 template <typename NameT = Aws::String>
62 void SetName(NameT&& value) {
63 m_nameHasBeenSet = true;
64 m_name = std::forward<NameT>(value);
65 }
66 template <typename NameT = Aws::String>
68 SetName(std::forward<NameT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetDescription() const { return m_description; }
78 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
79 template <typename DescriptionT = Aws::String>
80 void SetDescription(DescriptionT&& value) {
81 m_descriptionHasBeenSet = true;
82 m_description = std::forward<DescriptionT>(value);
83 }
84 template <typename DescriptionT = Aws::String>
86 SetDescription(std::forward<DescriptionT>(value));
87 return *this;
88 }
90
92
105 inline const Aws::String& GetSemanticVersion() const { return m_semanticVersion; }
106 inline bool SemanticVersionHasBeenSet() const { return m_semanticVersionHasBeenSet; }
107 template <typename SemanticVersionT = Aws::String>
108 void SetSemanticVersion(SemanticVersionT&& value) {
109 m_semanticVersionHasBeenSet = true;
110 m_semanticVersion = std::forward<SemanticVersionT>(value);
111 }
112 template <typename SemanticVersionT = Aws::String>
114 SetSemanticVersion(std::forward<SemanticVersionT>(value));
115 return *this;
116 }
118
120
123 inline const Aws::Vector<ComponentConfiguration>& GetComponents() const { return m_components; }
124 inline bool ComponentsHasBeenSet() const { return m_componentsHasBeenSet; }
125 template <typename ComponentsT = Aws::Vector<ComponentConfiguration>>
126 void SetComponents(ComponentsT&& value) {
127 m_componentsHasBeenSet = true;
128 m_components = std::forward<ComponentsT>(value);
129 }
130 template <typename ComponentsT = Aws::Vector<ComponentConfiguration>>
132 SetComponents(std::forward<ComponentsT>(value));
133 return *this;
134 }
135 template <typename ComponentsT = ComponentConfiguration>
137 m_componentsHasBeenSet = true;
138 m_components.emplace_back(std::forward<ComponentsT>(value));
139 return *this;
140 }
142
144
148 inline const InstanceConfiguration& GetInstanceConfiguration() const { return m_instanceConfiguration; }
149 inline bool InstanceConfigurationHasBeenSet() const { return m_instanceConfigurationHasBeenSet; }
150 template <typename InstanceConfigurationT = InstanceConfiguration>
151 void SetInstanceConfiguration(InstanceConfigurationT&& value) {
152 m_instanceConfigurationHasBeenSet = true;
153 m_instanceConfiguration = std::forward<InstanceConfigurationT>(value);
154 }
155 template <typename InstanceConfigurationT = InstanceConfiguration>
157 SetInstanceConfiguration(std::forward<InstanceConfigurationT>(value));
158 return *this;
159 }
161
163
166 inline const Aws::String& GetDockerfileTemplateData() const { return m_dockerfileTemplateData; }
167 inline bool DockerfileTemplateDataHasBeenSet() const { return m_dockerfileTemplateDataHasBeenSet; }
168 template <typename DockerfileTemplateDataT = Aws::String>
169 void SetDockerfileTemplateData(DockerfileTemplateDataT&& value) {
170 m_dockerfileTemplateDataHasBeenSet = true;
171 m_dockerfileTemplateData = std::forward<DockerfileTemplateDataT>(value);
172 }
173 template <typename DockerfileTemplateDataT = Aws::String>
175 SetDockerfileTemplateData(std::forward<DockerfileTemplateDataT>(value));
176 return *this;
177 }
179
181
185 inline const Aws::String& GetDockerfileTemplateUri() const { return m_dockerfileTemplateUri; }
186 inline bool DockerfileTemplateUriHasBeenSet() const { return m_dockerfileTemplateUriHasBeenSet; }
187 template <typename DockerfileTemplateUriT = Aws::String>
188 void SetDockerfileTemplateUri(DockerfileTemplateUriT&& value) {
189 m_dockerfileTemplateUriHasBeenSet = true;
190 m_dockerfileTemplateUri = std::forward<DockerfileTemplateUriT>(value);
191 }
192 template <typename DockerfileTemplateUriT = Aws::String>
194 SetDockerfileTemplateUri(std::forward<DockerfileTemplateUriT>(value));
195 return *this;
196 }
198
200
203 inline Platform GetPlatformOverride() const { return m_platformOverride; }
204 inline bool PlatformOverrideHasBeenSet() const { return m_platformOverrideHasBeenSet; }
205 inline void SetPlatformOverride(Platform value) {
206 m_platformOverrideHasBeenSet = true;
207 m_platformOverride = value;
208 }
210 SetPlatformOverride(value);
211 return *this;
212 }
214
216
219 inline const Aws::String& GetImageOsVersionOverride() const { return m_imageOsVersionOverride; }
220 inline bool ImageOsVersionOverrideHasBeenSet() const { return m_imageOsVersionOverrideHasBeenSet; }
221 template <typename ImageOsVersionOverrideT = Aws::String>
222 void SetImageOsVersionOverride(ImageOsVersionOverrideT&& value) {
223 m_imageOsVersionOverrideHasBeenSet = true;
224 m_imageOsVersionOverride = std::forward<ImageOsVersionOverrideT>(value);
225 }
226 template <typename ImageOsVersionOverrideT = Aws::String>
228 SetImageOsVersionOverride(std::forward<ImageOsVersionOverrideT>(value));
229 return *this;
230 }
232
234
237 inline const Aws::String& GetParentImage() const { return m_parentImage; }
238 inline bool ParentImageHasBeenSet() const { return m_parentImageHasBeenSet; }
239 template <typename ParentImageT = Aws::String>
240 void SetParentImage(ParentImageT&& value) {
241 m_parentImageHasBeenSet = true;
242 m_parentImage = std::forward<ParentImageT>(value);
243 }
244 template <typename ParentImageT = Aws::String>
246 SetParentImage(std::forward<ParentImageT>(value));
247 return *this;
248 }
250
252
255 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
256 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
257 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
258 void SetTags(TagsT&& value) {
259 m_tagsHasBeenSet = true;
260 m_tags = std::forward<TagsT>(value);
261 }
262 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
264 SetTags(std::forward<TagsT>(value));
265 return *this;
266 }
267 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
268 CreateContainerRecipeRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
269 m_tagsHasBeenSet = true;
270 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
271 return *this;
272 }
274
276
279 inline const Aws::String& GetWorkingDirectory() const { return m_workingDirectory; }
280 inline bool WorkingDirectoryHasBeenSet() const { return m_workingDirectoryHasBeenSet; }
281 template <typename WorkingDirectoryT = Aws::String>
282 void SetWorkingDirectory(WorkingDirectoryT&& value) {
283 m_workingDirectoryHasBeenSet = true;
284 m_workingDirectory = std::forward<WorkingDirectoryT>(value);
285 }
286 template <typename WorkingDirectoryT = Aws::String>
288 SetWorkingDirectory(std::forward<WorkingDirectoryT>(value));
289 return *this;
290 }
292
294
297 inline const TargetContainerRepository& GetTargetRepository() const { return m_targetRepository; }
298 inline bool TargetRepositoryHasBeenSet() const { return m_targetRepositoryHasBeenSet; }
299 template <typename TargetRepositoryT = TargetContainerRepository>
300 void SetTargetRepository(TargetRepositoryT&& value) {
301 m_targetRepositoryHasBeenSet = true;
302 m_targetRepository = std::forward<TargetRepositoryT>(value);
303 }
304 template <typename TargetRepositoryT = TargetContainerRepository>
306 SetTargetRepository(std::forward<TargetRepositoryT>(value));
307 return *this;
308 }
310
312
320 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
321 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
322 template <typename KmsKeyIdT = Aws::String>
323 void SetKmsKeyId(KmsKeyIdT&& value) {
324 m_kmsKeyIdHasBeenSet = true;
325 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
326 }
327 template <typename KmsKeyIdT = Aws::String>
329 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
330 return *this;
331 }
333
335
341 inline const Aws::String& GetClientToken() const { return m_clientToken; }
342 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
343 template <typename ClientTokenT = Aws::String>
344 void SetClientToken(ClientTokenT&& value) {
345 m_clientTokenHasBeenSet = true;
346 m_clientToken = std::forward<ClientTokenT>(value);
347 }
348 template <typename ClientTokenT = Aws::String>
350 SetClientToken(std::forward<ClientTokenT>(value));
351 return *this;
352 }
354 private:
355 ContainerType m_containerType{ContainerType::NOT_SET};
356
357 Aws::String m_name;
358
359 Aws::String m_description;
360
361 Aws::String m_semanticVersion;
362
364
365 InstanceConfiguration m_instanceConfiguration;
366
367 Aws::String m_dockerfileTemplateData;
368
369 Aws::String m_dockerfileTemplateUri;
370
371 Platform m_platformOverride{Platform::NOT_SET};
372
373 Aws::String m_imageOsVersionOverride;
374
375 Aws::String m_parentImage;
376
378
379 Aws::String m_workingDirectory;
380
381 TargetContainerRepository m_targetRepository;
382
383 Aws::String m_kmsKeyId;
384
386 bool m_containerTypeHasBeenSet = false;
387 bool m_nameHasBeenSet = false;
388 bool m_descriptionHasBeenSet = false;
389 bool m_semanticVersionHasBeenSet = false;
390 bool m_componentsHasBeenSet = false;
391 bool m_instanceConfigurationHasBeenSet = false;
392 bool m_dockerfileTemplateDataHasBeenSet = false;
393 bool m_dockerfileTemplateUriHasBeenSet = false;
394 bool m_platformOverrideHasBeenSet = false;
395 bool m_imageOsVersionOverrideHasBeenSet = false;
396 bool m_parentImageHasBeenSet = false;
397 bool m_tagsHasBeenSet = false;
398 bool m_workingDirectoryHasBeenSet = false;
399 bool m_targetRepositoryHasBeenSet = false;
400 bool m_kmsKeyIdHasBeenSet = false;
401 bool m_clientTokenHasBeenSet = true;
402};
403
404} // namespace Model
405} // namespace imagebuilder
406} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
CreateContainerRecipeRequest & WithImageOsVersionOverride(ImageOsVersionOverrideT &&value)
CreateContainerRecipeRequest & WithPlatformOverride(Platform value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::Vector< ComponentConfiguration > & GetComponents() const
CreateContainerRecipeRequest & WithComponents(ComponentsT &&value)
CreateContainerRecipeRequest & WithDescription(DescriptionT &&value)
CreateContainerRecipeRequest & WithWorkingDirectory(WorkingDirectoryT &&value)
CreateContainerRecipeRequest & WithTargetRepository(TargetRepositoryT &&value)
CreateContainerRecipeRequest & WithClientToken(ClientTokenT &&value)
CreateContainerRecipeRequest & WithInstanceConfiguration(InstanceConfigurationT &&value)
CreateContainerRecipeRequest & WithName(NameT &&value)
CreateContainerRecipeRequest & WithKmsKeyId(KmsKeyIdT &&value)
CreateContainerRecipeRequest & WithDockerfileTemplateData(DockerfileTemplateDataT &&value)
AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override
AWS_IMAGEBUILDER_API CreateContainerRecipeRequest()=default
CreateContainerRecipeRequest & AddComponents(ComponentsT &&value)
CreateContainerRecipeRequest & WithParentImage(ParentImageT &&value)
CreateContainerRecipeRequest & WithSemanticVersion(SemanticVersionT &&value)
CreateContainerRecipeRequest & WithDockerfileTemplateUri(DockerfileTemplateUriT &&value)
CreateContainerRecipeRequest & WithContainerType(ContainerType value)
CreateContainerRecipeRequest & AddTags(TagsKeyT &&key, TagsValueT &&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