AWS SDK for C++

AWS SDK for C++ Version 1.11.785

Loading...
Searching...
No Matches
EbsBlockDevice.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/workspaces-instances/WorkspacesInstances_EXPORTS.h>
9#include <aws/workspaces-instances/model/VolumeTypeEnum.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace WorkspacesInstances {
21namespace Model {
22
30 public:
31 AWS_WORKSPACESINSTANCES_API EbsBlockDevice() = default;
32 AWS_WORKSPACESINSTANCES_API EbsBlockDevice(Aws::Utils::Json::JsonView jsonValue);
33 AWS_WORKSPACESINSTANCES_API EbsBlockDevice& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_WORKSPACESINSTANCES_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline VolumeTypeEnum GetVolumeType() const { return m_volumeType; }
41 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
42 inline void SetVolumeType(VolumeTypeEnum value) {
43 m_volumeTypeHasBeenSet = true;
44 m_volumeType = value;
45 }
47 SetVolumeType(value);
48 return *this;
49 }
51
53
56 inline bool GetEncrypted() const { return m_encrypted; }
57 inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; }
58 inline void SetEncrypted(bool value) {
59 m_encryptedHasBeenSet = true;
60 m_encrypted = value;
61 }
62 inline EbsBlockDevice& WithEncrypted(bool value) {
63 SetEncrypted(value);
64 return *this;
65 }
67
69
72 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
73 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
74 template <typename KmsKeyIdT = Aws::String>
75 void SetKmsKeyId(KmsKeyIdT&& value) {
76 m_kmsKeyIdHasBeenSet = true;
77 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
78 }
79 template <typename KmsKeyIdT = Aws::String>
80 EbsBlockDevice& WithKmsKeyId(KmsKeyIdT&& value) {
81 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
82 return *this;
83 }
85
87
90 inline int GetIops() const { return m_iops; }
91 inline bool IopsHasBeenSet() const { return m_iopsHasBeenSet; }
92 inline void SetIops(int value) {
93 m_iopsHasBeenSet = true;
94 m_iops = value;
95 }
96 inline EbsBlockDevice& WithIops(int value) {
97 SetIops(value);
98 return *this;
99 }
101
103
106 inline int GetThroughput() const { return m_throughput; }
107 inline bool ThroughputHasBeenSet() const { return m_throughputHasBeenSet; }
108 inline void SetThroughput(int value) {
109 m_throughputHasBeenSet = true;
110 m_throughput = value;
111 }
112 inline EbsBlockDevice& WithThroughput(int value) {
113 SetThroughput(value);
114 return *this;
115 }
117
119
122 inline int GetVolumeSize() const { return m_volumeSize; }
123 inline bool VolumeSizeHasBeenSet() const { return m_volumeSizeHasBeenSet; }
124 inline void SetVolumeSize(int value) {
125 m_volumeSizeHasBeenSet = true;
126 m_volumeSize = value;
127 }
128 inline EbsBlockDevice& WithVolumeSize(int value) {
129 SetVolumeSize(value);
130 return *this;
131 }
133 private:
135
136 bool m_encrypted{false};
137
138 Aws::String m_kmsKeyId;
139
140 int m_iops{0};
141
142 int m_throughput{0};
143
144 int m_volumeSize{0};
145 bool m_volumeTypeHasBeenSet = false;
146 bool m_encryptedHasBeenSet = false;
147 bool m_kmsKeyIdHasBeenSet = false;
148 bool m_iopsHasBeenSet = false;
149 bool m_throughputHasBeenSet = false;
150 bool m_volumeSizeHasBeenSet = false;
151};
152
153} // namespace Model
154} // namespace WorkspacesInstances
155} // namespace Aws
AWS_WORKSPACESINSTANCES_API EbsBlockDevice(Aws::Utils::Json::JsonView jsonValue)
AWS_WORKSPACESINSTANCES_API EbsBlockDevice & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_WORKSPACESINSTANCES_API EbsBlockDevice()=default
EbsBlockDevice & WithVolumeType(VolumeTypeEnum value)
AWS_WORKSPACESINSTANCES_API Aws::Utils::Json::JsonValue Jsonize() const
EbsBlockDevice & WithKmsKeyId(KmsKeyIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue