AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
InstanceCollection.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace AutoScaling {
21namespace Model {
22
30 public:
31 AWS_AUTOSCALING_API InstanceCollection() = default;
32 AWS_AUTOSCALING_API InstanceCollection(const Aws::Utils::Xml::XmlNode& xmlNode);
33 AWS_AUTOSCALING_API InstanceCollection& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
34
35 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
36 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
37
39
42 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
43 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
44 template <typename InstanceTypeT = Aws::String>
45 void SetInstanceType(InstanceTypeT&& value) {
46 m_instanceTypeHasBeenSet = true;
47 m_instanceType = std::forward<InstanceTypeT>(value);
48 }
49 template <typename InstanceTypeT = Aws::String>
50 InstanceCollection& WithInstanceType(InstanceTypeT&& value) {
51 SetInstanceType(std::forward<InstanceTypeT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetMarketType() const { return m_marketType; }
61 inline bool MarketTypeHasBeenSet() const { return m_marketTypeHasBeenSet; }
62 template <typename MarketTypeT = Aws::String>
63 void SetMarketType(MarketTypeT&& value) {
64 m_marketTypeHasBeenSet = true;
65 m_marketType = std::forward<MarketTypeT>(value);
66 }
67 template <typename MarketTypeT = Aws::String>
68 InstanceCollection& WithMarketType(MarketTypeT&& value) {
69 SetMarketType(std::forward<MarketTypeT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
79 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
80 template <typename SubnetIdT = Aws::String>
81 void SetSubnetId(SubnetIdT&& value) {
82 m_subnetIdHasBeenSet = true;
83 m_subnetId = std::forward<SubnetIdT>(value);
84 }
85 template <typename SubnetIdT = Aws::String>
86 InstanceCollection& WithSubnetId(SubnetIdT&& value) {
87 SetSubnetId(std::forward<SubnetIdT>(value));
88 return *this;
89 }
91
93
96 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
97 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
98 template <typename AvailabilityZoneT = Aws::String>
99 void SetAvailabilityZone(AvailabilityZoneT&& value) {
100 m_availabilityZoneHasBeenSet = true;
101 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
102 }
103 template <typename AvailabilityZoneT = Aws::String>
104 InstanceCollection& WithAvailabilityZone(AvailabilityZoneT&& value) {
105 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
106 return *this;
107 }
109
111
115 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
116 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
117 template <typename AvailabilityZoneIdT = Aws::String>
118 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
119 m_availabilityZoneIdHasBeenSet = true;
120 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
121 }
122 template <typename AvailabilityZoneIdT = Aws::String>
123 InstanceCollection& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) {
124 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
125 return *this;
126 }
128
130
133 inline const Aws::Vector<Aws::String>& GetInstanceIds() const { return m_instanceIds; }
134 inline bool InstanceIdsHasBeenSet() const { return m_instanceIdsHasBeenSet; }
135 template <typename InstanceIdsT = Aws::Vector<Aws::String>>
136 void SetInstanceIds(InstanceIdsT&& value) {
137 m_instanceIdsHasBeenSet = true;
138 m_instanceIds = std::forward<InstanceIdsT>(value);
139 }
140 template <typename InstanceIdsT = Aws::Vector<Aws::String>>
141 InstanceCollection& WithInstanceIds(InstanceIdsT&& value) {
142 SetInstanceIds(std::forward<InstanceIdsT>(value));
143 return *this;
144 }
145 template <typename InstanceIdsT = Aws::String>
146 InstanceCollection& AddInstanceIds(InstanceIdsT&& value) {
147 m_instanceIdsHasBeenSet = true;
148 m_instanceIds.emplace_back(std::forward<InstanceIdsT>(value));
149 return *this;
150 }
152 private:
153 Aws::String m_instanceType;
154
155 Aws::String m_marketType;
156
157 Aws::String m_subnetId;
158
159 Aws::String m_availabilityZone;
160
161 Aws::String m_availabilityZoneId;
162
163 Aws::Vector<Aws::String> m_instanceIds;
164 bool m_instanceTypeHasBeenSet = false;
165 bool m_marketTypeHasBeenSet = false;
166 bool m_subnetIdHasBeenSet = false;
167 bool m_availabilityZoneHasBeenSet = false;
168 bool m_availabilityZoneIdHasBeenSet = false;
169 bool m_instanceIdsHasBeenSet = false;
170};
171
172} // namespace Model
173} // namespace AutoScaling
174} // namespace Aws
InstanceCollection & WithInstanceType(InstanceTypeT &&value)
const Aws::String & GetAvailabilityZone() const
const Aws::Vector< Aws::String > & GetInstanceIds() const
InstanceCollection & WithAvailabilityZone(AvailabilityZoneT &&value)
InstanceCollection & WithSubnetId(SubnetIdT &&value)
AWS_AUTOSCALING_API InstanceCollection(const Aws::Utils::Xml::XmlNode &xmlNode)
InstanceCollection & AddInstanceIds(InstanceIdsT &&value)
const Aws::String & GetAvailabilityZoneId() const
AWS_AUTOSCALING_API InstanceCollection()=default
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
InstanceCollection & WithInstanceIds(InstanceIdsT &&value)
InstanceCollection & WithMarketType(MarketTypeT &&value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetAvailabilityZone(AvailabilityZoneT &&value)
InstanceCollection & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
AWS_AUTOSCALING_API InstanceCollection & 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