AWS SDK for C++

AWS SDK for C++ Version 1.11.719

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
72 inline int GetIops() const { return m_iops; }
73 inline bool IopsHasBeenSet() const { return m_iopsHasBeenSet; }
74 inline void SetIops(int value) {
75 m_iopsHasBeenSet = true;
76 m_iops = value;
77 }
79 SetIops(value);
80 return *this;
81 }
83
85
93 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
94 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
95 template <typename KmsKeyIdT = Aws::String>
96 void SetKmsKeyId(KmsKeyIdT&& value) {
97 m_kmsKeyIdHasBeenSet = true;
98 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
99 }
100 template <typename KmsKeyIdT = Aws::String>
102 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
103 return *this;
104 }
106
108
111 inline const Aws::String& GetSnapshotId() const { return m_snapshotId; }
112 inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
113 template <typename SnapshotIdT = Aws::String>
114 void SetSnapshotId(SnapshotIdT&& value) {
115 m_snapshotIdHasBeenSet = true;
116 m_snapshotId = std::forward<SnapshotIdT>(value);
117 }
118 template <typename SnapshotIdT = Aws::String>
120 SetSnapshotId(std::forward<SnapshotIdT>(value));
121 return *this;
122 }
124
126
129 inline int GetVolumeSize() const { return m_volumeSize; }
130 inline bool VolumeSizeHasBeenSet() const { return m_volumeSizeHasBeenSet; }
131 inline void SetVolumeSize(int value) {
132 m_volumeSizeHasBeenSet = true;
133 m_volumeSize = value;
134 }
136 SetVolumeSize(value);
137 return *this;
138 }
140
142
145 inline EbsVolumeType GetVolumeType() const { return m_volumeType; }
146 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
147 inline void SetVolumeType(EbsVolumeType value) {
148 m_volumeTypeHasBeenSet = true;
149 m_volumeType = value;
150 }
152 SetVolumeType(value);
153 return *this;
154 }
156
158
162 inline int GetThroughput() const { return m_throughput; }
163 inline bool ThroughputHasBeenSet() const { return m_throughputHasBeenSet; }
164 inline void SetThroughput(int value) {
165 m_throughputHasBeenSet = true;
166 m_throughput = value;
167 }
169 SetThroughput(value);
170 return *this;
171 }
173 private:
174 bool m_encrypted{false};
175
176 bool m_deleteOnTermination{false};
177
178 int m_iops{0};
179
180 Aws::String m_kmsKeyId;
181
182 Aws::String m_snapshotId;
183
184 int m_volumeSize{0};
185
187
188 int m_throughput{0};
189 bool m_encryptedHasBeenSet = false;
190 bool m_deleteOnTerminationHasBeenSet = false;
191 bool m_iopsHasBeenSet = false;
192 bool m_kmsKeyIdHasBeenSet = false;
193 bool m_snapshotIdHasBeenSet = false;
194 bool m_volumeSizeHasBeenSet = false;
195 bool m_volumeTypeHasBeenSet = false;
196 bool m_throughputHasBeenSet = false;
197};
198
199} // namespace Model
200} // namespace imagebuilder
201} // 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