AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
VolumeStatusItem.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/ec2/model/VolumeStatusInfo.h>
12#include <aws/ec2/model/InitializationStatusDetails.h>
13#include <aws/ec2/model/VolumeStatusAction.h>
14#include <aws/ec2/model/VolumeStatusEvent.h>
15#include <aws/ec2/model/VolumeStatusAttachmentStatus.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Xml
23{
24 class XmlNode;
25} // namespace Xml
26} // namespace Utils
27namespace EC2
28{
29namespace Model
30{
31
38 {
39 public:
40 AWS_EC2_API VolumeStatusItem() = default;
41 AWS_EC2_API VolumeStatusItem(const Aws::Utils::Xml::XmlNode& xmlNode);
43
44 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
45 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
46
47
49
52 inline const Aws::Vector<VolumeStatusAction>& GetActions() const { return m_actions; }
53 inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; }
54 template<typename ActionsT = Aws::Vector<VolumeStatusAction>>
55 void SetActions(ActionsT&& value) { m_actionsHasBeenSet = true; m_actions = std::forward<ActionsT>(value); }
56 template<typename ActionsT = Aws::Vector<VolumeStatusAction>>
57 VolumeStatusItem& WithActions(ActionsT&& value) { SetActions(std::forward<ActionsT>(value)); return *this;}
58 template<typename ActionsT = VolumeStatusAction>
59 VolumeStatusItem& AddActions(ActionsT&& value) { m_actionsHasBeenSet = true; m_actions.emplace_back(std::forward<ActionsT>(value)); return *this; }
61
63
66 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
67 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
68 template<typename AvailabilityZoneT = Aws::String>
69 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
70 template<typename AvailabilityZoneT = Aws::String>
71 VolumeStatusItem& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
73
75
78 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
79 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
80 template<typename OutpostArnT = Aws::String>
81 void SetOutpostArn(OutpostArnT&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::forward<OutpostArnT>(value); }
82 template<typename OutpostArnT = Aws::String>
83 VolumeStatusItem& WithOutpostArn(OutpostArnT&& value) { SetOutpostArn(std::forward<OutpostArnT>(value)); return *this;}
85
87
90 inline const Aws::Vector<VolumeStatusEvent>& GetEvents() const { return m_events; }
91 inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; }
92 template<typename EventsT = Aws::Vector<VolumeStatusEvent>>
93 void SetEvents(EventsT&& value) { m_eventsHasBeenSet = true; m_events = std::forward<EventsT>(value); }
94 template<typename EventsT = Aws::Vector<VolumeStatusEvent>>
95 VolumeStatusItem& WithEvents(EventsT&& value) { SetEvents(std::forward<EventsT>(value)); return *this;}
96 template<typename EventsT = VolumeStatusEvent>
97 VolumeStatusItem& AddEvents(EventsT&& value) { m_eventsHasBeenSet = true; m_events.emplace_back(std::forward<EventsT>(value)); return *this; }
99
101
104 inline const Aws::String& GetVolumeId() const { return m_volumeId; }
105 inline bool VolumeIdHasBeenSet() const { return m_volumeIdHasBeenSet; }
106 template<typename VolumeIdT = Aws::String>
107 void SetVolumeId(VolumeIdT&& value) { m_volumeIdHasBeenSet = true; m_volumeId = std::forward<VolumeIdT>(value); }
108 template<typename VolumeIdT = Aws::String>
109 VolumeStatusItem& WithVolumeId(VolumeIdT&& value) { SetVolumeId(std::forward<VolumeIdT>(value)); return *this;}
111
113
116 inline const VolumeStatusInfo& GetVolumeStatus() const { return m_volumeStatus; }
117 inline bool VolumeStatusHasBeenSet() const { return m_volumeStatusHasBeenSet; }
118 template<typename VolumeStatusT = VolumeStatusInfo>
119 void SetVolumeStatus(VolumeStatusT&& value) { m_volumeStatusHasBeenSet = true; m_volumeStatus = std::forward<VolumeStatusT>(value); }
120 template<typename VolumeStatusT = VolumeStatusInfo>
121 VolumeStatusItem& WithVolumeStatus(VolumeStatusT&& value) { SetVolumeStatus(std::forward<VolumeStatusT>(value)); return *this;}
123
125
128 inline const Aws::Vector<VolumeStatusAttachmentStatus>& GetAttachmentStatuses() const { return m_attachmentStatuses; }
129 inline bool AttachmentStatusesHasBeenSet() const { return m_attachmentStatusesHasBeenSet; }
130 template<typename AttachmentStatusesT = Aws::Vector<VolumeStatusAttachmentStatus>>
131 void SetAttachmentStatuses(AttachmentStatusesT&& value) { m_attachmentStatusesHasBeenSet = true; m_attachmentStatuses = std::forward<AttachmentStatusesT>(value); }
132 template<typename AttachmentStatusesT = Aws::Vector<VolumeStatusAttachmentStatus>>
133 VolumeStatusItem& WithAttachmentStatuses(AttachmentStatusesT&& value) { SetAttachmentStatuses(std::forward<AttachmentStatusesT>(value)); return *this;}
134 template<typename AttachmentStatusesT = VolumeStatusAttachmentStatus>
135 VolumeStatusItem& AddAttachmentStatuses(AttachmentStatusesT&& value) { m_attachmentStatusesHasBeenSet = true; m_attachmentStatuses.emplace_back(std::forward<AttachmentStatusesT>(value)); return *this; }
137
139
147 inline const InitializationStatusDetails& GetInitializationStatusDetails() const { return m_initializationStatusDetails; }
148 inline bool InitializationStatusDetailsHasBeenSet() const { return m_initializationStatusDetailsHasBeenSet; }
149 template<typename InitializationStatusDetailsT = InitializationStatusDetails>
150 void SetInitializationStatusDetails(InitializationStatusDetailsT&& value) { m_initializationStatusDetailsHasBeenSet = true; m_initializationStatusDetails = std::forward<InitializationStatusDetailsT>(value); }
151 template<typename InitializationStatusDetailsT = InitializationStatusDetails>
152 VolumeStatusItem& WithInitializationStatusDetails(InitializationStatusDetailsT&& value) { SetInitializationStatusDetails(std::forward<InitializationStatusDetailsT>(value)); return *this;}
154
156
159 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
160 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
161 template<typename AvailabilityZoneIdT = Aws::String>
162 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value); }
163 template<typename AvailabilityZoneIdT = Aws::String>
164 VolumeStatusItem& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) { SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value)); return *this;}
166 private:
167
169 bool m_actionsHasBeenSet = false;
170
171 Aws::String m_availabilityZone;
172 bool m_availabilityZoneHasBeenSet = false;
173
174 Aws::String m_outpostArn;
175 bool m_outpostArnHasBeenSet = false;
176
178 bool m_eventsHasBeenSet = false;
179
180 Aws::String m_volumeId;
181 bool m_volumeIdHasBeenSet = false;
182
183 VolumeStatusInfo m_volumeStatus;
184 bool m_volumeStatusHasBeenSet = false;
185
187 bool m_attachmentStatusesHasBeenSet = false;
188
189 InitializationStatusDetails m_initializationStatusDetails;
190 bool m_initializationStatusDetailsHasBeenSet = false;
191
192 Aws::String m_availabilityZoneId;
193 bool m_availabilityZoneIdHasBeenSet = false;
194 };
195
196} // namespace Model
197} // namespace EC2
198} // namespace Aws
const Aws::Vector< VolumeStatusEvent > & GetEvents() const
void SetVolumeId(VolumeIdT &&value)
const InitializationStatusDetails & GetInitializationStatusDetails() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetOutpostArn(OutpostArnT &&value)
VolumeStatusItem & AddEvents(EventsT &&value)
VolumeStatusItem & WithOutpostArn(OutpostArnT &&value)
AWS_EC2_API VolumeStatusItem(const Aws::Utils::Xml::XmlNode &xmlNode)
VolumeStatusItem & AddActions(ActionsT &&value)
const Aws::String & GetOutpostArn() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetVolumeStatus(VolumeStatusT &&value)
void SetAttachmentStatuses(AttachmentStatusesT &&value)
AWS_EC2_API VolumeStatusItem()=default
VolumeStatusItem & WithEvents(EventsT &&value)
const Aws::String & GetAvailabilityZone() const
VolumeStatusItem & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
VolumeStatusItem & AddAttachmentStatuses(AttachmentStatusesT &&value)
void SetInitializationStatusDetails(InitializationStatusDetailsT &&value)
const Aws::Vector< VolumeStatusAttachmentStatus > & GetAttachmentStatuses() const
const Aws::String & GetAvailabilityZoneId() const
const Aws::Vector< VolumeStatusAction > & GetActions() const
VolumeStatusItem & WithActions(ActionsT &&value)
VolumeStatusItem & WithAvailabilityZone(AvailabilityZoneT &&value)
VolumeStatusItem & WithAttachmentStatuses(AttachmentStatusesT &&value)
VolumeStatusItem & WithVolumeId(VolumeIdT &&value)
VolumeStatusItem & WithInitializationStatusDetails(InitializationStatusDetailsT &&value)
const VolumeStatusInfo & GetVolumeStatus() const
void SetActions(ActionsT &&value)
AWS_EC2_API VolumeStatusItem & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetAvailabilityZone(AvailabilityZoneT &&value)
const Aws::String & GetVolumeId() const
VolumeStatusItem & WithVolumeStatus(VolumeStatusT &&value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream