7#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/imagebuilder/model/AmiDistributionConfiguration.h>
10#include <aws/imagebuilder/model/ContainerDistributionConfiguration.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/imagebuilder/model/S3ExportConfiguration.h>
13#include <aws/imagebuilder/model/LaunchTemplateConfiguration.h>
14#include <aws/imagebuilder/model/FastLaunchConfiguration.h>
15#include <aws/imagebuilder/model/SsmParameterConfiguration.h>
53 template<
typename RegionT = Aws::String>
54 void SetRegion(RegionT&& value) { m_regionHasBeenSet =
true; m_region = std::forward<RegionT>(value); }
55 template<
typename RegionT = Aws::String>
65 template<
typename AmiDistributionConfigurationT = AmiDistributionConfiguration>
66 void SetAmiDistributionConfiguration(AmiDistributionConfigurationT&& value) { m_amiDistributionConfigurationHasBeenSet =
true; m_amiDistributionConfiguration = std::forward<AmiDistributionConfigurationT>(value); }
67 template<
typename AmiDistributionConfigurationT = AmiDistributionConfiguration>
78 template<
typename ContainerDistributionConfigurationT = ContainerDistributionConfiguration>
79 void SetContainerDistributionConfiguration(ContainerDistributionConfigurationT&& value) { m_containerDistributionConfigurationHasBeenSet =
true; m_containerDistributionConfiguration = std::forward<ContainerDistributionConfigurationT>(value); }
80 template<
typename ContainerDistributionConfigurationT = ContainerDistributionConfiguration>
91 template<
typename LicenseConfigurationArnsT = Aws::Vector<Aws::String>>
92 void SetLicenseConfigurationArns(LicenseConfigurationArnsT&& value) { m_licenseConfigurationArnsHasBeenSet =
true; m_licenseConfigurationArns = std::forward<LicenseConfigurationArnsT>(value); }
93 template<
typename LicenseConfigurationArnsT = Aws::Vector<Aws::String>>
95 template<
typename LicenseConfigurationArnsT = Aws::String>
96 Distribution&
AddLicenseConfigurationArns(LicenseConfigurationArnsT&& value) { m_licenseConfigurationArnsHasBeenSet =
true; m_licenseConfigurationArns.emplace_back(std::forward<LicenseConfigurationArnsT>(value));
return *
this; }
106 template<
typename LaunchTemplateConfigurationsT = Aws::Vector<LaunchTemplateConfiguration>>
107 void SetLaunchTemplateConfigurations(LaunchTemplateConfigurationsT&& value) { m_launchTemplateConfigurationsHasBeenSet =
true; m_launchTemplateConfigurations = std::forward<LaunchTemplateConfigurationsT>(value); }
108 template<
typename LaunchTemplateConfigurationsT = Aws::Vector<LaunchTemplateConfiguration>>
110 template<
typename LaunchTemplateConfigurationsT = LaunchTemplateConfiguration>
111 Distribution&
AddLaunchTemplateConfigurations(LaunchTemplateConfigurationsT&& value) { m_launchTemplateConfigurationsHasBeenSet =
true; m_launchTemplateConfigurations.emplace_back(std::forward<LaunchTemplateConfigurationsT>(value));
return *
this; }
121 template<
typename S3ExportConfigurationT = S3ExportConfiguration>
122 void SetS3ExportConfiguration(S3ExportConfigurationT&& value) { m_s3ExportConfigurationHasBeenSet =
true; m_s3ExportConfiguration = std::forward<S3ExportConfigurationT>(value); }
123 template<
typename S3ExportConfigurationT = S3ExportConfiguration>
133 template<
typename FastLaunchConfigurationsT = Aws::Vector<FastLaunchConfiguration>>
134 void SetFastLaunchConfigurations(FastLaunchConfigurationsT&& value) { m_fastLaunchConfigurationsHasBeenSet =
true; m_fastLaunchConfigurations = std::forward<FastLaunchConfigurationsT>(value); }
135 template<
typename FastLaunchConfigurationsT = Aws::Vector<FastLaunchConfiguration>>
137 template<
typename FastLaunchConfigurationsT = FastLaunchConfiguration>
138 Distribution&
AddFastLaunchConfigurations(FastLaunchConfigurationsT&& value) { m_fastLaunchConfigurationsHasBeenSet =
true; m_fastLaunchConfigurations.emplace_back(std::forward<FastLaunchConfigurationsT>(value));
return *
this; }
149 template<
typename SsmParameterConfigurationsT = Aws::Vector<SsmParameterConfiguration>>
150 void SetSsmParameterConfigurations(SsmParameterConfigurationsT&& value) { m_ssmParameterConfigurationsHasBeenSet =
true; m_ssmParameterConfigurations = std::forward<SsmParameterConfigurationsT>(value); }
151 template<
typename SsmParameterConfigurationsT = Aws::Vector<SsmParameterConfiguration>>
153 template<
typename SsmParameterConfigurationsT = SsmParameterConfiguration>
154 Distribution&
AddSsmParameterConfigurations(SsmParameterConfigurationsT&& value) { m_ssmParameterConfigurationsHasBeenSet =
true; m_ssmParameterConfigurations.emplace_back(std::forward<SsmParameterConfigurationsT>(value));
return *
this; }
159 bool m_regionHasBeenSet =
false;
162 bool m_amiDistributionConfigurationHasBeenSet =
false;
165 bool m_containerDistributionConfigurationHasBeenSet =
false;
168 bool m_licenseConfigurationArnsHasBeenSet =
false;
171 bool m_launchTemplateConfigurationsHasBeenSet =
false;
174 bool m_s3ExportConfigurationHasBeenSet =
false;
177 bool m_fastLaunchConfigurationsHasBeenSet =
false;
180 bool m_ssmParameterConfigurationsHasBeenSet =
false;
Distribution & WithAmiDistributionConfiguration(AmiDistributionConfigurationT &&value)
bool ContainerDistributionConfigurationHasBeenSet() const
Distribution & AddLicenseConfigurationArns(LicenseConfigurationArnsT &&value)
Distribution & WithSsmParameterConfigurations(SsmParameterConfigurationsT &&value)
AWS_IMAGEBUILDER_API Distribution()=default
Distribution & AddLaunchTemplateConfigurations(LaunchTemplateConfigurationsT &&value)
const S3ExportConfiguration & GetS3ExportConfiguration() const
const Aws::String & GetRegion() const
void SetRegion(RegionT &&value)
const AmiDistributionConfiguration & GetAmiDistributionConfiguration() const
void SetSsmParameterConfigurations(SsmParameterConfigurationsT &&value)
Distribution & WithContainerDistributionConfiguration(ContainerDistributionConfigurationT &&value)
bool AmiDistributionConfigurationHasBeenSet() const
void SetS3ExportConfiguration(S3ExportConfigurationT &&value)
void SetAmiDistributionConfiguration(AmiDistributionConfigurationT &&value)
void SetFastLaunchConfigurations(FastLaunchConfigurationsT &&value)
void SetLaunchTemplateConfigurations(LaunchTemplateConfigurationsT &&value)
AWS_IMAGEBUILDER_API Distribution(Aws::Utils::Json::JsonView jsonValue)
void SetLicenseConfigurationArns(LicenseConfigurationArnsT &&value)
Distribution & WithLaunchTemplateConfigurations(LaunchTemplateConfigurationsT &&value)
bool LaunchTemplateConfigurationsHasBeenSet() const
const Aws::Vector< SsmParameterConfiguration > & GetSsmParameterConfigurations() const
Distribution & AddSsmParameterConfigurations(SsmParameterConfigurationsT &&value)
bool SsmParameterConfigurationsHasBeenSet() const
void SetContainerDistributionConfiguration(ContainerDistributionConfigurationT &&value)
Distribution & WithLicenseConfigurationArns(LicenseConfigurationArnsT &&value)
bool LicenseConfigurationArnsHasBeenSet() const
const ContainerDistributionConfiguration & GetContainerDistributionConfiguration() const
AWS_IMAGEBUILDER_API Distribution & operator=(Aws::Utils::Json::JsonView jsonValue)
bool S3ExportConfigurationHasBeenSet() const
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
bool RegionHasBeenSet() const
const Aws::Vector< FastLaunchConfiguration > & GetFastLaunchConfigurations() const
Distribution & AddFastLaunchConfigurations(FastLaunchConfigurationsT &&value)
Distribution & WithRegion(RegionT &&value)
Distribution & WithFastLaunchConfigurations(FastLaunchConfigurationsT &&value)
const Aws::Vector< Aws::String > & GetLicenseConfigurationArns() const
Distribution & WithS3ExportConfiguration(S3ExportConfigurationT &&value)
bool FastLaunchConfigurationsHasBeenSet() const
const Aws::Vector< LaunchTemplateConfiguration > & GetLaunchTemplateConfigurations() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue