AWS SDK for C++

AWS SDK for C++ Version 1.11.901

Loading...
Searching...
No Matches
CreateImagePipelineRequest.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/ImageScanningConfiguration.h>
14#include <aws/imagebuilder/model/ImageTestsConfiguration.h>
15#include <aws/imagebuilder/model/PipelineLoggingConfiguration.h>
16#include <aws/imagebuilder/model/PipelineStatus.h>
17#include <aws/imagebuilder/model/Schedule.h>
18#include <aws/imagebuilder/model/WorkflowConfiguration.h>
19
20#include <utility>
21
22namespace Aws {
23namespace imagebuilder {
24namespace Model {
25
29 public:
30 AWS_IMAGEBUILDER_API CreateImagePipelineRequest() = 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 "CreateImagePipeline"; }
37
38 AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override;
39
41
47 inline const Aws::String& GetName() const { return m_name; }
48 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
49 template <typename NameT = Aws::String>
50 void SetName(NameT&& value) {
51 m_nameHasBeenSet = true;
52 m_name = std::forward<NameT>(value);
53 }
54 template <typename NameT = Aws::String>
56 SetName(std::forward<NameT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetDescription() const { return m_description; }
66 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
67 template <typename DescriptionT = Aws::String>
68 void SetDescription(DescriptionT&& value) {
69 m_descriptionHasBeenSet = true;
70 m_description = std::forward<DescriptionT>(value);
71 }
72 template <typename DescriptionT = Aws::String>
74 SetDescription(std::forward<DescriptionT>(value));
75 return *this;
76 }
78
80
85 inline const Aws::String& GetImageRecipeArn() const { return m_imageRecipeArn; }
86 inline bool ImageRecipeArnHasBeenSet() const { return m_imageRecipeArnHasBeenSet; }
87 template <typename ImageRecipeArnT = Aws::String>
88 void SetImageRecipeArn(ImageRecipeArnT&& value) {
89 m_imageRecipeArnHasBeenSet = true;
90 m_imageRecipeArn = std::forward<ImageRecipeArnT>(value);
91 }
92 template <typename ImageRecipeArnT = Aws::String>
94 SetImageRecipeArn(std::forward<ImageRecipeArnT>(value));
95 return *this;
96 }
98
100
105 inline const Aws::String& GetContainerRecipeArn() const { return m_containerRecipeArn; }
106 inline bool ContainerRecipeArnHasBeenSet() const { return m_containerRecipeArnHasBeenSet; }
107 template <typename ContainerRecipeArnT = Aws::String>
108 void SetContainerRecipeArn(ContainerRecipeArnT&& value) {
109 m_containerRecipeArnHasBeenSet = true;
110 m_containerRecipeArn = std::forward<ContainerRecipeArnT>(value);
111 }
112 template <typename ContainerRecipeArnT = Aws::String>
114 SetContainerRecipeArn(std::forward<ContainerRecipeArnT>(value));
115 return *this;
116 }
118
120
124 inline const Aws::String& GetInfrastructureConfigurationArn() const { return m_infrastructureConfigurationArn; }
125 inline bool InfrastructureConfigurationArnHasBeenSet() const { return m_infrastructureConfigurationArnHasBeenSet; }
126 template <typename InfrastructureConfigurationArnT = Aws::String>
127 void SetInfrastructureConfigurationArn(InfrastructureConfigurationArnT&& value) {
128 m_infrastructureConfigurationArnHasBeenSet = true;
129 m_infrastructureConfigurationArn = std::forward<InfrastructureConfigurationArnT>(value);
130 }
131 template <typename InfrastructureConfigurationArnT = Aws::String>
132 CreateImagePipelineRequest& WithInfrastructureConfigurationArn(InfrastructureConfigurationArnT&& value) {
133 SetInfrastructureConfigurationArn(std::forward<InfrastructureConfigurationArnT>(value));
134 return *this;
135 }
137
139
143 inline const Aws::String& GetDistributionConfigurationArn() const { return m_distributionConfigurationArn; }
144 inline bool DistributionConfigurationArnHasBeenSet() const { return m_distributionConfigurationArnHasBeenSet; }
145 template <typename DistributionConfigurationArnT = Aws::String>
146 void SetDistributionConfigurationArn(DistributionConfigurationArnT&& value) {
147 m_distributionConfigurationArnHasBeenSet = true;
148 m_distributionConfigurationArn = std::forward<DistributionConfigurationArnT>(value);
149 }
150 template <typename DistributionConfigurationArnT = Aws::String>
151 CreateImagePipelineRequest& WithDistributionConfigurationArn(DistributionConfigurationArnT&& value) {
152 SetDistributionConfigurationArn(std::forward<DistributionConfigurationArnT>(value));
153 return *this;
154 }
156
158
163 inline const ImageTestsConfiguration& GetImageTestsConfiguration() const { return m_imageTestsConfiguration; }
164 inline bool ImageTestsConfigurationHasBeenSet() const { return m_imageTestsConfigurationHasBeenSet; }
165 template <typename ImageTestsConfigurationT = ImageTestsConfiguration>
166 void SetImageTestsConfiguration(ImageTestsConfigurationT&& value) {
167 m_imageTestsConfigurationHasBeenSet = true;
168 m_imageTestsConfiguration = std::forward<ImageTestsConfigurationT>(value);
169 }
170 template <typename ImageTestsConfigurationT = ImageTestsConfiguration>
171 CreateImagePipelineRequest& WithImageTestsConfiguration(ImageTestsConfigurationT&& value) {
172 SetImageTestsConfiguration(std::forward<ImageTestsConfigurationT>(value));
173 return *this;
174 }
176
178
183 inline bool GetEnhancedImageMetadataEnabled() const { return m_enhancedImageMetadataEnabled; }
184 inline bool EnhancedImageMetadataEnabledHasBeenSet() const { return m_enhancedImageMetadataEnabledHasBeenSet; }
185 inline void SetEnhancedImageMetadataEnabled(bool value) {
186 m_enhancedImageMetadataEnabledHasBeenSet = true;
187 m_enhancedImageMetadataEnabled = value;
188 }
191 return *this;
192 }
194
196
200 inline const Schedule& GetSchedule() const { return m_schedule; }
201 inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
202 template <typename ScheduleT = Schedule>
203 void SetSchedule(ScheduleT&& value) {
204 m_scheduleHasBeenSet = true;
205 m_schedule = std::forward<ScheduleT>(value);
206 }
207 template <typename ScheduleT = Schedule>
209 SetSchedule(std::forward<ScheduleT>(value));
210 return *this;
211 }
213
215
220 inline PipelineStatus GetStatus() const { return m_status; }
221 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
222 inline void SetStatus(PipelineStatus value) {
223 m_statusHasBeenSet = true;
224 m_status = value;
225 }
227 SetStatus(value);
228 return *this;
229 }
231
233
236 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
237 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
238 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
239 void SetTags(TagsT&& value) {
240 m_tagsHasBeenSet = true;
241 m_tags = std::forward<TagsT>(value);
242 }
243 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
245 SetTags(std::forward<TagsT>(value));
246 return *this;
247 }
248 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
249 CreateImagePipelineRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
250 m_tagsHasBeenSet = true;
251 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
252 return *this;
253 }
255
257
263 inline const Aws::Map<Aws::String, Aws::String>& GetImageTags() const { return m_imageTags; }
264 inline bool ImageTagsHasBeenSet() const { return m_imageTagsHasBeenSet; }
265 template <typename ImageTagsT = Aws::Map<Aws::String, Aws::String>>
266 void SetImageTags(ImageTagsT&& value) {
267 m_imageTagsHasBeenSet = true;
268 m_imageTags = std::forward<ImageTagsT>(value);
269 }
270 template <typename ImageTagsT = Aws::Map<Aws::String, Aws::String>>
272 SetImageTags(std::forward<ImageTagsT>(value));
273 return *this;
274 }
275 template <typename ImageTagsKeyT = Aws::String, typename ImageTagsValueT = Aws::String>
276 CreateImagePipelineRequest& AddImageTags(ImageTagsKeyT&& key, ImageTagsValueT&& value) {
277 m_imageTagsHasBeenSet = true;
278 m_imageTags.emplace(std::forward<ImageTagsKeyT>(key), std::forward<ImageTagsValueT>(value));
279 return *this;
280 }
282
284
292 inline const Aws::String& GetClientToken() const { return m_clientToken; }
293 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
294 template <typename ClientTokenT = Aws::String>
295 void SetClientToken(ClientTokenT&& value) {
296 m_clientTokenHasBeenSet = true;
297 m_clientToken = std::forward<ClientTokenT>(value);
298 }
299 template <typename ClientTokenT = Aws::String>
301 SetClientToken(std::forward<ClientTokenT>(value));
302 return *this;
303 }
305
307
311 inline const ImageScanningConfiguration& GetImageScanningConfiguration() const { return m_imageScanningConfiguration; }
312 inline bool ImageScanningConfigurationHasBeenSet() const { return m_imageScanningConfigurationHasBeenSet; }
313 template <typename ImageScanningConfigurationT = ImageScanningConfiguration>
314 void SetImageScanningConfiguration(ImageScanningConfigurationT&& value) {
315 m_imageScanningConfigurationHasBeenSet = true;
316 m_imageScanningConfiguration = std::forward<ImageScanningConfigurationT>(value);
317 }
318 template <typename ImageScanningConfigurationT = ImageScanningConfiguration>
319 CreateImagePipelineRequest& WithImageScanningConfiguration(ImageScanningConfigurationT&& value) {
320 SetImageScanningConfiguration(std::forward<ImageScanningConfigurationT>(value));
321 return *this;
322 }
324
326
331 inline const Aws::Vector<WorkflowConfiguration>& GetWorkflows() const { return m_workflows; }
332 inline bool WorkflowsHasBeenSet() const { return m_workflowsHasBeenSet; }
333 template <typename WorkflowsT = Aws::Vector<WorkflowConfiguration>>
334 void SetWorkflows(WorkflowsT&& value) {
335 m_workflowsHasBeenSet = true;
336 m_workflows = std::forward<WorkflowsT>(value);
337 }
338 template <typename WorkflowsT = Aws::Vector<WorkflowConfiguration>>
340 SetWorkflows(std::forward<WorkflowsT>(value));
341 return *this;
342 }
343 template <typename WorkflowsT = WorkflowConfiguration>
345 m_workflowsHasBeenSet = true;
346 m_workflows.emplace_back(std::forward<WorkflowsT>(value));
347 return *this;
348 }
350
352
356 inline const Aws::String& GetExecutionRole() const { return m_executionRole; }
357 inline bool ExecutionRoleHasBeenSet() const { return m_executionRoleHasBeenSet; }
358 template <typename ExecutionRoleT = Aws::String>
359 void SetExecutionRole(ExecutionRoleT&& value) {
360 m_executionRoleHasBeenSet = true;
361 m_executionRole = std::forward<ExecutionRoleT>(value);
362 }
363 template <typename ExecutionRoleT = Aws::String>
365 SetExecutionRole(std::forward<ExecutionRoleT>(value));
366 return *this;
367 }
369
371
379 inline const PipelineLoggingConfiguration& GetLoggingConfiguration() const { return m_loggingConfiguration; }
380 inline bool LoggingConfigurationHasBeenSet() const { return m_loggingConfigurationHasBeenSet; }
381 template <typename LoggingConfigurationT = PipelineLoggingConfiguration>
382 void SetLoggingConfiguration(LoggingConfigurationT&& value) {
383 m_loggingConfigurationHasBeenSet = true;
384 m_loggingConfiguration = std::forward<LoggingConfigurationT>(value);
385 }
386 template <typename LoggingConfigurationT = PipelineLoggingConfiguration>
387 CreateImagePipelineRequest& WithLoggingConfiguration(LoggingConfigurationT&& value) {
388 SetLoggingConfiguration(std::forward<LoggingConfigurationT>(value));
389 return *this;
390 }
392
394
399 inline bool GetDryRun() const { return m_dryRun; }
400 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
401 inline void SetDryRun(bool value) {
402 m_dryRunHasBeenSet = true;
403 m_dryRun = value;
404 }
406 SetDryRun(value);
407 return *this;
408 }
410 private:
411 Aws::String m_name;
412
413 Aws::String m_description;
414
415 Aws::String m_imageRecipeArn;
416
417 Aws::String m_containerRecipeArn;
418
419 Aws::String m_infrastructureConfigurationArn;
420
421 Aws::String m_distributionConfigurationArn;
422
423 ImageTestsConfiguration m_imageTestsConfiguration;
424
425 bool m_enhancedImageMetadataEnabled{false};
426
427 Schedule m_schedule;
428
430
432
434
436
437 ImageScanningConfiguration m_imageScanningConfiguration;
438
440
441 Aws::String m_executionRole;
442
443 PipelineLoggingConfiguration m_loggingConfiguration;
444
445 bool m_dryRun{false};
446 bool m_nameHasBeenSet = false;
447 bool m_descriptionHasBeenSet = false;
448 bool m_imageRecipeArnHasBeenSet = false;
449 bool m_containerRecipeArnHasBeenSet = false;
450 bool m_infrastructureConfigurationArnHasBeenSet = false;
451 bool m_distributionConfigurationArnHasBeenSet = false;
452 bool m_imageTestsConfigurationHasBeenSet = false;
453 bool m_enhancedImageMetadataEnabledHasBeenSet = false;
454 bool m_scheduleHasBeenSet = false;
455 bool m_statusHasBeenSet = false;
456 bool m_tagsHasBeenSet = false;
457 bool m_imageTagsHasBeenSet = false;
458 bool m_clientTokenHasBeenSet = true;
459 bool m_imageScanningConfigurationHasBeenSet = false;
460 bool m_workflowsHasBeenSet = false;
461 bool m_executionRoleHasBeenSet = false;
462 bool m_loggingConfigurationHasBeenSet = false;
463 bool m_dryRunHasBeenSet = false;
464};
465
466} // namespace Model
467} // namespace imagebuilder
468} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
void SetDistributionConfigurationArn(DistributionConfigurationArnT &&value)
AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override
AWS_IMAGEBUILDER_API CreateImagePipelineRequest()=default
CreateImagePipelineRequest & WithImageTags(ImageTagsT &&value)
CreateImagePipelineRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateImagePipelineRequest & WithWorkflows(WorkflowsT &&value)
CreateImagePipelineRequest & WithImageRecipeArn(ImageRecipeArnT &&value)
const Aws::Map< Aws::String, Aws::String > & GetImageTags() const
CreateImagePipelineRequest & WithExecutionRole(ExecutionRoleT &&value)
CreateImagePipelineRequest & WithContainerRecipeArn(ContainerRecipeArnT &&value)
CreateImagePipelineRequest & WithTags(TagsT &&value)
CreateImagePipelineRequest & WithImageScanningConfiguration(ImageScanningConfigurationT &&value)
CreateImagePipelineRequest & WithDistributionConfigurationArn(DistributionConfigurationArnT &&value)
CreateImagePipelineRequest & WithLoggingConfiguration(LoggingConfigurationT &&value)
CreateImagePipelineRequest & WithDescription(DescriptionT &&value)
void SetInfrastructureConfigurationArn(InfrastructureConfigurationArnT &&value)
void SetImageTestsConfiguration(ImageTestsConfigurationT &&value)
const Aws::Vector< WorkflowConfiguration > & GetWorkflows() const
CreateImagePipelineRequest & AddWorkflows(WorkflowsT &&value)
CreateImagePipelineRequest & WithName(NameT &&value)
CreateImagePipelineRequest & AddImageTags(ImageTagsKeyT &&key, ImageTagsValueT &&value)
CreateImagePipelineRequest & WithEnhancedImageMetadataEnabled(bool value)
CreateImagePipelineRequest & WithInfrastructureConfigurationArn(InfrastructureConfigurationArnT &&value)
const ImageScanningConfiguration & GetImageScanningConfiguration() const
CreateImagePipelineRequest & WithSchedule(ScheduleT &&value)
CreateImagePipelineRequest & WithStatus(PipelineStatus value)
CreateImagePipelineRequest & WithImageTestsConfiguration(ImageTestsConfigurationT &&value)
const PipelineLoggingConfiguration & GetLoggingConfiguration() const
CreateImagePipelineRequest & WithClientToken(ClientTokenT &&value)
void SetImageScanningConfiguration(ImageScanningConfigurationT &&value)
const ImageTestsConfiguration & GetImageTestsConfiguration() const
const Aws::Map< Aws::String, Aws::String > & GetTags() 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