AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
InstanceBlockDeviceMapping.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
9#include <aws/imagebuilder/model/EbsInstanceBlockDeviceSpecification.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace imagebuilder {
21namespace Model {
22
30 public:
31 AWS_IMAGEBUILDER_API InstanceBlockDeviceMapping() = default;
34 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline const Aws::String& GetDeviceName() const { return m_deviceName; }
41 inline bool DeviceNameHasBeenSet() const { return m_deviceNameHasBeenSet; }
42 template <typename DeviceNameT = Aws::String>
43 void SetDeviceName(DeviceNameT&& value) {
44 m_deviceNameHasBeenSet = true;
45 m_deviceName = std::forward<DeviceNameT>(value);
46 }
47 template <typename DeviceNameT = Aws::String>
49 SetDeviceName(std::forward<DeviceNameT>(value));
50 return *this;
51 }
53
55
58 inline const EbsInstanceBlockDeviceSpecification& GetEbs() const { return m_ebs; }
59 inline bool EbsHasBeenSet() const { return m_ebsHasBeenSet; }
60 template <typename EbsT = EbsInstanceBlockDeviceSpecification>
61 void SetEbs(EbsT&& value) {
62 m_ebsHasBeenSet = true;
63 m_ebs = std::forward<EbsT>(value);
64 }
65 template <typename EbsT = EbsInstanceBlockDeviceSpecification>
67 SetEbs(std::forward<EbsT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::String& GetVirtualName() const { return m_virtualName; }
77 inline bool VirtualNameHasBeenSet() const { return m_virtualNameHasBeenSet; }
78 template <typename VirtualNameT = Aws::String>
79 void SetVirtualName(VirtualNameT&& value) {
80 m_virtualNameHasBeenSet = true;
81 m_virtualName = std::forward<VirtualNameT>(value);
82 }
83 template <typename VirtualNameT = Aws::String>
85 SetVirtualName(std::forward<VirtualNameT>(value));
86 return *this;
87 }
89
91
94 inline const Aws::String& GetNoDevice() const { return m_noDevice; }
95 inline bool NoDeviceHasBeenSet() const { return m_noDeviceHasBeenSet; }
96 template <typename NoDeviceT = Aws::String>
97 void SetNoDevice(NoDeviceT&& value) {
98 m_noDeviceHasBeenSet = true;
99 m_noDevice = std::forward<NoDeviceT>(value);
100 }
101 template <typename NoDeviceT = Aws::String>
103 SetNoDevice(std::forward<NoDeviceT>(value));
104 return *this;
105 }
107 private:
108 Aws::String m_deviceName;
109
111
112 Aws::String m_virtualName;
113
114 Aws::String m_noDevice;
115 bool m_deviceNameHasBeenSet = false;
116 bool m_ebsHasBeenSet = false;
117 bool m_virtualNameHasBeenSet = false;
118 bool m_noDeviceHasBeenSet = false;
119};
120
121} // namespace Model
122} // namespace imagebuilder
123} // namespace Aws
AWS_IMAGEBUILDER_API InstanceBlockDeviceMapping & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_IMAGEBUILDER_API InstanceBlockDeviceMapping(Aws::Utils::Json::JsonView jsonValue)
const EbsInstanceBlockDeviceSpecification & GetEbs() const
AWS_IMAGEBUILDER_API InstanceBlockDeviceMapping()=default
InstanceBlockDeviceMapping & WithVirtualName(VirtualNameT &&value)
InstanceBlockDeviceMapping & WithDeviceName(DeviceNameT &&value)
InstanceBlockDeviceMapping & WithNoDevice(NoDeviceT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue