AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
ComponentVersion.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/Platform.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/imagebuilder/model/ComponentType.h>
12#include <aws/imagebuilder/model/ComponentStatus.h>
13#include <aws/imagebuilder/model/ProductCodeListItem.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace imagebuilder
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_IMAGEBUILDER_API ComponentVersion() = default;
41 AWS_IMAGEBUILDER_API ComponentVersion(Aws::Utils::Json::JsonView jsonValue);
42 AWS_IMAGEBUILDER_API ComponentVersion& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
58 inline const Aws::String& GetArn() const { return m_arn; }
59 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
60 template<typename ArnT = Aws::String>
61 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
62 template<typename ArnT = Aws::String>
63 ComponentVersion& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
65
67
70 inline const Aws::String& GetName() const { return m_name; }
71 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
72 template<typename NameT = Aws::String>
73 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
74 template<typename NameT = Aws::String>
75 ComponentVersion& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
77
79
95 inline const Aws::String& GetVersion() const { return m_version; }
96 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
97 template<typename VersionT = Aws::String>
98 void SetVersion(VersionT&& value) { m_versionHasBeenSet = true; m_version = std::forward<VersionT>(value); }
99 template<typename VersionT = Aws::String>
100 ComponentVersion& WithVersion(VersionT&& value) { SetVersion(std::forward<VersionT>(value)); return *this;}
102
104
107 inline const Aws::String& GetDescription() const { return m_description; }
108 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
109 template<typename DescriptionT = Aws::String>
110 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
111 template<typename DescriptionT = Aws::String>
112 ComponentVersion& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
114
116
119 inline Platform GetPlatform() const { return m_platform; }
120 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
121 inline void SetPlatform(Platform value) { m_platformHasBeenSet = true; m_platform = value; }
122 inline ComponentVersion& WithPlatform(Platform value) { SetPlatform(value); return *this;}
124
126
131 inline const Aws::Vector<Aws::String>& GetSupportedOsVersions() const { return m_supportedOsVersions; }
132 inline bool SupportedOsVersionsHasBeenSet() const { return m_supportedOsVersionsHasBeenSet; }
133 template<typename SupportedOsVersionsT = Aws::Vector<Aws::String>>
134 void SetSupportedOsVersions(SupportedOsVersionsT&& value) { m_supportedOsVersionsHasBeenSet = true; m_supportedOsVersions = std::forward<SupportedOsVersionsT>(value); }
135 template<typename SupportedOsVersionsT = Aws::Vector<Aws::String>>
136 ComponentVersion& WithSupportedOsVersions(SupportedOsVersionsT&& value) { SetSupportedOsVersions(std::forward<SupportedOsVersionsT>(value)); return *this;}
137 template<typename SupportedOsVersionsT = Aws::String>
138 ComponentVersion& AddSupportedOsVersions(SupportedOsVersionsT&& value) { m_supportedOsVersionsHasBeenSet = true; m_supportedOsVersions.emplace_back(std::forward<SupportedOsVersionsT>(value)); return *this; }
140
142
146 inline ComponentType GetType() const { return m_type; }
147 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
148 inline void SetType(ComponentType value) { m_typeHasBeenSet = true; m_type = value; }
149 inline ComponentVersion& WithType(ComponentType value) { SetType(value); return *this;}
151
153
156 inline const Aws::String& GetOwner() const { return m_owner; }
157 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; }
158 template<typename OwnerT = Aws::String>
159 void SetOwner(OwnerT&& value) { m_ownerHasBeenSet = true; m_owner = std::forward<OwnerT>(value); }
160 template<typename OwnerT = Aws::String>
161 ComponentVersion& WithOwner(OwnerT&& value) { SetOwner(std::forward<OwnerT>(value)); return *this;}
163
165
168 inline const Aws::String& GetDateCreated() const { return m_dateCreated; }
169 inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }
170 template<typename DateCreatedT = Aws::String>
171 void SetDateCreated(DateCreatedT&& value) { m_dateCreatedHasBeenSet = true; m_dateCreated = std::forward<DateCreatedT>(value); }
172 template<typename DateCreatedT = Aws::String>
173 ComponentVersion& WithDateCreated(DateCreatedT&& value) { SetDateCreated(std::forward<DateCreatedT>(value)); return *this;}
175
177
180 inline ComponentStatus GetStatus() const { return m_status; }
181 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
182 inline void SetStatus(ComponentStatus value) { m_statusHasBeenSet = true; m_status = value; }
183 inline ComponentVersion& WithStatus(ComponentStatus value) { SetStatus(value); return *this;}
185
187
191 inline const Aws::Vector<ProductCodeListItem>& GetProductCodes() const { return m_productCodes; }
192 inline bool ProductCodesHasBeenSet() const { return m_productCodesHasBeenSet; }
193 template<typename ProductCodesT = Aws::Vector<ProductCodeListItem>>
194 void SetProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes = std::forward<ProductCodesT>(value); }
195 template<typename ProductCodesT = Aws::Vector<ProductCodeListItem>>
196 ComponentVersion& WithProductCodes(ProductCodesT&& value) { SetProductCodes(std::forward<ProductCodesT>(value)); return *this;}
197 template<typename ProductCodesT = ProductCodeListItem>
198 ComponentVersion& AddProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes.emplace_back(std::forward<ProductCodesT>(value)); return *this; }
200 private:
201
202 Aws::String m_arn;
203 bool m_arnHasBeenSet = false;
204
205 Aws::String m_name;
206 bool m_nameHasBeenSet = false;
207
208 Aws::String m_version;
209 bool m_versionHasBeenSet = false;
210
211 Aws::String m_description;
212 bool m_descriptionHasBeenSet = false;
213
214 Platform m_platform{Platform::NOT_SET};
215 bool m_platformHasBeenSet = false;
216
217 Aws::Vector<Aws::String> m_supportedOsVersions;
218 bool m_supportedOsVersionsHasBeenSet = false;
219
221 bool m_typeHasBeenSet = false;
222
223 Aws::String m_owner;
224 bool m_ownerHasBeenSet = false;
225
226 Aws::String m_dateCreated;
227 bool m_dateCreatedHasBeenSet = false;
228
230 bool m_statusHasBeenSet = false;
231
233 bool m_productCodesHasBeenSet = false;
234 };
235
236} // namespace Model
237} // namespace imagebuilder
238} // namespace Aws
ComponentVersion & WithProductCodes(ProductCodesT &&value)
const Aws::Vector< ProductCodeListItem > & GetProductCodes() const
ComponentVersion & AddSupportedOsVersions(SupportedOsVersionsT &&value)
AWS_IMAGEBUILDER_API ComponentVersion()=default
void SetSupportedOsVersions(SupportedOsVersionsT &&value)
ComponentVersion & WithDateCreated(DateCreatedT &&value)
ComponentVersion & WithType(ComponentType value)
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
ComponentVersion & WithDescription(DescriptionT &&value)
ComponentVersion & WithVersion(VersionT &&value)
AWS_IMAGEBUILDER_API ComponentVersion & operator=(Aws::Utils::Json::JsonView jsonValue)
ComponentVersion & WithStatus(ComponentStatus value)
ComponentVersion & WithOwner(OwnerT &&value)
ComponentVersion & AddProductCodes(ProductCodesT &&value)
ComponentVersion & WithName(NameT &&value)
ComponentVersion & WithPlatform(Platform value)
const Aws::Vector< Aws::String > & GetSupportedOsVersions() const
ComponentVersion & WithArn(ArnT &&value)
AWS_IMAGEBUILDER_API ComponentVersion(Aws::Utils::Json::JsonView jsonValue)
void SetProductCodes(ProductCodesT &&value)
ComponentVersion & WithSupportedOsVersions(SupportedOsVersionsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue