AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreateVolumeResponse.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/model/VolumeType.h>
11#include <aws/ec2/model/SSEType.h>
12#include <aws/ec2/model/VolumeState.h>
13#include <aws/core/utils/DateTime.h>
14#include <aws/ec2/model/ResponseMetadata.h>
15#include <aws/ec2/model/Tag.h>
16#include <aws/ec2/model/VolumeAttachment.h>
17#include <utility>
18
19namespace Aws
20{
21template<typename RESULT_TYPE>
22class AmazonWebServiceResult;
23
24namespace Utils
25{
26namespace Xml
27{
28 class XmlDocument;
29} // namespace Xml
30} // namespace Utils
31namespace EC2
32{
33namespace Model
34{
41 {
42 public:
43 AWS_EC2_API CreateVolumeResponse();
46
47
49
52 inline const Aws::String& GetOutpostArn() const{ return m_outpostArn; }
53 inline void SetOutpostArn(const Aws::String& value) { m_outpostArn = value; }
54 inline void SetOutpostArn(Aws::String&& value) { m_outpostArn = std::move(value); }
55 inline void SetOutpostArn(const char* value) { m_outpostArn.assign(value); }
56 inline CreateVolumeResponse& WithOutpostArn(const Aws::String& value) { SetOutpostArn(value); return *this;}
57 inline CreateVolumeResponse& WithOutpostArn(Aws::String&& value) { SetOutpostArn(std::move(value)); return *this;}
58 inline CreateVolumeResponse& WithOutpostArn(const char* value) { SetOutpostArn(value); return *this;}
60
62
69 inline int GetIops() const{ return m_iops; }
70 inline void SetIops(int value) { m_iops = value; }
71 inline CreateVolumeResponse& WithIops(int value) { SetIops(value); return *this;}
73
75
78 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
79 inline void SetTags(const Aws::Vector<Tag>& value) { m_tags = value; }
80 inline void SetTags(Aws::Vector<Tag>&& value) { m_tags = std::move(value); }
81 inline CreateVolumeResponse& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
82 inline CreateVolumeResponse& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
83 inline CreateVolumeResponse& AddTags(const Tag& value) { m_tags.push_back(value); return *this; }
84 inline CreateVolumeResponse& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; }
86
88
91 inline const VolumeType& GetVolumeType() const{ return m_volumeType; }
92 inline void SetVolumeType(const VolumeType& value) { m_volumeType = value; }
93 inline void SetVolumeType(VolumeType&& value) { m_volumeType = std::move(value); }
94 inline CreateVolumeResponse& WithVolumeType(const VolumeType& value) { SetVolumeType(value); return *this;}
95 inline CreateVolumeResponse& WithVolumeType(VolumeType&& value) { SetVolumeType(std::move(value)); return *this;}
97
99
103 inline bool GetFastRestored() const{ return m_fastRestored; }
104 inline void SetFastRestored(bool value) { m_fastRestored = value; }
105 inline CreateVolumeResponse& WithFastRestored(bool value) { SetFastRestored(value); return *this;}
107
109
112 inline bool GetMultiAttachEnabled() const{ return m_multiAttachEnabled; }
113 inline void SetMultiAttachEnabled(bool value) { m_multiAttachEnabled = value; }
114 inline CreateVolumeResponse& WithMultiAttachEnabled(bool value) { SetMultiAttachEnabled(value); return *this;}
116
118
121 inline int GetThroughput() const{ return m_throughput; }
122 inline void SetThroughput(int value) { m_throughput = value; }
123 inline CreateVolumeResponse& WithThroughput(int value) { SetThroughput(value); return *this;}
125
127
131 inline const SSEType& GetSseType() const{ return m_sseType; }
132 inline void SetSseType(const SSEType& value) { m_sseType = value; }
133 inline void SetSseType(SSEType&& value) { m_sseType = std::move(value); }
134 inline CreateVolumeResponse& WithSseType(const SSEType& value) { SetSseType(value); return *this;}
135 inline CreateVolumeResponse& WithSseType(SSEType&& value) { SetSseType(std::move(value)); return *this;}
137
139
142 inline const Aws::String& GetVolumeId() const{ return m_volumeId; }
143 inline void SetVolumeId(const Aws::String& value) { m_volumeId = value; }
144 inline void SetVolumeId(Aws::String&& value) { m_volumeId = std::move(value); }
145 inline void SetVolumeId(const char* value) { m_volumeId.assign(value); }
146 inline CreateVolumeResponse& WithVolumeId(const Aws::String& value) { SetVolumeId(value); return *this;}
147 inline CreateVolumeResponse& WithVolumeId(Aws::String&& value) { SetVolumeId(std::move(value)); return *this;}
148 inline CreateVolumeResponse& WithVolumeId(const char* value) { SetVolumeId(value); return *this;}
150
152
155 inline int GetSize() const{ return m_size; }
156 inline void SetSize(int value) { m_size = value; }
157 inline CreateVolumeResponse& WithSize(int value) { SetSize(value); return *this;}
159
161
164 inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; }
165 inline void SetSnapshotId(const Aws::String& value) { m_snapshotId = value; }
166 inline void SetSnapshotId(Aws::String&& value) { m_snapshotId = std::move(value); }
167 inline void SetSnapshotId(const char* value) { m_snapshotId.assign(value); }
168 inline CreateVolumeResponse& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;}
169 inline CreateVolumeResponse& WithSnapshotId(Aws::String&& value) { SetSnapshotId(std::move(value)); return *this;}
170 inline CreateVolumeResponse& WithSnapshotId(const char* value) { SetSnapshotId(value); return *this;}
172
174
177 inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
178 inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZone = value; }
179 inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZone = std::move(value); }
180 inline void SetAvailabilityZone(const char* value) { m_availabilityZone.assign(value); }
181 inline CreateVolumeResponse& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
182 inline CreateVolumeResponse& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;}
183 inline CreateVolumeResponse& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
185
187
190 inline const VolumeState& GetState() const{ return m_state; }
191 inline void SetState(const VolumeState& value) { m_state = value; }
192 inline void SetState(VolumeState&& value) { m_state = std::move(value); }
193 inline CreateVolumeResponse& WithState(const VolumeState& value) { SetState(value); return *this;}
194 inline CreateVolumeResponse& WithState(VolumeState&& value) { SetState(std::move(value)); return *this;}
196
198
201 inline const Aws::Utils::DateTime& GetCreateTime() const{ return m_createTime; }
202 inline void SetCreateTime(const Aws::Utils::DateTime& value) { m_createTime = value; }
203 inline void SetCreateTime(Aws::Utils::DateTime&& value) { m_createTime = std::move(value); }
204 inline CreateVolumeResponse& WithCreateTime(const Aws::Utils::DateTime& value) { SetCreateTime(value); return *this;}
205 inline CreateVolumeResponse& WithCreateTime(Aws::Utils::DateTime&& value) { SetCreateTime(std::move(value)); return *this;}
207
209
213 inline const Aws::Vector<VolumeAttachment>& GetAttachments() const{ return m_attachments; }
214 inline void SetAttachments(const Aws::Vector<VolumeAttachment>& value) { m_attachments = value; }
215 inline void SetAttachments(Aws::Vector<VolumeAttachment>&& value) { m_attachments = std::move(value); }
217 inline CreateVolumeResponse& WithAttachments(Aws::Vector<VolumeAttachment>&& value) { SetAttachments(std::move(value)); return *this;}
218 inline CreateVolumeResponse& AddAttachments(const VolumeAttachment& value) { m_attachments.push_back(value); return *this; }
219 inline CreateVolumeResponse& AddAttachments(VolumeAttachment&& value) { m_attachments.push_back(std::move(value)); return *this; }
221
223
226 inline bool GetEncrypted() const{ return m_encrypted; }
227 inline void SetEncrypted(bool value) { m_encrypted = value; }
228 inline CreateVolumeResponse& WithEncrypted(bool value) { SetEncrypted(value); return *this;}
230
232
236 inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; }
237 inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyId = value; }
238 inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyId = std::move(value); }
239 inline void SetKmsKeyId(const char* value) { m_kmsKeyId.assign(value); }
240 inline CreateVolumeResponse& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;}
241 inline CreateVolumeResponse& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;}
242 inline CreateVolumeResponse& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;}
244
246
247 inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; }
248 inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; }
249 inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); }
251 inline CreateVolumeResponse& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;}
253 private:
254
255 Aws::String m_outpostArn;
256
257 int m_iops;
258
259 Aws::Vector<Tag> m_tags;
260
261 VolumeType m_volumeType;
262
263 bool m_fastRestored;
264
265 bool m_multiAttachEnabled;
266
267 int m_throughput;
268
269 SSEType m_sseType;
270
271 Aws::String m_volumeId;
272
273 int m_size;
274
275 Aws::String m_snapshotId;
276
277 Aws::String m_availabilityZone;
278
279 VolumeState m_state;
280
281 Aws::Utils::DateTime m_createTime;
282
283 Aws::Vector<VolumeAttachment> m_attachments;
284
285 bool m_encrypted;
286
287 Aws::String m_kmsKeyId;
288
289 ResponseMetadata m_responseMetadata;
290 };
291
292} // namespace Model
293} // namespace EC2
294} // namespace Aws
void SetVolumeId(const Aws::String &value)
const Aws::String & GetSnapshotId() const
void SetAvailabilityZone(Aws::String &&value)
void SetKmsKeyId(const Aws::String &value)
CreateVolumeResponse & AddAttachments(const VolumeAttachment &value)
const Aws::String & GetAvailabilityZone() const
CreateVolumeResponse & WithVolumeId(Aws::String &&value)
CreateVolumeResponse & WithThroughput(int value)
CreateVolumeResponse & WithSseType(const SSEType &value)
CreateVolumeResponse & WithTags(const Aws::Vector< Tag > &value)
CreateVolumeResponse & WithVolumeType(const VolumeType &value)
CreateVolumeResponse & WithResponseMetadata(ResponseMetadata &&value)
void SetTags(const Aws::Vector< Tag > &value)
void SetResponseMetadata(const ResponseMetadata &value)
CreateVolumeResponse & AddTags(Tag &&value)
void SetState(const VolumeState &value)
CreateVolumeResponse & WithState(VolumeState &&value)
CreateVolumeResponse & WithResponseMetadata(const ResponseMetadata &value)
void SetAttachments(const Aws::Vector< VolumeAttachment > &value)
CreateVolumeResponse & WithOutpostArn(const Aws::String &value)
CreateVolumeResponse & WithSnapshotId(const char *value)
void SetResponseMetadata(ResponseMetadata &&value)
CreateVolumeResponse & WithKmsKeyId(const char *value)
const Aws::Vector< VolumeAttachment > & GetAttachments() const
CreateVolumeResponse & WithKmsKeyId(const Aws::String &value)
void SetCreateTime(const Aws::Utils::DateTime &value)
CreateVolumeResponse & WithAvailabilityZone(Aws::String &&value)
CreateVolumeResponse & WithKmsKeyId(Aws::String &&value)
CreateVolumeResponse & WithAttachments(const Aws::Vector< VolumeAttachment > &value)
CreateVolumeResponse & WithVolumeId(const char *value)
CreateVolumeResponse & WithCreateTime(Aws::Utils::DateTime &&value)
CreateVolumeResponse & WithSize(int value)
AWS_EC2_API CreateVolumeResponse & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
void SetVolumeType(const VolumeType &value)
CreateVolumeResponse & WithTags(Aws::Vector< Tag > &&value)
CreateVolumeResponse & WithCreateTime(const Aws::Utils::DateTime &value)
AWS_EC2_API CreateVolumeResponse(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
CreateVolumeResponse & WithMultiAttachEnabled(bool value)
CreateVolumeResponse & WithSnapshotId(Aws::String &&value)
CreateVolumeResponse & WithOutpostArn(const char *value)
CreateVolumeResponse & WithState(const VolumeState &value)
CreateVolumeResponse & WithOutpostArn(Aws::String &&value)
CreateVolumeResponse & WithAvailabilityZone(const char *value)
CreateVolumeResponse & WithIops(int value)
void SetSnapshotId(const Aws::String &value)
CreateVolumeResponse & WithAttachments(Aws::Vector< VolumeAttachment > &&value)
void SetAttachments(Aws::Vector< VolumeAttachment > &&value)
void SetTags(Aws::Vector< Tag > &&value)
CreateVolumeResponse & WithVolumeType(VolumeType &&value)
CreateVolumeResponse & WithSseType(SSEType &&value)
const ResponseMetadata & GetResponseMetadata() const
void SetOutpostArn(const Aws::String &value)
CreateVolumeResponse & AddTags(const Tag &value)
CreateVolumeResponse & WithVolumeId(const Aws::String &value)
CreateVolumeResponse & WithSnapshotId(const Aws::String &value)
CreateVolumeResponse & AddAttachments(VolumeAttachment &&value)
void SetCreateTime(Aws::Utils::DateTime &&value)
CreateVolumeResponse & WithAvailabilityZone(const Aws::String &value)
void SetAvailabilityZone(const Aws::String &value)
CreateVolumeResponse & WithFastRestored(bool value)
const Aws::Utils::DateTime & GetCreateTime() const
CreateVolumeResponse & WithEncrypted(bool value)
const Aws::String & GetOutpostArn() const
const Aws::Vector< Tag > & GetTags() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Xml::XmlDocument XmlDocument