AWS SDK for C++

AWS SDK for C++ Version 1.11.846

Loading...
Searching...
No Matches
Image.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/ArchitectureValues.h>
12#include <aws/ec2/model/BlockDeviceMapping.h>
13#include <aws/ec2/model/BootModeValues.h>
14#include <aws/ec2/model/DeviceType.h>
15#include <aws/ec2/model/HypervisorType.h>
16#include <aws/ec2/model/ImageState.h>
17#include <aws/ec2/model/ImageTypeValues.h>
18#include <aws/ec2/model/ImageWatermark.h>
19#include <aws/ec2/model/ImdsSupportValues.h>
20#include <aws/ec2/model/PlatformValues.h>
21#include <aws/ec2/model/ProductCode.h>
22#include <aws/ec2/model/StateReason.h>
23#include <aws/ec2/model/Tag.h>
24#include <aws/ec2/model/TpmSupportValues.h>
25#include <aws/ec2/model/VirtualizationType.h>
26
27#include <utility>
28
29namespace Aws {
30namespace Utils {
31namespace Xml {
32class XmlNode;
33} // namespace Xml
34} // namespace Utils
35namespace EC2 {
36namespace Model {
37
43class Image {
44 public:
45 AWS_EC2_API Image() = default;
46 AWS_EC2_API Image(const Aws::Utils::Xml::XmlNode& xmlNode);
47 AWS_EC2_API Image& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
48
49 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
50 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
51
53
59 inline const Aws::String& GetPlatformDetails() const { return m_platformDetails; }
60 inline bool PlatformDetailsHasBeenSet() const { return m_platformDetailsHasBeenSet; }
61 template <typename PlatformDetailsT = Aws::String>
62 void SetPlatformDetails(PlatformDetailsT&& value) {
63 m_platformDetailsHasBeenSet = true;
64 m_platformDetails = std::forward<PlatformDetailsT>(value);
65 }
66 template <typename PlatformDetailsT = Aws::String>
67 Image& WithPlatformDetails(PlatformDetailsT&& value) {
68 SetPlatformDetails(std::forward<PlatformDetailsT>(value));
69 return *this;
70 }
72
74
88 inline const Aws::String& GetUsageOperation() const { return m_usageOperation; }
89 inline bool UsageOperationHasBeenSet() const { return m_usageOperationHasBeenSet; }
90 template <typename UsageOperationT = Aws::String>
91 void SetUsageOperation(UsageOperationT&& value) {
92 m_usageOperationHasBeenSet = true;
93 m_usageOperation = std::forward<UsageOperationT>(value);
94 }
95 template <typename UsageOperationT = Aws::String>
96 Image& WithUsageOperation(UsageOperationT&& value) {
97 SetUsageOperation(std::forward<UsageOperationT>(value));
98 return *this;
99 }
101
103
106 inline const Aws::Vector<BlockDeviceMapping>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
107 inline bool BlockDeviceMappingsHasBeenSet() const { return m_blockDeviceMappingsHasBeenSet; }
108 template <typename BlockDeviceMappingsT = Aws::Vector<BlockDeviceMapping>>
109 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) {
110 m_blockDeviceMappingsHasBeenSet = true;
111 m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value);
112 }
113 template <typename BlockDeviceMappingsT = Aws::Vector<BlockDeviceMapping>>
114 Image& WithBlockDeviceMappings(BlockDeviceMappingsT&& value) {
115 SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value));
116 return *this;
117 }
118 template <typename BlockDeviceMappingsT = BlockDeviceMapping>
119 Image& AddBlockDeviceMappings(BlockDeviceMappingsT&& value) {
120 m_blockDeviceMappingsHasBeenSet = true;
121 m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
122 return *this;
123 }
125
127
130 inline const Aws::String& GetDescription() const { return m_description; }
131 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
132 template <typename DescriptionT = Aws::String>
133 void SetDescription(DescriptionT&& value) {
134 m_descriptionHasBeenSet = true;
135 m_description = std::forward<DescriptionT>(value);
136 }
137 template <typename DescriptionT = Aws::String>
138 Image& WithDescription(DescriptionT&& value) {
139 SetDescription(std::forward<DescriptionT>(value));
140 return *this;
141 }
143
145
148 inline bool GetEnaSupport() const { return m_enaSupport; }
149 inline bool EnaSupportHasBeenSet() const { return m_enaSupportHasBeenSet; }
150 inline void SetEnaSupport(bool value) {
151 m_enaSupportHasBeenSet = true;
152 m_enaSupport = value;
153 }
154 inline Image& WithEnaSupport(bool value) {
155 SetEnaSupport(value);
156 return *this;
157 }
159
161
165 inline HypervisorType GetHypervisor() const { return m_hypervisor; }
166 inline bool HypervisorHasBeenSet() const { return m_hypervisorHasBeenSet; }
167 inline void SetHypervisor(HypervisorType value) {
168 m_hypervisorHasBeenSet = true;
169 m_hypervisor = value;
170 }
172 SetHypervisor(value);
173 return *this;
174 }
176
178
182 inline const Aws::String& GetImageOwnerAlias() const { return m_imageOwnerAlias; }
183 inline bool ImageOwnerAliasHasBeenSet() const { return m_imageOwnerAliasHasBeenSet; }
184 template <typename ImageOwnerAliasT = Aws::String>
185 void SetImageOwnerAlias(ImageOwnerAliasT&& value) {
186 m_imageOwnerAliasHasBeenSet = true;
187 m_imageOwnerAlias = std::forward<ImageOwnerAliasT>(value);
188 }
189 template <typename ImageOwnerAliasT = Aws::String>
190 Image& WithImageOwnerAlias(ImageOwnerAliasT&& value) {
191 SetImageOwnerAlias(std::forward<ImageOwnerAliasT>(value));
192 return *this;
193 }
195
197
200 inline const Aws::String& GetName() const { return m_name; }
201 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
202 template <typename NameT = Aws::String>
203 void SetName(NameT&& value) {
204 m_nameHasBeenSet = true;
205 m_name = std::forward<NameT>(value);
206 }
207 template <typename NameT = Aws::String>
208 Image& WithName(NameT&& value) {
209 SetName(std::forward<NameT>(value));
210 return *this;
211 }
213
215
219 inline const Aws::String& GetRootDeviceName() const { return m_rootDeviceName; }
220 inline bool RootDeviceNameHasBeenSet() const { return m_rootDeviceNameHasBeenSet; }
221 template <typename RootDeviceNameT = Aws::String>
222 void SetRootDeviceName(RootDeviceNameT&& value) {
223 m_rootDeviceNameHasBeenSet = true;
224 m_rootDeviceName = std::forward<RootDeviceNameT>(value);
225 }
226 template <typename RootDeviceNameT = Aws::String>
227 Image& WithRootDeviceName(RootDeviceNameT&& value) {
228 SetRootDeviceName(std::forward<RootDeviceNameT>(value));
229 return *this;
230 }
232
234
238 inline DeviceType GetRootDeviceType() const { return m_rootDeviceType; }
239 inline bool RootDeviceTypeHasBeenSet() const { return m_rootDeviceTypeHasBeenSet; }
240 inline void SetRootDeviceType(DeviceType value) {
241 m_rootDeviceTypeHasBeenSet = true;
242 m_rootDeviceType = value;
243 }
245 SetRootDeviceType(value);
246 return *this;
247 }
249
251
255 inline const Aws::String& GetSriovNetSupport() const { return m_sriovNetSupport; }
256 inline bool SriovNetSupportHasBeenSet() const { return m_sriovNetSupportHasBeenSet; }
257 template <typename SriovNetSupportT = Aws::String>
258 void SetSriovNetSupport(SriovNetSupportT&& value) {
259 m_sriovNetSupportHasBeenSet = true;
260 m_sriovNetSupport = std::forward<SriovNetSupportT>(value);
261 }
262 template <typename SriovNetSupportT = Aws::String>
263 Image& WithSriovNetSupport(SriovNetSupportT&& value) {
264 SetSriovNetSupport(std::forward<SriovNetSupportT>(value));
265 return *this;
266 }
268
270
273 inline const StateReason& GetStateReason() const { return m_stateReason; }
274 inline bool StateReasonHasBeenSet() const { return m_stateReasonHasBeenSet; }
275 template <typename StateReasonT = StateReason>
276 void SetStateReason(StateReasonT&& value) {
277 m_stateReasonHasBeenSet = true;
278 m_stateReason = std::forward<StateReasonT>(value);
279 }
280 template <typename StateReasonT = StateReason>
281 Image& WithStateReason(StateReasonT&& value) {
282 SetStateReason(std::forward<StateReasonT>(value));
283 return *this;
284 }
286
288
291 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
292 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
293 template <typename TagsT = Aws::Vector<Tag>>
294 void SetTags(TagsT&& value) {
295 m_tagsHasBeenSet = true;
296 m_tags = std::forward<TagsT>(value);
297 }
298 template <typename TagsT = Aws::Vector<Tag>>
299 Image& WithTags(TagsT&& value) {
300 SetTags(std::forward<TagsT>(value));
301 return *this;
302 }
303 template <typename TagsT = Tag>
304 Image& AddTags(TagsT&& value) {
305 m_tagsHasBeenSet = true;
306 m_tags.emplace_back(std::forward<TagsT>(value));
307 return *this;
308 }
310
312
315 inline VirtualizationType GetVirtualizationType() const { return m_virtualizationType; }
316 inline bool VirtualizationTypeHasBeenSet() const { return m_virtualizationTypeHasBeenSet; }
318 m_virtualizationTypeHasBeenSet = true;
319 m_virtualizationType = value;
320 }
323 return *this;
324 }
326
328
334 inline BootModeValues GetBootMode() const { return m_bootMode; }
335 inline bool BootModeHasBeenSet() const { return m_bootModeHasBeenSet; }
336 inline void SetBootMode(BootModeValues value) {
337 m_bootModeHasBeenSet = true;
338 m_bootMode = value;
339 }
341 SetBootMode(value);
342 return *this;
343 }
345
347
353 inline TpmSupportValues GetTpmSupport() const { return m_tpmSupport; }
354 inline bool TpmSupportHasBeenSet() const { return m_tpmSupportHasBeenSet; }
355 inline void SetTpmSupport(TpmSupportValues value) {
356 m_tpmSupportHasBeenSet = true;
357 m_tpmSupport = value;
358 }
360 SetTpmSupport(value);
361 return *this;
362 }
364
366
371 inline const Aws::String& GetDeprecationTime() const { return m_deprecationTime; }
372 inline bool DeprecationTimeHasBeenSet() const { return m_deprecationTimeHasBeenSet; }
373 template <typename DeprecationTimeT = Aws::String>
374 void SetDeprecationTime(DeprecationTimeT&& value) {
375 m_deprecationTimeHasBeenSet = true;
376 m_deprecationTime = std::forward<DeprecationTimeT>(value);
377 }
378 template <typename DeprecationTimeT = Aws::String>
379 Image& WithDeprecationTime(DeprecationTimeT&& value) {
380 SetDeprecationTime(std::forward<DeprecationTimeT>(value));
381 return *this;
382 }
384
386
396 inline ImdsSupportValues GetImdsSupport() const { return m_imdsSupport; }
397 inline bool ImdsSupportHasBeenSet() const { return m_imdsSupportHasBeenSet; }
399 m_imdsSupportHasBeenSet = true;
400 m_imdsSupport = value;
401 }
403 SetImdsSupport(value);
404 return *this;
405 }
407
409
415 inline const Aws::String& GetSourceInstanceId() const { return m_sourceInstanceId; }
416 inline bool SourceInstanceIdHasBeenSet() const { return m_sourceInstanceIdHasBeenSet; }
417 template <typename SourceInstanceIdT = Aws::String>
418 void SetSourceInstanceId(SourceInstanceIdT&& value) {
419 m_sourceInstanceIdHasBeenSet = true;
420 m_sourceInstanceId = std::forward<SourceInstanceIdT>(value);
421 }
422 template <typename SourceInstanceIdT = Aws::String>
423 Image& WithSourceInstanceId(SourceInstanceIdT&& value) {
424 SetSourceInstanceId(std::forward<SourceInstanceIdT>(value));
425 return *this;
426 }
428
430
433 inline const Aws::String& GetDeregistrationProtection() const { return m_deregistrationProtection; }
434 inline bool DeregistrationProtectionHasBeenSet() const { return m_deregistrationProtectionHasBeenSet; }
435 template <typename DeregistrationProtectionT = Aws::String>
436 void SetDeregistrationProtection(DeregistrationProtectionT&& value) {
437 m_deregistrationProtectionHasBeenSet = true;
438 m_deregistrationProtection = std::forward<DeregistrationProtectionT>(value);
439 }
440 template <typename DeregistrationProtectionT = Aws::String>
441 Image& WithDeregistrationProtection(DeregistrationProtectionT&& value) {
442 SetDeregistrationProtection(std::forward<DeregistrationProtectionT>(value));
443 return *this;
444 }
446
448
455 inline const Aws::String& GetLastLaunchedTime() const { return m_lastLaunchedTime; }
456 inline bool LastLaunchedTimeHasBeenSet() const { return m_lastLaunchedTimeHasBeenSet; }
457 template <typename LastLaunchedTimeT = Aws::String>
458 void SetLastLaunchedTime(LastLaunchedTimeT&& value) {
459 m_lastLaunchedTimeHasBeenSet = true;
460 m_lastLaunchedTime = std::forward<LastLaunchedTimeT>(value);
461 }
462 template <typename LastLaunchedTimeT = Aws::String>
463 Image& WithLastLaunchedTime(LastLaunchedTimeT&& value) {
464 SetLastLaunchedTime(std::forward<LastLaunchedTimeT>(value));
465 return *this;
466 }
468
470
481 inline bool GetImageAllowed() const { return m_imageAllowed; }
482 inline bool ImageAllowedHasBeenSet() const { return m_imageAllowedHasBeenSet; }
483 inline void SetImageAllowed(bool value) {
484 m_imageAllowedHasBeenSet = true;
485 m_imageAllowed = value;
486 }
487 inline Image& WithImageAllowed(bool value) {
488 SetImageAllowed(value);
489 return *this;
490 }
492
494
497 inline const Aws::String& GetSourceImageId() const { return m_sourceImageId; }
498 inline bool SourceImageIdHasBeenSet() const { return m_sourceImageIdHasBeenSet; }
499 template <typename SourceImageIdT = Aws::String>
500 void SetSourceImageId(SourceImageIdT&& value) {
501 m_sourceImageIdHasBeenSet = true;
502 m_sourceImageId = std::forward<SourceImageIdT>(value);
503 }
504 template <typename SourceImageIdT = Aws::String>
505 Image& WithSourceImageId(SourceImageIdT&& value) {
506 SetSourceImageId(std::forward<SourceImageIdT>(value));
507 return *this;
508 }
510
512
515 inline const Aws::String& GetSourceImageRegion() const { return m_sourceImageRegion; }
516 inline bool SourceImageRegionHasBeenSet() const { return m_sourceImageRegionHasBeenSet; }
517 template <typename SourceImageRegionT = Aws::String>
518 void SetSourceImageRegion(SourceImageRegionT&& value) {
519 m_sourceImageRegionHasBeenSet = true;
520 m_sourceImageRegion = std::forward<SourceImageRegionT>(value);
521 }
522 template <typename SourceImageRegionT = Aws::String>
523 Image& WithSourceImageRegion(SourceImageRegionT&& value) {
524 SetSourceImageRegion(std::forward<SourceImageRegionT>(value));
525 return *this;
526 }
528
530
536 inline bool GetFreeTierEligible() const { return m_freeTierEligible; }
537 inline bool FreeTierEligibleHasBeenSet() const { return m_freeTierEligibleHasBeenSet; }
538 inline void SetFreeTierEligible(bool value) {
539 m_freeTierEligibleHasBeenSet = true;
540 m_freeTierEligible = value;
541 }
542 inline Image& WithFreeTierEligible(bool value) {
543 SetFreeTierEligible(value);
544 return *this;
545 }
547
549
553 inline const Aws::String& GetPublicSsmParameterName() const { return m_publicSsmParameterName; }
554 inline bool PublicSsmParameterNameHasBeenSet() const { return m_publicSsmParameterNameHasBeenSet; }
555 template <typename PublicSsmParameterNameT = Aws::String>
556 void SetPublicSsmParameterName(PublicSsmParameterNameT&& value) {
557 m_publicSsmParameterNameHasBeenSet = true;
558 m_publicSsmParameterName = std::forward<PublicSsmParameterNameT>(value);
559 }
560 template <typename PublicSsmParameterNameT = Aws::String>
561 Image& WithPublicSsmParameterName(PublicSsmParameterNameT&& value) {
562 SetPublicSsmParameterName(std::forward<PublicSsmParameterNameT>(value));
563 return *this;
564 }
566
568
571 inline const Aws::Vector<ImageWatermark>& GetImageWatermarks() const { return m_imageWatermarks; }
572 inline bool ImageWatermarksHasBeenSet() const { return m_imageWatermarksHasBeenSet; }
573 template <typename ImageWatermarksT = Aws::Vector<ImageWatermark>>
574 void SetImageWatermarks(ImageWatermarksT&& value) {
575 m_imageWatermarksHasBeenSet = true;
576 m_imageWatermarks = std::forward<ImageWatermarksT>(value);
577 }
578 template <typename ImageWatermarksT = Aws::Vector<ImageWatermark>>
579 Image& WithImageWatermarks(ImageWatermarksT&& value) {
580 SetImageWatermarks(std::forward<ImageWatermarksT>(value));
581 return *this;
582 }
583 template <typename ImageWatermarksT = ImageWatermark>
584 Image& AddImageWatermarks(ImageWatermarksT&& value) {
585 m_imageWatermarksHasBeenSet = true;
586 m_imageWatermarks.emplace_back(std::forward<ImageWatermarksT>(value));
587 return *this;
588 }
590
592
595 inline const Aws::String& GetImageId() const { return m_imageId; }
596 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
597 template <typename ImageIdT = Aws::String>
598 void SetImageId(ImageIdT&& value) {
599 m_imageIdHasBeenSet = true;
600 m_imageId = std::forward<ImageIdT>(value);
601 }
602 template <typename ImageIdT = Aws::String>
603 Image& WithImageId(ImageIdT&& value) {
604 SetImageId(std::forward<ImageIdT>(value));
605 return *this;
606 }
608
610
613 inline const Aws::String& GetImageLocation() const { return m_imageLocation; }
614 inline bool ImageLocationHasBeenSet() const { return m_imageLocationHasBeenSet; }
615 template <typename ImageLocationT = Aws::String>
616 void SetImageLocation(ImageLocationT&& value) {
617 m_imageLocationHasBeenSet = true;
618 m_imageLocation = std::forward<ImageLocationT>(value);
619 }
620 template <typename ImageLocationT = Aws::String>
621 Image& WithImageLocation(ImageLocationT&& value) {
622 SetImageLocation(std::forward<ImageLocationT>(value));
623 return *this;
624 }
626
628
632 inline ImageState GetState() const { return m_state; }
633 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
634 inline void SetState(ImageState value) {
635 m_stateHasBeenSet = true;
636 m_state = value;
637 }
638 inline Image& WithState(ImageState value) {
639 SetState(value);
640 return *this;
641 }
643
645
648 inline const Aws::String& GetOwnerId() const { return m_ownerId; }
649 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
650 template <typename OwnerIdT = Aws::String>
651 void SetOwnerId(OwnerIdT&& value) {
652 m_ownerIdHasBeenSet = true;
653 m_ownerId = std::forward<OwnerIdT>(value);
654 }
655 template <typename OwnerIdT = Aws::String>
656 Image& WithOwnerId(OwnerIdT&& value) {
657 SetOwnerId(std::forward<OwnerIdT>(value));
658 return *this;
659 }
661
663
666 inline const Aws::String& GetCreationDate() const { return m_creationDate; }
667 inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; }
668 template <typename CreationDateT = Aws::String>
669 void SetCreationDate(CreationDateT&& value) {
670 m_creationDateHasBeenSet = true;
671 m_creationDate = std::forward<CreationDateT>(value);
672 }
673 template <typename CreationDateT = Aws::String>
674 Image& WithCreationDate(CreationDateT&& value) {
675 SetCreationDate(std::forward<CreationDateT>(value));
676 return *this;
677 }
679
681
686 inline bool GetPublic() const { return m_public; }
687 inline bool PublicHasBeenSet() const { return m_publicHasBeenSet; }
688 inline void SetPublic(bool value) {
689 m_publicHasBeenSet = true;
690 m_public = value;
691 }
692 inline Image& WithPublic(bool value) {
693 SetPublic(value);
694 return *this;
695 }
697
699
702 inline const Aws::Vector<ProductCode>& GetProductCodes() const { return m_productCodes; }
703 inline bool ProductCodesHasBeenSet() const { return m_productCodesHasBeenSet; }
704 template <typename ProductCodesT = Aws::Vector<ProductCode>>
705 void SetProductCodes(ProductCodesT&& value) {
706 m_productCodesHasBeenSet = true;
707 m_productCodes = std::forward<ProductCodesT>(value);
708 }
709 template <typename ProductCodesT = Aws::Vector<ProductCode>>
710 Image& WithProductCodes(ProductCodesT&& value) {
711 SetProductCodes(std::forward<ProductCodesT>(value));
712 return *this;
713 }
714 template <typename ProductCodesT = ProductCode>
715 Image& AddProductCodes(ProductCodesT&& value) {
716 m_productCodesHasBeenSet = true;
717 m_productCodes.emplace_back(std::forward<ProductCodesT>(value));
718 return *this;
719 }
721
723
726 inline ArchitectureValues GetArchitecture() const { return m_architecture; }
727 inline bool ArchitectureHasBeenSet() const { return m_architectureHasBeenSet; }
729 m_architectureHasBeenSet = true;
730 m_architecture = value;
731 }
733 SetArchitecture(value);
734 return *this;
735 }
737
739
742 inline ImageTypeValues GetImageType() const { return m_imageType; }
743 inline bool ImageTypeHasBeenSet() const { return m_imageTypeHasBeenSet; }
744 inline void SetImageType(ImageTypeValues value) {
745 m_imageTypeHasBeenSet = true;
746 m_imageType = value;
747 }
749 SetImageType(value);
750 return *this;
751 }
753
755
759 inline const Aws::String& GetKernelId() const { return m_kernelId; }
760 inline bool KernelIdHasBeenSet() const { return m_kernelIdHasBeenSet; }
761 template <typename KernelIdT = Aws::String>
762 void SetKernelId(KernelIdT&& value) {
763 m_kernelIdHasBeenSet = true;
764 m_kernelId = std::forward<KernelIdT>(value);
765 }
766 template <typename KernelIdT = Aws::String>
767 Image& WithKernelId(KernelIdT&& value) {
768 SetKernelId(std::forward<KernelIdT>(value));
769 return *this;
770 }
772
774
778 inline const Aws::String& GetRamdiskId() const { return m_ramdiskId; }
779 inline bool RamdiskIdHasBeenSet() const { return m_ramdiskIdHasBeenSet; }
780 template <typename RamdiskIdT = Aws::String>
781 void SetRamdiskId(RamdiskIdT&& value) {
782 m_ramdiskIdHasBeenSet = true;
783 m_ramdiskId = std::forward<RamdiskIdT>(value);
784 }
785 template <typename RamdiskIdT = Aws::String>
786 Image& WithRamdiskId(RamdiskIdT&& value) {
787 SetRamdiskId(std::forward<RamdiskIdT>(value));
788 return *this;
789 }
791
793
797 inline PlatformValues GetPlatform() const { return m_platform; }
798 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
799 inline void SetPlatform(PlatformValues value) {
800 m_platformHasBeenSet = true;
801 m_platform = value;
802 }
804 SetPlatform(value);
805 return *this;
806 }
808 private:
809 Aws::String m_platformDetails;
810
811 Aws::String m_usageOperation;
812
813 Aws::Vector<BlockDeviceMapping> m_blockDeviceMappings;
814
815 Aws::String m_description;
816
817 bool m_enaSupport{false};
818
820
821 Aws::String m_imageOwnerAlias;
822
823 Aws::String m_name;
824
825 Aws::String m_rootDeviceName;
826
827 DeviceType m_rootDeviceType{DeviceType::NOT_SET};
828
829 Aws::String m_sriovNetSupport;
830
831 StateReason m_stateReason;
832
833 Aws::Vector<Tag> m_tags;
834
836
838
840
841 Aws::String m_deprecationTime;
842
844
845 Aws::String m_sourceInstanceId;
846
847 Aws::String m_deregistrationProtection;
848
849 Aws::String m_lastLaunchedTime;
850
851 bool m_imageAllowed{false};
852
853 Aws::String m_sourceImageId;
854
855 Aws::String m_sourceImageRegion;
856
857 bool m_freeTierEligible{false};
858
859 Aws::String m_publicSsmParameterName;
860
861 Aws::Vector<ImageWatermark> m_imageWatermarks;
862
863 Aws::String m_imageId;
864
865 Aws::String m_imageLocation;
866
868
869 Aws::String m_ownerId;
870
871 Aws::String m_creationDate;
872
873 bool m_public{false};
874
875 Aws::Vector<ProductCode> m_productCodes;
876
878
880
881 Aws::String m_kernelId;
882
883 Aws::String m_ramdiskId;
884
886 bool m_platformDetailsHasBeenSet = false;
887 bool m_usageOperationHasBeenSet = false;
888 bool m_blockDeviceMappingsHasBeenSet = false;
889 bool m_descriptionHasBeenSet = false;
890 bool m_enaSupportHasBeenSet = false;
891 bool m_hypervisorHasBeenSet = false;
892 bool m_imageOwnerAliasHasBeenSet = false;
893 bool m_nameHasBeenSet = false;
894 bool m_rootDeviceNameHasBeenSet = false;
895 bool m_rootDeviceTypeHasBeenSet = false;
896 bool m_sriovNetSupportHasBeenSet = false;
897 bool m_stateReasonHasBeenSet = false;
898 bool m_tagsHasBeenSet = false;
899 bool m_virtualizationTypeHasBeenSet = false;
900 bool m_bootModeHasBeenSet = false;
901 bool m_tpmSupportHasBeenSet = false;
902 bool m_deprecationTimeHasBeenSet = false;
903 bool m_imdsSupportHasBeenSet = false;
904 bool m_sourceInstanceIdHasBeenSet = false;
905 bool m_deregistrationProtectionHasBeenSet = false;
906 bool m_lastLaunchedTimeHasBeenSet = false;
907 bool m_imageAllowedHasBeenSet = false;
908 bool m_sourceImageIdHasBeenSet = false;
909 bool m_sourceImageRegionHasBeenSet = false;
910 bool m_freeTierEligibleHasBeenSet = false;
911 bool m_publicSsmParameterNameHasBeenSet = false;
912 bool m_imageWatermarksHasBeenSet = false;
913 bool m_imageIdHasBeenSet = false;
914 bool m_imageLocationHasBeenSet = false;
915 bool m_stateHasBeenSet = false;
916 bool m_ownerIdHasBeenSet = false;
917 bool m_creationDateHasBeenSet = false;
918 bool m_publicHasBeenSet = false;
919 bool m_productCodesHasBeenSet = false;
920 bool m_architectureHasBeenSet = false;
921 bool m_imageTypeHasBeenSet = false;
922 bool m_kernelIdHasBeenSet = false;
923 bool m_ramdiskIdHasBeenSet = false;
924 bool m_platformHasBeenSet = false;
925};
926
927} // namespace Model
928} // namespace EC2
929} // namespace Aws
bool PlatformHasBeenSet() const
Definition Image.h:798
const Aws::Vector< ImageWatermark > & GetImageWatermarks() const
Definition Image.h:571
bool DeprecationTimeHasBeenSet() const
Definition Image.h:372
Image & WithTpmSupport(TpmSupportValues value)
Definition Image.h:359
Image & WithImageAllowed(bool value)
Definition Image.h:487
const Aws::String & GetDeprecationTime() const
Definition Image.h:371
BootModeValues GetBootMode() const
Definition Image.h:334
ArchitectureValues GetArchitecture() const
Definition Image.h:726
bool StateHasBeenSet() const
Definition Image.h:633
bool TpmSupportHasBeenSet() const
Definition Image.h:354
bool HypervisorHasBeenSet() const
Definition Image.h:166
void SetSourceImageId(SourceImageIdT &&value)
Definition Image.h:500
Image & AddTags(TagsT &&value)
Definition Image.h:304
void SetState(ImageState value)
Definition Image.h:634
Image & WithDescription(DescriptionT &&value)
Definition Image.h:138
bool RamdiskIdHasBeenSet() const
Definition Image.h:779
Image & WithImageType(ImageTypeValues value)
Definition Image.h:748
void SetTags(TagsT &&value)
Definition Image.h:294
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::String & GetImageLocation() const
Definition Image.h:613
void SetImageLocation(ImageLocationT &&value)
Definition Image.h:616
void SetDeregistrationProtection(DeregistrationProtectionT &&value)
Definition Image.h:436
bool EnaSupportHasBeenSet() const
Definition Image.h:149
void SetBlockDeviceMappings(BlockDeviceMappingsT &&value)
Definition Image.h:109
void SetRootDeviceType(DeviceType value)
Definition Image.h:240
bool ImageTypeHasBeenSet() const
Definition Image.h:743
void SetRamdiskId(RamdiskIdT &&value)
Definition Image.h:781
const Aws::String & GetOwnerId() const
Definition Image.h:648
const Aws::String & GetImageId() const
Definition Image.h:595
Image & WithSourceInstanceId(SourceInstanceIdT &&value)
Definition Image.h:423
Image & WithDeprecationTime(DeprecationTimeT &&value)
Definition Image.h:379
bool ImageLocationHasBeenSet() const
Definition Image.h:614
void SetOwnerId(OwnerIdT &&value)
Definition Image.h:651
Image & WithPlatform(PlatformValues value)
Definition Image.h:803
bool RootDeviceNameHasBeenSet() const
Definition Image.h:220
PlatformValues GetPlatform() const
Definition Image.h:797
bool NameHasBeenSet() const
Definition Image.h:201
Image & WithLastLaunchedTime(LastLaunchedTimeT &&value)
Definition Image.h:463
const Aws::String & GetRootDeviceName() const
Definition Image.h:219
void SetSourceImageRegion(SourceImageRegionT &&value)
Definition Image.h:518
bool TagsHasBeenSet() const
Definition Image.h:292
bool DeregistrationProtectionHasBeenSet() const
Definition Image.h:434
const Aws::String & GetPlatformDetails() const
Definition Image.h:59
bool OwnerIdHasBeenSet() const
Definition Image.h:649
void SetHypervisor(HypervisorType value)
Definition Image.h:167
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
Image & WithPublicSsmParameterName(PublicSsmParameterNameT &&value)
Definition Image.h:561
Image & WithImageLocation(ImageLocationT &&value)
Definition Image.h:621
void SetImageAllowed(bool value)
Definition Image.h:483
void SetName(NameT &&value)
Definition Image.h:203
const Aws::String & GetKernelId() const
Definition Image.h:759
Image & WithRamdiskId(RamdiskIdT &&value)
Definition Image.h:786
Image & WithImageWatermarks(ImageWatermarksT &&value)
Definition Image.h:579
const Aws::String & GetCreationDate() const
Definition Image.h:666
bool KernelIdHasBeenSet() const
Definition Image.h:760
bool GetFreeTierEligible() const
Definition Image.h:536
void SetCreationDate(CreationDateT &&value)
Definition Image.h:669
Image & WithArchitecture(ArchitectureValues value)
Definition Image.h:732
void SetPublicSsmParameterName(PublicSsmParameterNameT &&value)
Definition Image.h:556
const Aws::Vector< ProductCode > & GetProductCodes() const
Definition Image.h:702
DeviceType GetRootDeviceType() const
Definition Image.h:238
Image & WithProductCodes(ProductCodesT &&value)
Definition Image.h:710
const Aws::String & GetImageOwnerAlias() const
Definition Image.h:182
void SetImageWatermarks(ImageWatermarksT &&value)
Definition Image.h:574
bool ImageOwnerAliasHasBeenSet() const
Definition Image.h:183
Image & WithBootMode(BootModeValues value)
Definition Image.h:340
bool GetPublic() const
Definition Image.h:686
Image & WithPublic(bool value)
Definition Image.h:692
Image & WithOwnerId(OwnerIdT &&value)
Definition Image.h:656
void SetEnaSupport(bool value)
Definition Image.h:150
void SetPublic(bool value)
Definition Image.h:688
const Aws::String & GetName() const
Definition Image.h:200
void SetPlatformDetails(PlatformDetailsT &&value)
Definition Image.h:62
Image & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
Definition Image.h:119
Image & WithDeregistrationProtection(DeregistrationProtectionT &&value)
Definition Image.h:441
Image & WithImageOwnerAlias(ImageOwnerAliasT &&value)
Definition Image.h:190
Image & WithState(ImageState value)
Definition Image.h:638
Image & WithPlatformDetails(PlatformDetailsT &&value)
Definition Image.h:67
const Aws::Vector< Tag > & GetTags() const
Definition Image.h:291
void SetImageId(ImageIdT &&value)
Definition Image.h:598
bool UsageOperationHasBeenSet() const
Definition Image.h:89
bool SourceImageRegionHasBeenSet() const
Definition Image.h:516
bool ArchitectureHasBeenSet() const
Definition Image.h:727
bool GetEnaSupport() const
Definition Image.h:148
const Aws::String & GetDescription() const
Definition Image.h:130
bool ImageAllowedHasBeenSet() const
Definition Image.h:482
void SetPlatform(PlatformValues value)
Definition Image.h:799
Image & WithUsageOperation(UsageOperationT &&value)
Definition Image.h:96
const StateReason & GetStateReason() const
Definition Image.h:273
void SetStateReason(StateReasonT &&value)
Definition Image.h:276
bool PublicHasBeenSet() const
Definition Image.h:687
TpmSupportValues GetTpmSupport() const
Definition Image.h:353
void SetTpmSupport(TpmSupportValues value)
Definition Image.h:355
void SetProductCodes(ProductCodesT &&value)
Definition Image.h:705
AWS_EC2_API Image(const Aws::Utils::Xml::XmlNode &xmlNode)
bool BootModeHasBeenSet() const
Definition Image.h:335
Image & WithTags(TagsT &&value)
Definition Image.h:299
void SetRootDeviceName(RootDeviceNameT &&value)
Definition Image.h:222
void SetImageType(ImageTypeValues value)
Definition Image.h:744
bool GetImageAllowed() const
Definition Image.h:481
bool SourceImageIdHasBeenSet() const
Definition Image.h:498
Image & WithImdsSupport(ImdsSupportValues value)
Definition Image.h:402
const Aws::Vector< BlockDeviceMapping > & GetBlockDeviceMappings() const
Definition Image.h:106
void SetImageOwnerAlias(ImageOwnerAliasT &&value)
Definition Image.h:185
void SetArchitecture(ArchitectureValues value)
Definition Image.h:728
bool LastLaunchedTimeHasBeenSet() const
Definition Image.h:456
bool FreeTierEligibleHasBeenSet() const
Definition Image.h:537
bool PlatformDetailsHasBeenSet() const
Definition Image.h:60
ImdsSupportValues GetImdsSupport() const
Definition Image.h:396
HypervisorType GetHypervisor() const
Definition Image.h:165
Image & WithEnaSupport(bool value)
Definition Image.h:154
ImageTypeValues GetImageType() const
Definition Image.h:742
const Aws::String & GetPublicSsmParameterName() const
Definition Image.h:553
void SetBootMode(BootModeValues value)
Definition Image.h:336
Image & WithName(NameT &&value)
Definition Image.h:208
bool SriovNetSupportHasBeenSet() const
Definition Image.h:256
const Aws::String & GetDeregistrationProtection() const
Definition Image.h:433
void SetImdsSupport(ImdsSupportValues value)
Definition Image.h:398
Image & WithFreeTierEligible(bool value)
Definition Image.h:542
bool DescriptionHasBeenSet() const
Definition Image.h:131
AWS_EC2_API Image()=default
Image & WithSriovNetSupport(SriovNetSupportT &&value)
Definition Image.h:263
bool PublicSsmParameterNameHasBeenSet() const
Definition Image.h:554
const Aws::String & GetSriovNetSupport() const
Definition Image.h:255
Image & WithSourceImageRegion(SourceImageRegionT &&value)
Definition Image.h:523
bool SourceInstanceIdHasBeenSet() const
Definition Image.h:416
void SetVirtualizationType(VirtualizationType value)
Definition Image.h:317
Image & WithRootDeviceType(DeviceType value)
Definition Image.h:244
const Aws::String & GetSourceImageRegion() const
Definition Image.h:515
Image & WithRootDeviceName(RootDeviceNameT &&value)
Definition Image.h:227
const Aws::String & GetSourceImageId() const
Definition Image.h:497
const Aws::String & GetLastLaunchedTime() const
Definition Image.h:455
bool VirtualizationTypeHasBeenSet() const
Definition Image.h:316
void SetSourceInstanceId(SourceInstanceIdT &&value)
Definition Image.h:418
bool BlockDeviceMappingsHasBeenSet() const
Definition Image.h:107
Image & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
Definition Image.h:114
bool ImdsSupportHasBeenSet() const
Definition Image.h:397
VirtualizationType GetVirtualizationType() const
Definition Image.h:315
Image & WithHypervisor(HypervisorType value)
Definition Image.h:171
void SetFreeTierEligible(bool value)
Definition Image.h:538
Image & WithStateReason(StateReasonT &&value)
Definition Image.h:281
Image & WithImageId(ImageIdT &&value)
Definition Image.h:603
void SetSriovNetSupport(SriovNetSupportT &&value)
Definition Image.h:258
bool CreationDateHasBeenSet() const
Definition Image.h:667
AWS_EC2_API Image & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetLastLaunchedTime(LastLaunchedTimeT &&value)
Definition Image.h:458
void SetDeprecationTime(DeprecationTimeT &&value)
Definition Image.h:374
Image & AddImageWatermarks(ImageWatermarksT &&value)
Definition Image.h:584
const Aws::String & GetRamdiskId() const
Definition Image.h:778
void SetKernelId(KernelIdT &&value)
Definition Image.h:762
bool StateReasonHasBeenSet() const
Definition Image.h:274
void SetDescription(DescriptionT &&value)
Definition Image.h:133
void SetUsageOperation(UsageOperationT &&value)
Definition Image.h:91
bool ImageWatermarksHasBeenSet() const
Definition Image.h:572
Image & WithKernelId(KernelIdT &&value)
Definition Image.h:767
ImageState GetState() const
Definition Image.h:632
Image & WithCreationDate(CreationDateT &&value)
Definition Image.h:674
Image & AddProductCodes(ProductCodesT &&value)
Definition Image.h:715
Image & WithSourceImageId(SourceImageIdT &&value)
Definition Image.h:505
bool RootDeviceTypeHasBeenSet() const
Definition Image.h:239
const Aws::String & GetSourceInstanceId() const
Definition Image.h:415
bool ImageIdHasBeenSet() const
Definition Image.h:596
Image & WithVirtualizationType(VirtualizationType value)
Definition Image.h:321
const Aws::String & GetUsageOperation() const
Definition Image.h:88
bool ProductCodesHasBeenSet() const
Definition Image.h:703
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream