7#include <aws/core/utils/DateTime.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/Imagebuilder_EXPORTS.h>
12#include <aws/imagebuilder/model/BuildType.h>
13#include <aws/imagebuilder/model/ContainerRecipe.h>
14#include <aws/imagebuilder/model/DistributionConfiguration.h>
15#include <aws/imagebuilder/model/ImageLoggingConfiguration.h>
16#include <aws/imagebuilder/model/ImageRecipe.h>
17#include <aws/imagebuilder/model/ImageScanState.h>
18#include <aws/imagebuilder/model/ImageScanningConfiguration.h>
19#include <aws/imagebuilder/model/ImageSource.h>
20#include <aws/imagebuilder/model/ImageState.h>
21#include <aws/imagebuilder/model/ImageTestsConfiguration.h>
22#include <aws/imagebuilder/model/ImageType.h>
23#include <aws/imagebuilder/model/InfrastructureConfiguration.h>
24#include <aws/imagebuilder/model/OutputResources.h>
25#include <aws/imagebuilder/model/Platform.h>
26#include <aws/imagebuilder/model/WorkflowConfiguration.h>
37namespace imagebuilder {
52 AWS_IMAGEBUILDER_API
Image() =
default;
71 template <
typename ArnT = Aws::String>
73 m_arnHasBeenSet =
true;
74 m_arn = std::forward<ArnT>(value);
76 template <
typename ArnT = Aws::String>
78 SetArn(std::forward<ArnT>(value));
90 m_typeHasBeenSet =
true;
105 template <
typename NameT = Aws::String>
107 m_nameHasBeenSet =
true;
108 m_name = std::forward<NameT>(value);
110 template <
typename NameT = Aws::String>
112 SetName(std::forward<NameT>(value));
136 template <
typename VersionT = Aws::String>
138 m_versionHasBeenSet =
true;
139 m_version = std::forward<VersionT>(value);
141 template <
typename VersionT = Aws::String>
155 m_platformHasBeenSet =
true;
172 m_enhancedImageMetadataEnabledHasBeenSet =
true;
173 m_enhancedImageMetadataEnabled = value;
188 template <
typename OsVersionT = Aws::String>
190 m_osVersionHasBeenSet =
true;
191 m_osVersion = std::forward<OsVersionT>(value);
193 template <
typename OsVersionT = Aws::String>
206 template <
typename StateT = ImageState>
208 m_stateHasBeenSet =
true;
209 m_state = std::forward<StateT>(value);
211 template <
typename StateT = ImageState>
213 SetState(std::forward<StateT>(value));
225 template <
typename ImageRecipeT = ImageRecipe>
227 m_imageRecipeHasBeenSet =
true;
228 m_imageRecipe = std::forward<ImageRecipeT>(value);
230 template <
typename ImageRecipeT = ImageRecipe>
244 template <
typename ContainerRecipeT = ContainerRecipe>
246 m_containerRecipeHasBeenSet =
true;
247 m_containerRecipe = std::forward<ContainerRecipeT>(value);
249 template <
typename ContainerRecipeT = ContainerRecipe>
262 template <
typename SourcePipelineNameT = Aws::String>
264 m_sourcePipelineNameHasBeenSet =
true;
265 m_sourcePipelineName = std::forward<SourcePipelineNameT>(value);
267 template <
typename SourcePipelineNameT = Aws::String>
281 template <
typename SourcePipelineArnT = Aws::String>
283 m_sourcePipelineArnHasBeenSet =
true;
284 m_sourcePipelineArn = std::forward<SourcePipelineArnT>(value);
286 template <
typename SourcePipelineArnT = Aws::String>
299 template <
typename InfrastructureConfigurationT = InfrastructureConfiguration>
301 m_infrastructureConfigurationHasBeenSet =
true;
302 m_infrastructureConfiguration = std::forward<InfrastructureConfigurationT>(value);
304 template <
typename InfrastructureConfigurationT = InfrastructureConfiguration>
318 template <
typename DistributionConfigurationT = DistributionConfiguration>
320 m_distributionConfigurationHasBeenSet =
true;
321 m_distributionConfiguration = std::forward<DistributionConfigurationT>(value);
323 template <
typename DistributionConfigurationT = DistributionConfiguration>
336 template <
typename ImageTestsConfigurationT = ImageTestsConfiguration>
338 m_imageTestsConfigurationHasBeenSet =
true;
339 m_imageTestsConfiguration = std::forward<ImageTestsConfigurationT>(value);
341 template <
typename ImageTestsConfigurationT = ImageTestsConfiguration>
354 template <
typename DateCreatedT = Aws::String>
356 m_dateCreatedHasBeenSet =
true;
357 m_dateCreated = std::forward<DateCreatedT>(value);
359 template <
typename DateCreatedT = Aws::String>
372 template <
typename OutputResourcesT = OutputResources>
374 m_outputResourcesHasBeenSet =
true;
375 m_outputResources = std::forward<OutputResourcesT>(value);
377 template <
typename OutputResourcesT = OutputResources>
390 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
392 m_tagsHasBeenSet =
true;
393 m_tags = std::forward<TagsT>(value);
395 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
397 SetTags(std::forward<TagsT>(value));
400 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
402 m_tagsHasBeenSet =
true;
403 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
421 m_buildTypeHasBeenSet =
true;
437 m_imageSourceHasBeenSet =
true;
438 m_imageSource = value;
452 template <
typename ScanStateT = ImageScanState>
454 m_scanStateHasBeenSet =
true;
455 m_scanState = std::forward<ScanStateT>(value);
457 template <
typename ScanStateT = ImageScanState>
470 template <
typename ImageScanningConfigurationT = ImageScanningConfiguration>
472 m_imageScanningConfigurationHasBeenSet =
true;
473 m_imageScanningConfiguration = std::forward<ImageScanningConfigurationT>(value);
475 template <
typename ImageScanningConfigurationT = ImageScanningConfiguration>
489 template <
typename DeprecationTimeT = Aws::Utils::DateTime>
491 m_deprecationTimeHasBeenSet =
true;
492 m_deprecationTime = std::forward<DeprecationTimeT>(value);
494 template <
typename DeprecationTimeT = Aws::Utils::DateTime>
508 template <
typename LifecycleExecutionIdT = Aws::String>
510 m_lifecycleExecutionIdHasBeenSet =
true;
511 m_lifecycleExecutionId = std::forward<LifecycleExecutionIdT>(value);
513 template <
typename LifecycleExecutionIdT = Aws::String>
527 template <
typename ExecutionRoleT = Aws::String>
529 m_executionRoleHasBeenSet =
true;
530 m_executionRole = std::forward<ExecutionRoleT>(value);
532 template <
typename ExecutionRoleT = Aws::String>
545 template <
typename WorkflowsT = Aws::Vector<WorkflowConfiguration>>
547 m_workflowsHasBeenSet =
true;
548 m_workflows = std::forward<WorkflowsT>(value);
550 template <
typename WorkflowsT = Aws::Vector<WorkflowConfiguration>>
555 template <
typename WorkflowsT = WorkflowConfiguration>
557 m_workflowsHasBeenSet =
true;
558 m_workflows.emplace_back(std::forward<WorkflowsT>(value));
570 template <
typename LoggingConfigurationT = ImageLoggingConfiguration>
572 m_loggingConfigurationHasBeenSet =
true;
573 m_loggingConfiguration = std::forward<LoggingConfigurationT>(value);
575 template <
typename LoggingConfigurationT = ImageLoggingConfiguration>
592 bool m_enhancedImageMetadataEnabled{
false};
598 ImageRecipe m_imageRecipe;
600 ContainerRecipe m_containerRecipe;
606 InfrastructureConfiguration m_infrastructureConfiguration;
608 DistributionConfiguration m_distributionConfiguration;
610 ImageTestsConfiguration m_imageTestsConfiguration;
614 OutputResources m_outputResources;
622 ImageScanState m_scanState;
624 ImageScanningConfiguration m_imageScanningConfiguration;
634 ImageLoggingConfiguration m_loggingConfiguration;
635 bool m_arnHasBeenSet =
false;
636 bool m_typeHasBeenSet =
false;
637 bool m_nameHasBeenSet =
false;
638 bool m_versionHasBeenSet =
false;
639 bool m_platformHasBeenSet =
false;
640 bool m_enhancedImageMetadataEnabledHasBeenSet =
false;
641 bool m_osVersionHasBeenSet =
false;
642 bool m_stateHasBeenSet =
false;
643 bool m_imageRecipeHasBeenSet =
false;
644 bool m_containerRecipeHasBeenSet =
false;
645 bool m_sourcePipelineNameHasBeenSet =
false;
646 bool m_sourcePipelineArnHasBeenSet =
false;
647 bool m_infrastructureConfigurationHasBeenSet =
false;
648 bool m_distributionConfigurationHasBeenSet =
false;
649 bool m_imageTestsConfigurationHasBeenSet =
false;
650 bool m_dateCreatedHasBeenSet =
false;
651 bool m_outputResourcesHasBeenSet =
false;
652 bool m_tagsHasBeenSet =
false;
653 bool m_buildTypeHasBeenSet =
false;
654 bool m_imageSourceHasBeenSet =
false;
655 bool m_scanStateHasBeenSet =
false;
656 bool m_imageScanningConfigurationHasBeenSet =
false;
657 bool m_deprecationTimeHasBeenSet =
false;
658 bool m_lifecycleExecutionIdHasBeenSet =
false;
659 bool m_executionRoleHasBeenSet =
false;
660 bool m_workflowsHasBeenSet =
false;
661 bool m_loggingConfigurationHasBeenSet =
false;
const Aws::String & GetVersion() const
void SetType(ImageType value)
const OutputResources & GetOutputResources() const
bool DeprecationTimeHasBeenSet() const
void SetImageTestsConfiguration(ImageTestsConfigurationT &&value)
bool DistributionConfigurationHasBeenSet() const
Image & AddWorkflows(WorkflowsT &&value)
const Aws::String & GetOsVersion() const
void SetLifecycleExecutionId(LifecycleExecutionIdT &&value)
const Aws::String & GetDateCreated() const
Image & AddTags(TagsKeyT &&key, TagsValueT &&value)
ImageType GetType() const
bool ImageTestsConfigurationHasBeenSet() const
void SetArn(ArnT &&value)
Image & WithImageScanningConfiguration(ImageScanningConfigurationT &&value)
const Aws::Utils::DateTime & GetDeprecationTime() const
const ImageLoggingConfiguration & GetLoggingConfiguration() const
void SetDateCreated(DateCreatedT &&value)
bool ImageRecipeHasBeenSet() const
Image & WithSourcePipelineArn(SourcePipelineArnT &&value)
bool SourcePipelineArnHasBeenSet() const
const Aws::String & GetArn() const
const DistributionConfiguration & GetDistributionConfiguration() const
void SetBuildType(BuildType value)
Image & WithType(ImageType value)
void SetEnhancedImageMetadataEnabled(bool value)
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
bool ImageScanningConfigurationHasBeenSet() const
bool OsVersionHasBeenSet() const
const ImageScanState & GetScanState() const
const ImageState & GetState() const
Image & WithDeprecationTime(DeprecationTimeT &&value)
void SetOsVersion(OsVersionT &&value)
Image & WithPlatform(Platform value)
bool ScanStateHasBeenSet() const
bool ContainerRecipeHasBeenSet() const
bool DateCreatedHasBeenSet() const
bool WorkflowsHasBeenSet() const
bool SourcePipelineNameHasBeenSet() const
const ContainerRecipe & GetContainerRecipe() const
const Aws::String & GetSourcePipelineName() const
bool InfrastructureConfigurationHasBeenSet() const
void SetVersion(VersionT &&value)
void SetImageScanningConfiguration(ImageScanningConfigurationT &&value)
const Aws::String & GetName() const
Image & WithImageSource(ImageSource value)
const Aws::Vector< WorkflowConfiguration > & GetWorkflows() const
Image & WithOutputResources(OutputResourcesT &&value)
bool ImageSourceHasBeenSet() const
Image & WithLoggingConfiguration(LoggingConfigurationT &&value)
bool ArnHasBeenSet() const
Image & WithDistributionConfiguration(DistributionConfigurationT &&value)
Platform GetPlatform() const
bool LoggingConfigurationHasBeenSet() const
bool TagsHasBeenSet() const
const Aws::String & GetSourcePipelineArn() const
void SetDeprecationTime(DeprecationTimeT &&value)
Image & WithWorkflows(WorkflowsT &&value)
void SetImageRecipe(ImageRecipeT &&value)
bool PlatformHasBeenSet() const
Image & WithVersion(VersionT &&value)
Image & WithImageRecipe(ImageRecipeT &&value)
void SetTags(TagsT &&value)
void SetSourcePipelineName(SourcePipelineNameT &&value)
Image & WithExecutionRole(ExecutionRoleT &&value)
Image & WithLifecycleExecutionId(LifecycleExecutionIdT &&value)
bool BuildTypeHasBeenSet() const
Image & WithTags(TagsT &&value)
Image & WithEnhancedImageMetadataEnabled(bool value)
const InfrastructureConfiguration & GetInfrastructureConfiguration() const
Image & WithSourcePipelineName(SourcePipelineNameT &&value)
void SetName(NameT &&value)
void SetPlatform(Platform value)
const ImageScanningConfiguration & GetImageScanningConfiguration() const
Image & WithInfrastructureConfiguration(InfrastructureConfigurationT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Image & WithImageTestsConfiguration(ImageTestsConfigurationT &&value)
const ImageTestsConfiguration & GetImageTestsConfiguration() const
bool TypeHasBeenSet() const
Image & WithContainerRecipe(ContainerRecipeT &&value)
void SetExecutionRole(ExecutionRoleT &&value)
Image & WithOsVersion(OsVersionT &&value)
AWS_IMAGEBUILDER_API Image(Aws::Utils::Json::JsonView jsonValue)
void SetScanState(ScanStateT &&value)
void SetState(StateT &&value)
bool EnhancedImageMetadataEnabledHasBeenSet() const
bool VersionHasBeenSet() const
bool StateHasBeenSet() const
ImageSource GetImageSource() const
BuildType GetBuildType() const
Image & WithState(StateT &&value)
Image & WithName(NameT &&value)
Image & WithArn(ArnT &&value)
const ImageRecipe & GetImageRecipe() const
const Aws::String & GetLifecycleExecutionId() const
const Aws::String & GetExecutionRole() const
void SetWorkflows(WorkflowsT &&value)
bool OutputResourcesHasBeenSet() const
void SetImageSource(ImageSource value)
void SetLoggingConfiguration(LoggingConfigurationT &&value)
void SetInfrastructureConfiguration(InfrastructureConfigurationT &&value)
Image & WithBuildType(BuildType value)
bool ExecutionRoleHasBeenSet() const
Image & WithScanState(ScanStateT &&value)
bool NameHasBeenSet() const
bool LifecycleExecutionIdHasBeenSet() const
Image & WithDateCreated(DateCreatedT &&value)
AWS_IMAGEBUILDER_API Image()=default
void SetDistributionConfiguration(DistributionConfigurationT &&value)
void SetSourcePipelineArn(SourcePipelineArnT &&value)
AWS_IMAGEBUILDER_API Image & operator=(Aws::Utils::Json::JsonView jsonValue)
bool GetEnhancedImageMetadataEnabled() const
void SetContainerRecipe(ContainerRecipeT &&value)
void SetOutputResources(OutputResourcesT &&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
Aws::Utils::Json::JsonValue JsonValue