AWS SDK for C++

AWS SDK for C++ Version 1.11.902

Loading...
Searching...
No Matches
EbsInstanceBlockDeviceSpecification.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/EbsVolumeType.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 EbsInstanceBlockDeviceSpecification() = default;
34 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline bool GetEncrypted() const { return m_encrypted; }
41 inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; }
42 inline void SetEncrypted(bool value) {
43 m_encryptedHasBeenSet = true;
44 m_encrypted = value;
45 }
47 SetEncrypted(value);
48 return *this;
49 }
51
53
56 inline bool GetDeleteOnTermination() const { return m_deleteOnTermination; }
57 inline bool DeleteOnTerminationHasBeenSet() const { return m_deleteOnTerminationHasBeenSet; }
58 inline void SetDeleteOnTermination(bool value) {
59 m_deleteOnTerminationHasBeenSet = true;
60 m_deleteOnTermination = value;
61 }
64 return *this;
65 }
67
69
73 inline int GetIops() const { return m_iops; }
74 inline bool IopsHasBeenSet() const { return m_iopsHasBeenSet; }
75 inline void SetIops(int value) {
76 m_iopsHasBeenSet = true;
77 m_iops = value;
78 }
80 SetIops(value);
81 return *this;
82 }
84
86
94 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
95 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
96 template <typename KmsKeyIdT = Aws::String>
97 void SetKmsKeyId(KmsKeyIdT&& value) {
98 m_kmsKeyIdHasBeenSet = true;
99 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
100 }
101 template <typename KmsKeyIdT = Aws::String>
103 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
104 return *this;
105 }
107
109
112 inline const Aws::String& GetSnapshotId() const { return m_snapshotId; }
113 inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
114 template <typename SnapshotIdT = Aws::String>
115 void SetSnapshotId(SnapshotIdT&& value) {
116 m_snapshotIdHasBeenSet = true;
117 m_snapshotId = std::forward<SnapshotIdT>(value);
118 }
119 template <typename SnapshotIdT = Aws::String>
121 SetSnapshotId(std::forward<SnapshotIdT>(value));
122 return *this;
123 }
125
127
130 inline int GetVolumeSize() const { return m_volumeSize; }
131 inline bool VolumeSizeHasBeenSet() const { return m_volumeSizeHasBeenSet; }
132 inline void SetVolumeSize(int value) {
133 m_volumeSizeHasBeenSet = true;
134 m_volumeSize = value;
135 }
137 SetVolumeSize(value);
138 return *this;
139 }
141
143
146 inline EbsVolumeType GetVolumeType() const { return m_volumeType; }
147 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
148 inline void SetVolumeType(EbsVolumeType value) {
149 m_volumeTypeHasBeenSet = true;
150 m_volumeType = value;
151 }
153 SetVolumeType(value);
154 return *this;
155 }
157
159
163 inline int GetThroughput() const { return m_throughput; }
164 inline bool ThroughputHasBeenSet() const { return m_throughputHasBeenSet; }
165 inline void SetThroughput(int value) {
166 m_throughputHasBeenSet = true;
167 m_throughput = value;
168 }
170 SetThroughput(value);
171 return *this;
172 }
174 private:
175 bool m_encrypted{false};
176
177 bool m_deleteOnTermination{false};
178
179 int m_iops{0};
180
181 Aws::String m_kmsKeyId;
182
183 Aws::String m_snapshotId;
184
185 int m_volumeSize{0};
186
188
189 int m_throughput{0};
190 bool m_encryptedHasBeenSet = false;
191 bool m_deleteOnTerminationHasBeenSet = false;
192 bool m_iopsHasBeenSet = false;
193 bool m_kmsKeyIdHasBeenSet = false;
194 bool m_snapshotIdHasBeenSet = false;
195 bool m_volumeSizeHasBeenSet = false;
196 bool m_volumeTypeHasBeenSet = false;
197 bool m_throughputHasBeenSet = false;
198};
199
200} // namespace Model
201} // namespace imagebuilder
202} // namespace Aws
AWS_IMAGEBUILDER_API EbsInstanceBlockDeviceSpecification(Aws::Utils::Json::JsonView jsonValue)
EbsInstanceBlockDeviceSpecification & WithSnapshotId(SnapshotIdT &&value)
EbsInstanceBlockDeviceSpecification & WithKmsKeyId(KmsKeyIdT &&value)
AWS_IMAGEBUILDER_API EbsInstanceBlockDeviceSpecification()=default
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
EbsInstanceBlockDeviceSpecification & WithDeleteOnTermination(bool value)
EbsInstanceBlockDeviceSpecification & WithVolumeType(EbsVolumeType value)
AWS_IMAGEBUILDER_API EbsInstanceBlockDeviceSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue