AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
ImageBuilder.h
1
6#pragma once
7#include <aws/appstream/AppStream_EXPORTS.h>
8#include <aws/appstream/model/AccessEndpoint.h>
9#include <aws/appstream/model/DomainJoinInfo.h>
10#include <aws/appstream/model/ImageBuilderState.h>
11#include <aws/appstream/model/ImageBuilderStateChangeReason.h>
12#include <aws/appstream/model/LatestAppstreamAgentVersion.h>
13#include <aws/appstream/model/NetworkAccessConfiguration.h>
14#include <aws/appstream/model/PlatformType.h>
15#include <aws/appstream/model/ResourceError.h>
16#include <aws/appstream/model/VolumeConfig.h>
17#include <aws/appstream/model/VpcConfig.h>
18#include <aws/core/utils/DateTime.h>
19#include <aws/core/utils/memory/stl/AWSString.h>
20#include <aws/core/utils/memory/stl/AWSVector.h>
21
22#include <utility>
23
24namespace Aws {
25namespace Utils {
26namespace Json {
27class JsonValue;
28class JsonView;
29} // namespace Json
30} // namespace Utils
31namespace AppStream {
32namespace Model {
33
41 public:
42 AWS_APPSTREAM_API ImageBuilder() = default;
43 AWS_APPSTREAM_API ImageBuilder(Aws::Utils::Json::JsonView jsonValue);
44 AWS_APPSTREAM_API ImageBuilder& operator=(Aws::Utils::Json::JsonView jsonValue);
45 AWS_APPSTREAM_API Aws::Utils::Json::JsonValue Jsonize() const;
46
48
51 inline const Aws::String& GetName() const { return m_name; }
52 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
53 template <typename NameT = Aws::String>
54 void SetName(NameT&& value) {
55 m_nameHasBeenSet = true;
56 m_name = std::forward<NameT>(value);
57 }
58 template <typename NameT = Aws::String>
59 ImageBuilder& WithName(NameT&& value) {
60 SetName(std::forward<NameT>(value));
61 return *this;
62 }
64
66
69 inline const Aws::String& GetArn() const { return m_arn; }
70 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
71 template <typename ArnT = Aws::String>
72 void SetArn(ArnT&& value) {
73 m_arnHasBeenSet = true;
74 m_arn = std::forward<ArnT>(value);
75 }
76 template <typename ArnT = Aws::String>
77 ImageBuilder& WithArn(ArnT&& value) {
78 SetArn(std::forward<ArnT>(value));
79 return *this;
80 }
82
84
87 inline const Aws::String& GetImageArn() const { return m_imageArn; }
88 inline bool ImageArnHasBeenSet() const { return m_imageArnHasBeenSet; }
89 template <typename ImageArnT = Aws::String>
90 void SetImageArn(ImageArnT&& value) {
91 m_imageArnHasBeenSet = true;
92 m_imageArn = std::forward<ImageArnT>(value);
93 }
94 template <typename ImageArnT = Aws::String>
95 ImageBuilder& WithImageArn(ImageArnT&& value) {
96 SetImageArn(std::forward<ImageArnT>(value));
97 return *this;
98 }
100
102
105 inline const Aws::String& GetDescription() const { return m_description; }
106 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
107 template <typename DescriptionT = Aws::String>
108 void SetDescription(DescriptionT&& value) {
109 m_descriptionHasBeenSet = true;
110 m_description = std::forward<DescriptionT>(value);
111 }
112 template <typename DescriptionT = Aws::String>
113 ImageBuilder& WithDescription(DescriptionT&& value) {
114 SetDescription(std::forward<DescriptionT>(value));
115 return *this;
116 }
118
120
123 inline const Aws::String& GetDisplayName() const { return m_displayName; }
124 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
125 template <typename DisplayNameT = Aws::String>
126 void SetDisplayName(DisplayNameT&& value) {
127 m_displayNameHasBeenSet = true;
128 m_displayName = std::forward<DisplayNameT>(value);
129 }
130 template <typename DisplayNameT = Aws::String>
131 ImageBuilder& WithDisplayName(DisplayNameT&& value) {
132 SetDisplayName(std::forward<DisplayNameT>(value));
133 return *this;
134 }
136
138
141 inline const VpcConfig& GetVpcConfig() const { return m_vpcConfig; }
142 inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
143 template <typename VpcConfigT = VpcConfig>
144 void SetVpcConfig(VpcConfigT&& value) {
145 m_vpcConfigHasBeenSet = true;
146 m_vpcConfig = std::forward<VpcConfigT>(value);
147 }
148 template <typename VpcConfigT = VpcConfig>
149 ImageBuilder& WithVpcConfig(VpcConfigT&& value) {
150 SetVpcConfig(std::forward<VpcConfigT>(value));
151 return *this;
152 }
154
156
190 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
191 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
192 template <typename InstanceTypeT = Aws::String>
193 void SetInstanceType(InstanceTypeT&& value) {
194 m_instanceTypeHasBeenSet = true;
195 m_instanceType = std::forward<InstanceTypeT>(value);
196 }
197 template <typename InstanceTypeT = Aws::String>
198 ImageBuilder& WithInstanceType(InstanceTypeT&& value) {
199 SetInstanceType(std::forward<InstanceTypeT>(value));
200 return *this;
201 }
203
205
208 inline PlatformType GetPlatform() const { return m_platform; }
209 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
210 inline void SetPlatform(PlatformType value) {
211 m_platformHasBeenSet = true;
212 m_platform = value;
213 }
215 SetPlatform(value);
216 return *this;
217 }
219
221
234 inline const Aws::String& GetIamRoleArn() const { return m_iamRoleArn; }
235 inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; }
236 template <typename IamRoleArnT = Aws::String>
237 void SetIamRoleArn(IamRoleArnT&& value) {
238 m_iamRoleArnHasBeenSet = true;
239 m_iamRoleArn = std::forward<IamRoleArnT>(value);
240 }
241 template <typename IamRoleArnT = Aws::String>
242 ImageBuilder& WithIamRoleArn(IamRoleArnT&& value) {
243 SetIamRoleArn(std::forward<IamRoleArnT>(value));
244 return *this;
245 }
247
249
252 inline ImageBuilderState GetState() const { return m_state; }
253 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
254 inline void SetState(ImageBuilderState value) {
255 m_stateHasBeenSet = true;
256 m_state = value;
257 }
259 SetState(value);
260 return *this;
261 }
263
265
268 inline const ImageBuilderStateChangeReason& GetStateChangeReason() const { return m_stateChangeReason; }
269 inline bool StateChangeReasonHasBeenSet() const { return m_stateChangeReasonHasBeenSet; }
270 template <typename StateChangeReasonT = ImageBuilderStateChangeReason>
271 void SetStateChangeReason(StateChangeReasonT&& value) {
272 m_stateChangeReasonHasBeenSet = true;
273 m_stateChangeReason = std::forward<StateChangeReasonT>(value);
274 }
275 template <typename StateChangeReasonT = ImageBuilderStateChangeReason>
276 ImageBuilder& WithStateChangeReason(StateChangeReasonT&& value) {
277 SetStateChangeReason(std::forward<StateChangeReasonT>(value));
278 return *this;
279 }
281
283
286 inline const Aws::Utils::DateTime& GetCreatedTime() const { return m_createdTime; }
287 inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; }
288 template <typename CreatedTimeT = Aws::Utils::DateTime>
289 void SetCreatedTime(CreatedTimeT&& value) {
290 m_createdTimeHasBeenSet = true;
291 m_createdTime = std::forward<CreatedTimeT>(value);
292 }
293 template <typename CreatedTimeT = Aws::Utils::DateTime>
294 ImageBuilder& WithCreatedTime(CreatedTimeT&& value) {
295 SetCreatedTime(std::forward<CreatedTimeT>(value));
296 return *this;
297 }
299
301
304 inline bool GetEnableDefaultInternetAccess() const { return m_enableDefaultInternetAccess; }
305 inline bool EnableDefaultInternetAccessHasBeenSet() const { return m_enableDefaultInternetAccessHasBeenSet; }
306 inline void SetEnableDefaultInternetAccess(bool value) {
307 m_enableDefaultInternetAccessHasBeenSet = true;
308 m_enableDefaultInternetAccess = value;
309 }
312 return *this;
313 }
315
317
321 inline const DomainJoinInfo& GetDomainJoinInfo() const { return m_domainJoinInfo; }
322 inline bool DomainJoinInfoHasBeenSet() const { return m_domainJoinInfoHasBeenSet; }
323 template <typename DomainJoinInfoT = DomainJoinInfo>
324 void SetDomainJoinInfo(DomainJoinInfoT&& value) {
325 m_domainJoinInfoHasBeenSet = true;
326 m_domainJoinInfo = std::forward<DomainJoinInfoT>(value);
327 }
328 template <typename DomainJoinInfoT = DomainJoinInfo>
329 ImageBuilder& WithDomainJoinInfo(DomainJoinInfoT&& value) {
330 SetDomainJoinInfo(std::forward<DomainJoinInfoT>(value));
331 return *this;
332 }
334
336
337 inline const NetworkAccessConfiguration& GetNetworkAccessConfiguration() const { return m_networkAccessConfiguration; }
338 inline bool NetworkAccessConfigurationHasBeenSet() const { return m_networkAccessConfigurationHasBeenSet; }
339 template <typename NetworkAccessConfigurationT = NetworkAccessConfiguration>
340 void SetNetworkAccessConfiguration(NetworkAccessConfigurationT&& value) {
341 m_networkAccessConfigurationHasBeenSet = true;
342 m_networkAccessConfiguration = std::forward<NetworkAccessConfigurationT>(value);
343 }
344 template <typename NetworkAccessConfigurationT = NetworkAccessConfiguration>
345 ImageBuilder& WithNetworkAccessConfiguration(NetworkAccessConfigurationT&& value) {
346 SetNetworkAccessConfiguration(std::forward<NetworkAccessConfigurationT>(value));
347 return *this;
348 }
350
352
355 inline const Aws::Vector<ResourceError>& GetImageBuilderErrors() const { return m_imageBuilderErrors; }
356 inline bool ImageBuilderErrorsHasBeenSet() const { return m_imageBuilderErrorsHasBeenSet; }
357 template <typename ImageBuilderErrorsT = Aws::Vector<ResourceError>>
358 void SetImageBuilderErrors(ImageBuilderErrorsT&& value) {
359 m_imageBuilderErrorsHasBeenSet = true;
360 m_imageBuilderErrors = std::forward<ImageBuilderErrorsT>(value);
361 }
362 template <typename ImageBuilderErrorsT = Aws::Vector<ResourceError>>
363 ImageBuilder& WithImageBuilderErrors(ImageBuilderErrorsT&& value) {
364 SetImageBuilderErrors(std::forward<ImageBuilderErrorsT>(value));
365 return *this;
366 }
367 template <typename ImageBuilderErrorsT = ResourceError>
368 ImageBuilder& AddImageBuilderErrors(ImageBuilderErrorsT&& value) {
369 m_imageBuilderErrorsHasBeenSet = true;
370 m_imageBuilderErrors.emplace_back(std::forward<ImageBuilderErrorsT>(value));
371 return *this;
372 }
374
376
380 inline const Aws::String& GetAppstreamAgentVersion() const { return m_appstreamAgentVersion; }
381 inline bool AppstreamAgentVersionHasBeenSet() const { return m_appstreamAgentVersionHasBeenSet; }
382 template <typename AppstreamAgentVersionT = Aws::String>
383 void SetAppstreamAgentVersion(AppstreamAgentVersionT&& value) {
384 m_appstreamAgentVersionHasBeenSet = true;
385 m_appstreamAgentVersion = std::forward<AppstreamAgentVersionT>(value);
386 }
387 template <typename AppstreamAgentVersionT = Aws::String>
388 ImageBuilder& WithAppstreamAgentVersion(AppstreamAgentVersionT&& value) {
389 SetAppstreamAgentVersion(std::forward<AppstreamAgentVersionT>(value));
390 return *this;
391 }
393
395
400 inline const Aws::Vector<AccessEndpoint>& GetAccessEndpoints() const { return m_accessEndpoints; }
401 inline bool AccessEndpointsHasBeenSet() const { return m_accessEndpointsHasBeenSet; }
402 template <typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
403 void SetAccessEndpoints(AccessEndpointsT&& value) {
404 m_accessEndpointsHasBeenSet = true;
405 m_accessEndpoints = std::forward<AccessEndpointsT>(value);
406 }
407 template <typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
408 ImageBuilder& WithAccessEndpoints(AccessEndpointsT&& value) {
409 SetAccessEndpoints(std::forward<AccessEndpointsT>(value));
410 return *this;
411 }
412 template <typename AccessEndpointsT = AccessEndpoint>
413 ImageBuilder& AddAccessEndpoints(AccessEndpointsT&& value) {
414 m_accessEndpointsHasBeenSet = true;
415 m_accessEndpoints.emplace_back(std::forward<AccessEndpointsT>(value));
416 return *this;
417 }
419
421
425 inline const VolumeConfig& GetRootVolumeConfig() const { return m_rootVolumeConfig; }
426 inline bool RootVolumeConfigHasBeenSet() const { return m_rootVolumeConfigHasBeenSet; }
427 template <typename RootVolumeConfigT = VolumeConfig>
428 void SetRootVolumeConfig(RootVolumeConfigT&& value) {
429 m_rootVolumeConfigHasBeenSet = true;
430 m_rootVolumeConfig = std::forward<RootVolumeConfigT>(value);
431 }
432 template <typename RootVolumeConfigT = VolumeConfig>
433 ImageBuilder& WithRootVolumeConfig(RootVolumeConfigT&& value) {
434 SetRootVolumeConfig(std::forward<RootVolumeConfigT>(value));
435 return *this;
436 }
438
440
444 inline LatestAppstreamAgentVersion GetLatestAppstreamAgentVersion() const { return m_latestAppstreamAgentVersion; }
445 inline bool LatestAppstreamAgentVersionHasBeenSet() const { return m_latestAppstreamAgentVersionHasBeenSet; }
447 m_latestAppstreamAgentVersionHasBeenSet = true;
448 m_latestAppstreamAgentVersion = value;
449 }
452 return *this;
453 }
455 private:
456 Aws::String m_name;
457
458 Aws::String m_arn;
459
460 Aws::String m_imageArn;
461
462 Aws::String m_description;
463
464 Aws::String m_displayName;
465
466 VpcConfig m_vpcConfig;
467
468 Aws::String m_instanceType;
469
471
472 Aws::String m_iamRoleArn;
473
475
476 ImageBuilderStateChangeReason m_stateChangeReason;
477
478 Aws::Utils::DateTime m_createdTime{};
479
480 bool m_enableDefaultInternetAccess{false};
481
482 DomainJoinInfo m_domainJoinInfo;
483
484 NetworkAccessConfiguration m_networkAccessConfiguration;
485
486 Aws::Vector<ResourceError> m_imageBuilderErrors;
487
488 Aws::String m_appstreamAgentVersion;
489
490 Aws::Vector<AccessEndpoint> m_accessEndpoints;
491
492 VolumeConfig m_rootVolumeConfig;
493
495 bool m_nameHasBeenSet = false;
496 bool m_arnHasBeenSet = false;
497 bool m_imageArnHasBeenSet = false;
498 bool m_descriptionHasBeenSet = false;
499 bool m_displayNameHasBeenSet = false;
500 bool m_vpcConfigHasBeenSet = false;
501 bool m_instanceTypeHasBeenSet = false;
502 bool m_platformHasBeenSet = false;
503 bool m_iamRoleArnHasBeenSet = false;
504 bool m_stateHasBeenSet = false;
505 bool m_stateChangeReasonHasBeenSet = false;
506 bool m_createdTimeHasBeenSet = false;
507 bool m_enableDefaultInternetAccessHasBeenSet = false;
508 bool m_domainJoinInfoHasBeenSet = false;
509 bool m_networkAccessConfigurationHasBeenSet = false;
510 bool m_imageBuilderErrorsHasBeenSet = false;
511 bool m_appstreamAgentVersionHasBeenSet = false;
512 bool m_accessEndpointsHasBeenSet = false;
513 bool m_rootVolumeConfigHasBeenSet = false;
514 bool m_latestAppstreamAgentVersionHasBeenSet = false;
515};
516
517} // namespace Model
518} // namespace AppStream
519} // namespace Aws
void SetLatestAppstreamAgentVersion(LatestAppstreamAgentVersion value)
void SetCreatedTime(CreatedTimeT &&value)
const Aws::Utils::DateTime & GetCreatedTime() const
ImageBuilder & WithImageArn(ImageArnT &&value)
void SetImageArn(ImageArnT &&value)
const Aws::Vector< ResourceError > & GetImageBuilderErrors() const
void SetRootVolumeConfig(RootVolumeConfigT &&value)
ImageBuilder & WithVpcConfig(VpcConfigT &&value)
void SetState(ImageBuilderState value)
const Aws::String & GetIamRoleArn() const
AWS_APPSTREAM_API ImageBuilder(Aws::Utils::Json::JsonView jsonValue)
void SetAccessEndpoints(AccessEndpointsT &&value)
AWS_APPSTREAM_API Aws::Utils::Json::JsonValue Jsonize() const
ImageBuilder & WithRootVolumeConfig(RootVolumeConfigT &&value)
ImageBuilder & WithArn(ArnT &&value)
void SetStateChangeReason(StateChangeReasonT &&value)
ImageBuilder & WithImageBuilderErrors(ImageBuilderErrorsT &&value)
ImageBuilder & WithName(NameT &&value)
ImageBuilder & AddImageBuilderErrors(ImageBuilderErrorsT &&value)
LatestAppstreamAgentVersion GetLatestAppstreamAgentVersion() const
const Aws::String & GetImageArn() const
const VpcConfig & GetVpcConfig() const
void SetDescription(DescriptionT &&value)
const ImageBuilderStateChangeReason & GetStateChangeReason() const
void SetNetworkAccessConfiguration(NetworkAccessConfigurationT &&value)
ImageBuilder & WithEnableDefaultInternetAccess(bool value)
const DomainJoinInfo & GetDomainJoinInfo() const
ImageBuilder & WithDomainJoinInfo(DomainJoinInfoT &&value)
void SetDisplayName(DisplayNameT &&value)
ImageBuilder & WithAccessEndpoints(AccessEndpointsT &&value)
const Aws::String & GetName() const
void SetInstanceType(InstanceTypeT &&value)
void SetAppstreamAgentVersion(AppstreamAgentVersionT &&value)
const Aws::String & GetDescription() const
void SetPlatform(PlatformType value)
ImageBuilder & WithNetworkAccessConfiguration(NetworkAccessConfigurationT &&value)
ImageBuilder & WithDisplayName(DisplayNameT &&value)
ImageBuilder & WithPlatform(PlatformType value)
ImageBuilder & WithCreatedTime(CreatedTimeT &&value)
ImageBuilderState GetState() const
ImageBuilder & WithState(ImageBuilderState value)
const Aws::String & GetDisplayName() const
ImageBuilder & WithDescription(DescriptionT &&value)
const Aws::String & GetInstanceType() const
ImageBuilder & WithIamRoleArn(IamRoleArnT &&value)
const NetworkAccessConfiguration & GetNetworkAccessConfiguration() const
ImageBuilder & WithAppstreamAgentVersion(AppstreamAgentVersionT &&value)
AWS_APPSTREAM_API ImageBuilder & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetAppstreamAgentVersion() const
AWS_APPSTREAM_API ImageBuilder()=default
ImageBuilder & WithInstanceType(InstanceTypeT &&value)
void SetDomainJoinInfo(DomainJoinInfoT &&value)
void SetEnableDefaultInternetAccess(bool value)
ImageBuilder & WithStateChangeReason(StateChangeReasonT &&value)
void SetImageBuilderErrors(ImageBuilderErrorsT &&value)
const Aws::Vector< AccessEndpoint > & GetAccessEndpoints() const
const Aws::String & GetArn() const
void SetVpcConfig(VpcConfigT &&value)
void SetIamRoleArn(IamRoleArnT &&value)
ImageBuilder & WithLatestAppstreamAgentVersion(LatestAppstreamAgentVersion value)
ImageBuilder & AddAccessEndpoints(AccessEndpointsT &&value)
const VolumeConfig & GetRootVolumeConfig() 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