AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
LaunchTemplateBlockDeviceMapping.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/ec2/EC2_EXPORTS.h>
10#include <aws/ec2/model/LaunchTemplateEbsBlockDevice.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace EC2 {
21namespace Model {
22
29 public:
30 AWS_EC2_API LaunchTemplateBlockDeviceMapping() = default;
33
34 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
35 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
36
38
41 inline const Aws::String& GetDeviceName() const { return m_deviceName; }
42 inline bool DeviceNameHasBeenSet() const { return m_deviceNameHasBeenSet; }
43 template <typename DeviceNameT = Aws::String>
44 void SetDeviceName(DeviceNameT&& value) {
45 m_deviceNameHasBeenSet = true;
46 m_deviceName = std::forward<DeviceNameT>(value);
47 }
48 template <typename DeviceNameT = Aws::String>
50 SetDeviceName(std::forward<DeviceNameT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetVirtualName() const { return m_virtualName; }
60 inline bool VirtualNameHasBeenSet() const { return m_virtualNameHasBeenSet; }
61 template <typename VirtualNameT = Aws::String>
62 void SetVirtualName(VirtualNameT&& value) {
63 m_virtualNameHasBeenSet = true;
64 m_virtualName = std::forward<VirtualNameT>(value);
65 }
66 template <typename VirtualNameT = Aws::String>
68 SetVirtualName(std::forward<VirtualNameT>(value));
69 return *this;
70 }
72
74
77 inline const LaunchTemplateEbsBlockDevice& GetEbs() const { return m_ebs; }
78 inline bool EbsHasBeenSet() const { return m_ebsHasBeenSet; }
79 template <typename EbsT = LaunchTemplateEbsBlockDevice>
80 void SetEbs(EbsT&& value) {
81 m_ebsHasBeenSet = true;
82 m_ebs = std::forward<EbsT>(value);
83 }
84 template <typename EbsT = LaunchTemplateEbsBlockDevice>
86 SetEbs(std::forward<EbsT>(value));
87 return *this;
88 }
90
92
96 inline const Aws::String& GetNoDevice() const { return m_noDevice; }
97 inline bool NoDeviceHasBeenSet() const { return m_noDeviceHasBeenSet; }
98 template <typename NoDeviceT = Aws::String>
99 void SetNoDevice(NoDeviceT&& value) {
100 m_noDeviceHasBeenSet = true;
101 m_noDevice = std::forward<NoDeviceT>(value);
102 }
103 template <typename NoDeviceT = Aws::String>
105 SetNoDevice(std::forward<NoDeviceT>(value));
106 return *this;
107 }
109 private:
110 Aws::String m_deviceName;
111
112 Aws::String m_virtualName;
113
115
116 Aws::String m_noDevice;
117 bool m_deviceNameHasBeenSet = false;
118 bool m_virtualNameHasBeenSet = false;
119 bool m_ebsHasBeenSet = false;
120 bool m_noDeviceHasBeenSet = false;
121};
122
123} // namespace Model
124} // namespace EC2
125} // namespace Aws
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
LaunchTemplateBlockDeviceMapping & WithEbs(EbsT &&value)
AWS_EC2_API LaunchTemplateBlockDeviceMapping(const Aws::Utils::Xml::XmlNode &xmlNode)
LaunchTemplateBlockDeviceMapping & WithDeviceName(DeviceNameT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_EC2_API LaunchTemplateBlockDeviceMapping & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
LaunchTemplateBlockDeviceMapping & WithNoDevice(NoDeviceT &&value)
LaunchTemplateBlockDeviceMapping & WithVirtualName(VirtualNameT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream