AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateImageRequest.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/imagebuilder/model/ImageTestsConfiguration.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/imagebuilder/model/ImageScanningConfiguration.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/imagebuilder/model/WorkflowConfiguration.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 CreateImageRequest() = 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 "CreateImage"; }
37
38 AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override;
39
40
42
46 inline const Aws::String& GetImageRecipeArn() const { return m_imageRecipeArn; }
47 inline bool ImageRecipeArnHasBeenSet() const { return m_imageRecipeArnHasBeenSet; }
48 template<typename ImageRecipeArnT = Aws::String>
49 void SetImageRecipeArn(ImageRecipeArnT&& value) { m_imageRecipeArnHasBeenSet = true; m_imageRecipeArn = std::forward<ImageRecipeArnT>(value); }
50 template<typename ImageRecipeArnT = Aws::String>
51 CreateImageRequest& WithImageRecipeArn(ImageRecipeArnT&& value) { SetImageRecipeArn(std::forward<ImageRecipeArnT>(value)); return *this;}
53
55
59 inline const Aws::String& GetContainerRecipeArn() const { return m_containerRecipeArn; }
60 inline bool ContainerRecipeArnHasBeenSet() const { return m_containerRecipeArnHasBeenSet; }
61 template<typename ContainerRecipeArnT = Aws::String>
62 void SetContainerRecipeArn(ContainerRecipeArnT&& value) { m_containerRecipeArnHasBeenSet = true; m_containerRecipeArn = std::forward<ContainerRecipeArnT>(value); }
63 template<typename ContainerRecipeArnT = Aws::String>
64 CreateImageRequest& WithContainerRecipeArn(ContainerRecipeArnT&& value) { SetContainerRecipeArn(std::forward<ContainerRecipeArnT>(value)); return *this;}
66
68
72 inline const Aws::String& GetDistributionConfigurationArn() const { return m_distributionConfigurationArn; }
73 inline bool DistributionConfigurationArnHasBeenSet() const { return m_distributionConfigurationArnHasBeenSet; }
74 template<typename DistributionConfigurationArnT = Aws::String>
75 void SetDistributionConfigurationArn(DistributionConfigurationArnT&& value) { m_distributionConfigurationArnHasBeenSet = true; m_distributionConfigurationArn = std::forward<DistributionConfigurationArnT>(value); }
76 template<typename DistributionConfigurationArnT = Aws::String>
77 CreateImageRequest& WithDistributionConfigurationArn(DistributionConfigurationArnT&& value) { SetDistributionConfigurationArn(std::forward<DistributionConfigurationArnT>(value)); return *this;}
79
81
85 inline const Aws::String& GetInfrastructureConfigurationArn() const { return m_infrastructureConfigurationArn; }
86 inline bool InfrastructureConfigurationArnHasBeenSet() const { return m_infrastructureConfigurationArnHasBeenSet; }
87 template<typename InfrastructureConfigurationArnT = Aws::String>
88 void SetInfrastructureConfigurationArn(InfrastructureConfigurationArnT&& value) { m_infrastructureConfigurationArnHasBeenSet = true; m_infrastructureConfigurationArn = std::forward<InfrastructureConfigurationArnT>(value); }
89 template<typename InfrastructureConfigurationArnT = Aws::String>
90 CreateImageRequest& WithInfrastructureConfigurationArn(InfrastructureConfigurationArnT&& value) { SetInfrastructureConfigurationArn(std::forward<InfrastructureConfigurationArnT>(value)); return *this;}
92
94
97 inline const ImageTestsConfiguration& GetImageTestsConfiguration() const { return m_imageTestsConfiguration; }
98 inline bool ImageTestsConfigurationHasBeenSet() const { return m_imageTestsConfigurationHasBeenSet; }
99 template<typename ImageTestsConfigurationT = ImageTestsConfiguration>
100 void SetImageTestsConfiguration(ImageTestsConfigurationT&& value) { m_imageTestsConfigurationHasBeenSet = true; m_imageTestsConfiguration = std::forward<ImageTestsConfigurationT>(value); }
101 template<typename ImageTestsConfigurationT = ImageTestsConfiguration>
102 CreateImageRequest& WithImageTestsConfiguration(ImageTestsConfigurationT&& value) { SetImageTestsConfiguration(std::forward<ImageTestsConfigurationT>(value)); return *this;}
104
106
112 inline bool GetEnhancedImageMetadataEnabled() const { return m_enhancedImageMetadataEnabled; }
113 inline bool EnhancedImageMetadataEnabledHasBeenSet() const { return m_enhancedImageMetadataEnabledHasBeenSet; }
114 inline void SetEnhancedImageMetadataEnabled(bool value) { m_enhancedImageMetadataEnabledHasBeenSet = true; m_enhancedImageMetadataEnabled = value; }
117
119
122 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
123 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
124 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
125 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
126 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
127 CreateImageRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
128 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
129 CreateImageRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
130 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
131 }
133
135
141 inline const Aws::String& GetClientToken() const { return m_clientToken; }
142 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
143 template<typename ClientTokenT = Aws::String>
144 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
145 template<typename ClientTokenT = Aws::String>
146 CreateImageRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
148
150
153 inline const ImageScanningConfiguration& GetImageScanningConfiguration() const { return m_imageScanningConfiguration; }
154 inline bool ImageScanningConfigurationHasBeenSet() const { return m_imageScanningConfigurationHasBeenSet; }
155 template<typename ImageScanningConfigurationT = ImageScanningConfiguration>
156 void SetImageScanningConfiguration(ImageScanningConfigurationT&& value) { m_imageScanningConfigurationHasBeenSet = true; m_imageScanningConfiguration = std::forward<ImageScanningConfigurationT>(value); }
157 template<typename ImageScanningConfigurationT = ImageScanningConfiguration>
158 CreateImageRequest& WithImageScanningConfiguration(ImageScanningConfigurationT&& value) { SetImageScanningConfiguration(std::forward<ImageScanningConfigurationT>(value)); return *this;}
160
162
165 inline const Aws::Vector<WorkflowConfiguration>& GetWorkflows() const { return m_workflows; }
166 inline bool WorkflowsHasBeenSet() const { return m_workflowsHasBeenSet; }
167 template<typename WorkflowsT = Aws::Vector<WorkflowConfiguration>>
168 void SetWorkflows(WorkflowsT&& value) { m_workflowsHasBeenSet = true; m_workflows = std::forward<WorkflowsT>(value); }
169 template<typename WorkflowsT = Aws::Vector<WorkflowConfiguration>>
170 CreateImageRequest& WithWorkflows(WorkflowsT&& value) { SetWorkflows(std::forward<WorkflowsT>(value)); return *this;}
171 template<typename WorkflowsT = WorkflowConfiguration>
172 CreateImageRequest& AddWorkflows(WorkflowsT&& value) { m_workflowsHasBeenSet = true; m_workflows.emplace_back(std::forward<WorkflowsT>(value)); return *this; }
174
176
180 inline const Aws::String& GetExecutionRole() const { return m_executionRole; }
181 inline bool ExecutionRoleHasBeenSet() const { return m_executionRoleHasBeenSet; }
182 template<typename ExecutionRoleT = Aws::String>
183 void SetExecutionRole(ExecutionRoleT&& value) { m_executionRoleHasBeenSet = true; m_executionRole = std::forward<ExecutionRoleT>(value); }
184 template<typename ExecutionRoleT = Aws::String>
185 CreateImageRequest& WithExecutionRole(ExecutionRoleT&& value) { SetExecutionRole(std::forward<ExecutionRoleT>(value)); return *this;}
187 private:
188
189 Aws::String m_imageRecipeArn;
190 bool m_imageRecipeArnHasBeenSet = false;
191
192 Aws::String m_containerRecipeArn;
193 bool m_containerRecipeArnHasBeenSet = false;
194
195 Aws::String m_distributionConfigurationArn;
196 bool m_distributionConfigurationArnHasBeenSet = false;
197
198 Aws::String m_infrastructureConfigurationArn;
199 bool m_infrastructureConfigurationArnHasBeenSet = false;
200
201 ImageTestsConfiguration m_imageTestsConfiguration;
202 bool m_imageTestsConfigurationHasBeenSet = false;
203
204 bool m_enhancedImageMetadataEnabled{false};
205 bool m_enhancedImageMetadataEnabledHasBeenSet = false;
206
208 bool m_tagsHasBeenSet = false;
209
211 bool m_clientTokenHasBeenSet = true;
212
213 ImageScanningConfiguration m_imageScanningConfiguration;
214 bool m_imageScanningConfigurationHasBeenSet = false;
215
217 bool m_workflowsHasBeenSet = false;
218
219 Aws::String m_executionRole;
220 bool m_executionRoleHasBeenSet = false;
221 };
222
223} // namespace Model
224} // namespace imagebuilder
225} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
CreateImageRequest & WithImageTestsConfiguration(ImageTestsConfigurationT &&value)
CreateImageRequest & WithWorkflows(WorkflowsT &&value)
CreateImageRequest & WithClientToken(ClientTokenT &&value)
AWS_IMAGEBUILDER_API CreateImageRequest()=default
const Aws::Vector< WorkflowConfiguration > & GetWorkflows() const
AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override
const Aws::String & GetInfrastructureConfigurationArn() const
void SetImageTestsConfiguration(ImageTestsConfigurationT &&value)
void SetDistributionConfigurationArn(DistributionConfigurationArnT &&value)
const ImageTestsConfiguration & GetImageTestsConfiguration() const
virtual const char * GetServiceRequestName() const override
CreateImageRequest & WithImageScanningConfiguration(ImageScanningConfigurationT &&value)
void SetContainerRecipeArn(ContainerRecipeArnT &&value)
void SetImageRecipeArn(ImageRecipeArnT &&value)
CreateImageRequest & WithContainerRecipeArn(ContainerRecipeArnT &&value)
CreateImageRequest & AddWorkflows(WorkflowsT &&value)
void SetImageScanningConfiguration(ImageScanningConfigurationT &&value)
CreateImageRequest & WithExecutionRole(ExecutionRoleT &&value)
CreateImageRequest & WithEnhancedImageMetadataEnabled(bool value)
CreateImageRequest & WithInfrastructureConfigurationArn(InfrastructureConfigurationArnT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetInfrastructureConfigurationArn(InfrastructureConfigurationArnT &&value)
const Aws::String & GetContainerRecipeArn() const
const ImageScanningConfiguration & GetImageScanningConfiguration() const
CreateImageRequest & WithTags(TagsT &&value)
CreateImageRequest & WithImageRecipeArn(ImageRecipeArnT &&value)
CreateImageRequest & WithDistributionConfigurationArn(DistributionConfigurationArnT &&value)
const Aws::String & GetDistributionConfigurationArn() const
CreateImageRequest & 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