AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
AvailabilityZoneAddress.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace EC2 {
21namespace Model {
22
37 public:
38 AWS_EC2_API AvailabilityZoneAddress() = default;
41
42 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
43 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
44
46
54 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
55 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
56 template <typename AvailabilityZoneT = Aws::String>
57 void SetAvailabilityZone(AvailabilityZoneT&& value) {
58 m_availabilityZoneHasBeenSet = true;
59 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
60 }
61 template <typename AvailabilityZoneT = Aws::String>
62 AvailabilityZoneAddress& WithAvailabilityZone(AvailabilityZoneT&& value) {
63 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
64 return *this;
65 }
67
69
79 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
80 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
81 template <typename AvailabilityZoneIdT = Aws::String>
82 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
83 m_availabilityZoneIdHasBeenSet = true;
84 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
85 }
86 template <typename AvailabilityZoneIdT = Aws::String>
87 AvailabilityZoneAddress& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) {
88 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
89 return *this;
90 }
92
94
98 inline const Aws::Vector<Aws::String>& GetAllocationIds() const { return m_allocationIds; }
99 inline bool AllocationIdsHasBeenSet() const { return m_allocationIdsHasBeenSet; }
100 template <typename AllocationIdsT = Aws::Vector<Aws::String>>
101 void SetAllocationIds(AllocationIdsT&& value) {
102 m_allocationIdsHasBeenSet = true;
103 m_allocationIds = std::forward<AllocationIdsT>(value);
104 }
105 template <typename AllocationIdsT = Aws::Vector<Aws::String>>
107 SetAllocationIds(std::forward<AllocationIdsT>(value));
108 return *this;
109 }
110 template <typename AllocationIdsT = Aws::String>
111 AvailabilityZoneAddress& AddAllocationIds(AllocationIdsT&& value) {
112 m_allocationIdsHasBeenSet = true;
113 m_allocationIds.emplace_back(std::forward<AllocationIdsT>(value));
114 return *this;
115 }
117 private:
118 Aws::String m_availabilityZone;
119
120 Aws::String m_availabilityZoneId;
121
122 Aws::Vector<Aws::String> m_allocationIds;
123 bool m_availabilityZoneHasBeenSet = false;
124 bool m_availabilityZoneIdHasBeenSet = false;
125 bool m_allocationIdsHasBeenSet = false;
126};
127
128} // namespace Model
129} // namespace EC2
130} // namespace Aws
AvailabilityZoneAddress & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AvailabilityZoneAddress & AddAllocationIds(AllocationIdsT &&value)
AvailabilityZoneAddress & WithAvailabilityZone(AvailabilityZoneT &&value)
AWS_EC2_API AvailabilityZoneAddress(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API AvailabilityZoneAddress()=default
void SetAvailabilityZone(AvailabilityZoneT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AvailabilityZoneAddress & WithAllocationIds(AllocationIdsT &&value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
const Aws::Vector< Aws::String > & GetAllocationIds() const
AWS_EC2_API AvailabilityZoneAddress & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
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