AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
Distribution.h
1
6#pragma once
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>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace imagebuilder
29{
30namespace Model
31{
32
39 {
40 public:
41 AWS_IMAGEBUILDER_API Distribution() = default;
42 AWS_IMAGEBUILDER_API Distribution(Aws::Utils::Json::JsonView jsonValue);
43 AWS_IMAGEBUILDER_API Distribution& operator=(Aws::Utils::Json::JsonView jsonValue);
44 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const Aws::String& GetRegion() const { return m_region; }
52 inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; }
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>
56 Distribution& WithRegion(RegionT&& value) { SetRegion(std::forward<RegionT>(value)); return *this;}
58
60
63 inline const AmiDistributionConfiguration& GetAmiDistributionConfiguration() const { return m_amiDistributionConfiguration; }
64 inline bool AmiDistributionConfigurationHasBeenSet() const { return m_amiDistributionConfigurationHasBeenSet; }
65 template<typename AmiDistributionConfigurationT = AmiDistributionConfiguration>
66 void SetAmiDistributionConfiguration(AmiDistributionConfigurationT&& value) { m_amiDistributionConfigurationHasBeenSet = true; m_amiDistributionConfiguration = std::forward<AmiDistributionConfigurationT>(value); }
67 template<typename AmiDistributionConfigurationT = AmiDistributionConfiguration>
68 Distribution& WithAmiDistributionConfiguration(AmiDistributionConfigurationT&& value) { SetAmiDistributionConfiguration(std::forward<AmiDistributionConfigurationT>(value)); return *this;}
70
72
76 inline const ContainerDistributionConfiguration& GetContainerDistributionConfiguration() const { return m_containerDistributionConfiguration; }
77 inline bool ContainerDistributionConfigurationHasBeenSet() const { return m_containerDistributionConfigurationHasBeenSet; }
78 template<typename ContainerDistributionConfigurationT = ContainerDistributionConfiguration>
79 void SetContainerDistributionConfiguration(ContainerDistributionConfigurationT&& value) { m_containerDistributionConfigurationHasBeenSet = true; m_containerDistributionConfiguration = std::forward<ContainerDistributionConfigurationT>(value); }
80 template<typename ContainerDistributionConfigurationT = ContainerDistributionConfiguration>
81 Distribution& WithContainerDistributionConfiguration(ContainerDistributionConfigurationT&& value) { SetContainerDistributionConfiguration(std::forward<ContainerDistributionConfigurationT>(value)); return *this;}
83
85
89 inline const Aws::Vector<Aws::String>& GetLicenseConfigurationArns() const { return m_licenseConfigurationArns; }
90 inline bool LicenseConfigurationArnsHasBeenSet() const { return m_licenseConfigurationArnsHasBeenSet; }
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>>
94 Distribution& WithLicenseConfigurationArns(LicenseConfigurationArnsT&& value) { SetLicenseConfigurationArns(std::forward<LicenseConfigurationArnsT>(value)); return *this;}
95 template<typename LicenseConfigurationArnsT = Aws::String>
96 Distribution& AddLicenseConfigurationArns(LicenseConfigurationArnsT&& value) { m_licenseConfigurationArnsHasBeenSet = true; m_licenseConfigurationArns.emplace_back(std::forward<LicenseConfigurationArnsT>(value)); return *this; }
98
100
104 inline const Aws::Vector<LaunchTemplateConfiguration>& GetLaunchTemplateConfigurations() const { return m_launchTemplateConfigurations; }
105 inline bool LaunchTemplateConfigurationsHasBeenSet() const { return m_launchTemplateConfigurationsHasBeenSet; }
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>>
109 Distribution& WithLaunchTemplateConfigurations(LaunchTemplateConfigurationsT&& value) { SetLaunchTemplateConfigurations(std::forward<LaunchTemplateConfigurationsT>(value)); return *this;}
110 template<typename LaunchTemplateConfigurationsT = LaunchTemplateConfiguration>
111 Distribution& AddLaunchTemplateConfigurations(LaunchTemplateConfigurationsT&& value) { m_launchTemplateConfigurationsHasBeenSet = true; m_launchTemplateConfigurations.emplace_back(std::forward<LaunchTemplateConfigurationsT>(value)); return *this; }
113
115
119 inline const S3ExportConfiguration& GetS3ExportConfiguration() const { return m_s3ExportConfiguration; }
120 inline bool S3ExportConfigurationHasBeenSet() const { return m_s3ExportConfigurationHasBeenSet; }
121 template<typename S3ExportConfigurationT = S3ExportConfiguration>
122 void SetS3ExportConfiguration(S3ExportConfigurationT&& value) { m_s3ExportConfigurationHasBeenSet = true; m_s3ExportConfiguration = std::forward<S3ExportConfigurationT>(value); }
123 template<typename S3ExportConfigurationT = S3ExportConfiguration>
124 Distribution& WithS3ExportConfiguration(S3ExportConfigurationT&& value) { SetS3ExportConfiguration(std::forward<S3ExportConfigurationT>(value)); return *this;}
126
128
131 inline const Aws::Vector<FastLaunchConfiguration>& GetFastLaunchConfigurations() const { return m_fastLaunchConfigurations; }
132 inline bool FastLaunchConfigurationsHasBeenSet() const { return m_fastLaunchConfigurationsHasBeenSet; }
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>>
136 Distribution& WithFastLaunchConfigurations(FastLaunchConfigurationsT&& value) { SetFastLaunchConfigurations(std::forward<FastLaunchConfigurationsT>(value)); return *this;}
137 template<typename FastLaunchConfigurationsT = FastLaunchConfiguration>
138 Distribution& AddFastLaunchConfigurations(FastLaunchConfigurationsT&& value) { m_fastLaunchConfigurationsHasBeenSet = true; m_fastLaunchConfigurations.emplace_back(std::forward<FastLaunchConfigurationsT>(value)); return *this; }
140
142
147 inline const Aws::Vector<SsmParameterConfiguration>& GetSsmParameterConfigurations() const { return m_ssmParameterConfigurations; }
148 inline bool SsmParameterConfigurationsHasBeenSet() const { return m_ssmParameterConfigurationsHasBeenSet; }
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>>
152 Distribution& WithSsmParameterConfigurations(SsmParameterConfigurationsT&& value) { SetSsmParameterConfigurations(std::forward<SsmParameterConfigurationsT>(value)); return *this;}
153 template<typename SsmParameterConfigurationsT = SsmParameterConfiguration>
154 Distribution& AddSsmParameterConfigurations(SsmParameterConfigurationsT&& value) { m_ssmParameterConfigurationsHasBeenSet = true; m_ssmParameterConfigurations.emplace_back(std::forward<SsmParameterConfigurationsT>(value)); return *this; }
156 private:
157
158 Aws::String m_region;
159 bool m_regionHasBeenSet = false;
160
161 AmiDistributionConfiguration m_amiDistributionConfiguration;
162 bool m_amiDistributionConfigurationHasBeenSet = false;
163
164 ContainerDistributionConfiguration m_containerDistributionConfiguration;
165 bool m_containerDistributionConfigurationHasBeenSet = false;
166
167 Aws::Vector<Aws::String> m_licenseConfigurationArns;
168 bool m_licenseConfigurationArnsHasBeenSet = false;
169
170 Aws::Vector<LaunchTemplateConfiguration> m_launchTemplateConfigurations;
171 bool m_launchTemplateConfigurationsHasBeenSet = false;
172
173 S3ExportConfiguration m_s3ExportConfiguration;
174 bool m_s3ExportConfigurationHasBeenSet = false;
175
176 Aws::Vector<FastLaunchConfiguration> m_fastLaunchConfigurations;
177 bool m_fastLaunchConfigurationsHasBeenSet = false;
178
179 Aws::Vector<SsmParameterConfiguration> m_ssmParameterConfigurations;
180 bool m_ssmParameterConfigurationsHasBeenSet = false;
181 };
182
183} // namespace Model
184} // namespace imagebuilder
185} // namespace Aws
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
const AmiDistributionConfiguration & GetAmiDistributionConfiguration() const
void SetSsmParameterConfigurations(SsmParameterConfigurationsT &&value)
Distribution & WithContainerDistributionConfiguration(ContainerDistributionConfigurationT &&value)
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)
const Aws::Vector< SsmParameterConfiguration > & GetSsmParameterConfigurations() const
Distribution & AddSsmParameterConfigurations(SsmParameterConfigurationsT &&value)
void SetContainerDistributionConfiguration(ContainerDistributionConfigurationT &&value)
Distribution & WithLicenseConfigurationArns(LicenseConfigurationArnsT &&value)
const ContainerDistributionConfiguration & GetContainerDistributionConfiguration() const
AWS_IMAGEBUILDER_API Distribution & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() 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)
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