AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
EbsInstanceBlockDevice.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/AttachmentStatus.h>
12#include <aws/ec2/model/OperatorResponse.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2 {
23namespace Model {
24
32 public:
33 AWS_EC2_API EbsInstanceBlockDevice() = default;
36
37 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
44 inline const Aws::Utils::DateTime& GetAttachTime() const { return m_attachTime; }
45 inline bool AttachTimeHasBeenSet() const { return m_attachTimeHasBeenSet; }
46 template <typename AttachTimeT = Aws::Utils::DateTime>
47 void SetAttachTime(AttachTimeT&& value) {
48 m_attachTimeHasBeenSet = true;
49 m_attachTime = std::forward<AttachTimeT>(value);
50 }
51 template <typename AttachTimeT = Aws::Utils::DateTime>
52 EbsInstanceBlockDevice& WithAttachTime(AttachTimeT&& value) {
53 SetAttachTime(std::forward<AttachTimeT>(value));
54 return *this;
55 }
57
59
62 inline bool GetDeleteOnTermination() const { return m_deleteOnTermination; }
63 inline bool DeleteOnTerminationHasBeenSet() const { return m_deleteOnTerminationHasBeenSet; }
64 inline void SetDeleteOnTermination(bool value) {
65 m_deleteOnTerminationHasBeenSet = true;
66 m_deleteOnTermination = value;
67 }
70 return *this;
71 }
73
75
78 inline AttachmentStatus GetStatus() const { return m_status; }
79 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
80 inline void SetStatus(AttachmentStatus value) {
81 m_statusHasBeenSet = true;
82 m_status = value;
83 }
85 SetStatus(value);
86 return *this;
87 }
89
91
94 inline const Aws::String& GetVolumeId() const { return m_volumeId; }
95 inline bool VolumeIdHasBeenSet() const { return m_volumeIdHasBeenSet; }
96 template <typename VolumeIdT = Aws::String>
97 void SetVolumeId(VolumeIdT&& value) {
98 m_volumeIdHasBeenSet = true;
99 m_volumeId = std::forward<VolumeIdT>(value);
100 }
101 template <typename VolumeIdT = Aws::String>
103 SetVolumeId(std::forward<VolumeIdT>(value));
104 return *this;
105 }
107
109
113 inline const Aws::String& GetAssociatedResource() const { return m_associatedResource; }
114 inline bool AssociatedResourceHasBeenSet() const { return m_associatedResourceHasBeenSet; }
115 template <typename AssociatedResourceT = Aws::String>
116 void SetAssociatedResource(AssociatedResourceT&& value) {
117 m_associatedResourceHasBeenSet = true;
118 m_associatedResource = std::forward<AssociatedResourceT>(value);
119 }
120 template <typename AssociatedResourceT = Aws::String>
121 EbsInstanceBlockDevice& WithAssociatedResource(AssociatedResourceT&& value) {
122 SetAssociatedResource(std::forward<AssociatedResourceT>(value));
123 return *this;
124 }
126
128
133 inline const Aws::String& GetVolumeOwnerId() const { return m_volumeOwnerId; }
134 inline bool VolumeOwnerIdHasBeenSet() const { return m_volumeOwnerIdHasBeenSet; }
135 template <typename VolumeOwnerIdT = Aws::String>
136 void SetVolumeOwnerId(VolumeOwnerIdT&& value) {
137 m_volumeOwnerIdHasBeenSet = true;
138 m_volumeOwnerId = std::forward<VolumeOwnerIdT>(value);
139 }
140 template <typename VolumeOwnerIdT = Aws::String>
141 EbsInstanceBlockDevice& WithVolumeOwnerId(VolumeOwnerIdT&& value) {
142 SetVolumeOwnerId(std::forward<VolumeOwnerIdT>(value));
143 return *this;
144 }
146
148
151 inline const OperatorResponse& GetOperator() const { return m_operator; }
152 inline bool OperatorHasBeenSet() const { return m_operatorHasBeenSet; }
153 template <typename OperatorT = OperatorResponse>
154 void SetOperator(OperatorT&& value) {
155 m_operatorHasBeenSet = true;
156 m_operator = std::forward<OperatorT>(value);
157 }
158 template <typename OperatorT = OperatorResponse>
160 SetOperator(std::forward<OperatorT>(value));
161 return *this;
162 }
164 private:
165 Aws::Utils::DateTime m_attachTime{};
166
167 bool m_deleteOnTermination{false};
168
170
171 Aws::String m_volumeId;
172
173 Aws::String m_associatedResource;
174
175 Aws::String m_volumeOwnerId;
176
177 OperatorResponse m_operator;
178 bool m_attachTimeHasBeenSet = false;
179 bool m_deleteOnTerminationHasBeenSet = false;
180 bool m_statusHasBeenSet = false;
181 bool m_volumeIdHasBeenSet = false;
182 bool m_associatedResourceHasBeenSet = false;
183 bool m_volumeOwnerIdHasBeenSet = false;
184 bool m_operatorHasBeenSet = false;
185};
186
187} // namespace Model
188} // namespace EC2
189} // namespace Aws
void SetAssociatedResource(AssociatedResourceT &&value)
EbsInstanceBlockDevice & WithVolumeId(VolumeIdT &&value)
AWS_EC2_API EbsInstanceBlockDevice & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
EbsInstanceBlockDevice & WithAttachTime(AttachTimeT &&value)
const Aws::Utils::DateTime & GetAttachTime() const
EbsInstanceBlockDevice & WithDeleteOnTermination(bool value)
EbsInstanceBlockDevice & WithOperator(OperatorT &&value)
const Aws::String & GetAssociatedResource() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API EbsInstanceBlockDevice(const Aws::Utils::Xml::XmlNode &xmlNode)
EbsInstanceBlockDevice & WithVolumeOwnerId(VolumeOwnerIdT &&value)
EbsInstanceBlockDevice & WithStatus(AttachmentStatus value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const OperatorResponse & GetOperator() const
EbsInstanceBlockDevice & WithAssociatedResource(AssociatedResourceT &&value)
AWS_EC2_API EbsInstanceBlockDevice()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream