AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
KxVolume.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/finspace/Finspace_EXPORTS.h>
11#include <aws/finspace/model/KxAzMode.h>
12#include <aws/finspace/model/KxVolumeStatus.h>
13#include <aws/finspace/model/KxVolumeType.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace finspace {
25namespace Model {
26
33class KxVolume {
34 public:
35 AWS_FINSPACE_API KxVolume() = default;
36 AWS_FINSPACE_API KxVolume(Aws::Utils::Json::JsonView jsonValue);
37 AWS_FINSPACE_API KxVolume& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_FINSPACE_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const Aws::String& GetVolumeName() const { return m_volumeName; }
45 inline bool VolumeNameHasBeenSet() const { return m_volumeNameHasBeenSet; }
46 template <typename VolumeNameT = Aws::String>
47 void SetVolumeName(VolumeNameT&& value) {
48 m_volumeNameHasBeenSet = true;
49 m_volumeName = std::forward<VolumeNameT>(value);
50 }
51 template <typename VolumeNameT = Aws::String>
52 KxVolume& WithVolumeName(VolumeNameT&& value) {
53 SetVolumeName(std::forward<VolumeNameT>(value));
54 return *this;
55 }
57
59
63 inline KxVolumeType GetVolumeType() const { return m_volumeType; }
64 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
65 inline void SetVolumeType(KxVolumeType value) {
66 m_volumeTypeHasBeenSet = true;
67 m_volumeType = value;
68 }
70 SetVolumeType(value);
71 return *this;
72 }
74
76
87 inline KxVolumeStatus GetStatus() const { return m_status; }
88 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
89 inline void SetStatus(KxVolumeStatus value) {
90 m_statusHasBeenSet = true;
91 m_status = value;
92 }
94 SetStatus(value);
95 return *this;
96 }
98
100
103 inline const Aws::String& GetDescription() const { return m_description; }
104 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
105 template <typename DescriptionT = Aws::String>
106 void SetDescription(DescriptionT&& value) {
107 m_descriptionHasBeenSet = true;
108 m_description = std::forward<DescriptionT>(value);
109 }
110 template <typename DescriptionT = Aws::String>
111 KxVolume& WithDescription(DescriptionT&& value) {
112 SetDescription(std::forward<DescriptionT>(value));
113 return *this;
114 }
116
118
121 inline const Aws::String& GetStatusReason() const { return m_statusReason; }
122 inline bool StatusReasonHasBeenSet() const { return m_statusReasonHasBeenSet; }
123 template <typename StatusReasonT = Aws::String>
124 void SetStatusReason(StatusReasonT&& value) {
125 m_statusReasonHasBeenSet = true;
126 m_statusReason = std::forward<StatusReasonT>(value);
127 }
128 template <typename StatusReasonT = Aws::String>
129 KxVolume& WithStatusReason(StatusReasonT&& value) {
130 SetStatusReason(std::forward<StatusReasonT>(value));
131 return *this;
132 }
134
136
141 inline KxAzMode GetAzMode() const { return m_azMode; }
142 inline bool AzModeHasBeenSet() const { return m_azModeHasBeenSet; }
143 inline void SetAzMode(KxAzMode value) {
144 m_azModeHasBeenSet = true;
145 m_azMode = value;
146 }
147 inline KxVolume& WithAzMode(KxAzMode value) {
148 SetAzMode(value);
149 return *this;
150 }
152
154
157 inline const Aws::Vector<Aws::String>& GetAvailabilityZoneIds() const { return m_availabilityZoneIds; }
158 inline bool AvailabilityZoneIdsHasBeenSet() const { return m_availabilityZoneIdsHasBeenSet; }
159 template <typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
160 void SetAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
161 m_availabilityZoneIdsHasBeenSet = true;
162 m_availabilityZoneIds = std::forward<AvailabilityZoneIdsT>(value);
163 }
164 template <typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
165 KxVolume& WithAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
166 SetAvailabilityZoneIds(std::forward<AvailabilityZoneIdsT>(value));
167 return *this;
168 }
169 template <typename AvailabilityZoneIdsT = Aws::String>
170 KxVolume& AddAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
171 m_availabilityZoneIdsHasBeenSet = true;
172 m_availabilityZoneIds.emplace_back(std::forward<AvailabilityZoneIdsT>(value));
173 return *this;
174 }
176
178
183 inline const Aws::Utils::DateTime& GetCreatedTimestamp() const { return m_createdTimestamp; }
184 inline bool CreatedTimestampHasBeenSet() const { return m_createdTimestampHasBeenSet; }
185 template <typename CreatedTimestampT = Aws::Utils::DateTime>
186 void SetCreatedTimestamp(CreatedTimestampT&& value) {
187 m_createdTimestampHasBeenSet = true;
188 m_createdTimestamp = std::forward<CreatedTimestampT>(value);
189 }
190 template <typename CreatedTimestampT = Aws::Utils::DateTime>
191 KxVolume& WithCreatedTimestamp(CreatedTimestampT&& value) {
192 SetCreatedTimestamp(std::forward<CreatedTimestampT>(value));
193 return *this;
194 }
196
198
203 inline const Aws::Utils::DateTime& GetLastModifiedTimestamp() const { return m_lastModifiedTimestamp; }
204 inline bool LastModifiedTimestampHasBeenSet() const { return m_lastModifiedTimestampHasBeenSet; }
205 template <typename LastModifiedTimestampT = Aws::Utils::DateTime>
206 void SetLastModifiedTimestamp(LastModifiedTimestampT&& value) {
207 m_lastModifiedTimestampHasBeenSet = true;
208 m_lastModifiedTimestamp = std::forward<LastModifiedTimestampT>(value);
209 }
210 template <typename LastModifiedTimestampT = Aws::Utils::DateTime>
211 KxVolume& WithLastModifiedTimestamp(LastModifiedTimestampT&& value) {
212 SetLastModifiedTimestamp(std::forward<LastModifiedTimestampT>(value));
213 return *this;
214 }
216 private:
217 Aws::String m_volumeName;
218
220
222
223 Aws::String m_description;
224
225 Aws::String m_statusReason;
226
227 KxAzMode m_azMode{KxAzMode::NOT_SET};
228
229 Aws::Vector<Aws::String> m_availabilityZoneIds;
230
231 Aws::Utils::DateTime m_createdTimestamp{};
232
233 Aws::Utils::DateTime m_lastModifiedTimestamp{};
234 bool m_volumeNameHasBeenSet = false;
235 bool m_volumeTypeHasBeenSet = false;
236 bool m_statusHasBeenSet = false;
237 bool m_descriptionHasBeenSet = false;
238 bool m_statusReasonHasBeenSet = false;
239 bool m_azModeHasBeenSet = false;
240 bool m_availabilityZoneIdsHasBeenSet = false;
241 bool m_createdTimestampHasBeenSet = false;
242 bool m_lastModifiedTimestampHasBeenSet = false;
243};
244
245} // namespace Model
246} // namespace finspace
247} // namespace Aws
void SetStatusReason(StatusReasonT &&value)
Definition KxVolume.h:124
bool StatusReasonHasBeenSet() const
Definition KxVolume.h:122
void SetVolumeType(KxVolumeType value)
Definition KxVolume.h:65
KxVolumeType GetVolumeType() const
Definition KxVolume.h:63
const Aws::Vector< Aws::String > & GetAvailabilityZoneIds() const
Definition KxVolume.h:157
KxVolume & WithStatus(KxVolumeStatus value)
Definition KxVolume.h:93
void SetAzMode(KxAzMode value)
Definition KxVolume.h:143
KxVolume & WithStatusReason(StatusReasonT &&value)
Definition KxVolume.h:129
const Aws::String & GetVolumeName() const
Definition KxVolume.h:44
bool AvailabilityZoneIdsHasBeenSet() const
Definition KxVolume.h:158
KxVolumeStatus GetStatus() const
Definition KxVolume.h:87
bool VolumeNameHasBeenSet() const
Definition KxVolume.h:45
const Aws::String & GetStatusReason() const
Definition KxVolume.h:121
AWS_FINSPACE_API Aws::Utils::Json::JsonValue Jsonize() const
bool CreatedTimestampHasBeenSet() const
Definition KxVolume.h:184
void SetLastModifiedTimestamp(LastModifiedTimestampT &&value)
Definition KxVolume.h:206
KxAzMode GetAzMode() const
Definition KxVolume.h:141
void SetVolumeName(VolumeNameT &&value)
Definition KxVolume.h:47
KxVolume & WithCreatedTimestamp(CreatedTimestampT &&value)
Definition KxVolume.h:191
bool DescriptionHasBeenSet() const
Definition KxVolume.h:104
AWS_FINSPACE_API KxVolume & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_FINSPACE_API KxVolume(Aws::Utils::Json::JsonView jsonValue)
KxVolume & WithVolumeType(KxVolumeType value)
Definition KxVolume.h:69
void SetDescription(DescriptionT &&value)
Definition KxVolume.h:106
const Aws::Utils::DateTime & GetLastModifiedTimestamp() const
Definition KxVolume.h:203
const Aws::Utils::DateTime & GetCreatedTimestamp() const
Definition KxVolume.h:183
AWS_FINSPACE_API KxVolume()=default
KxVolume & WithAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
Definition KxVolume.h:165
KxVolume & WithDescription(DescriptionT &&value)
Definition KxVolume.h:111
void SetStatus(KxVolumeStatus value)
Definition KxVolume.h:89
bool VolumeTypeHasBeenSet() const
Definition KxVolume.h:64
KxVolume & WithAzMode(KxAzMode value)
Definition KxVolume.h:147
const Aws::String & GetDescription() const
Definition KxVolume.h:103
KxVolume & WithVolumeName(VolumeNameT &&value)
Definition KxVolume.h:52
void SetAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
Definition KxVolume.h:160
KxVolume & WithLastModifiedTimestamp(LastModifiedTimestampT &&value)
Definition KxVolume.h:211
KxVolume & AddAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
Definition KxVolume.h:170
bool LastModifiedTimestampHasBeenSet() const
Definition KxVolume.h:204
void SetCreatedTimestamp(CreatedTimestampT &&value)
Definition KxVolume.h:186
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue