AWS SDK for C++

AWS SDK for C++ Version 1.11.891

Loading...
Searching...
No Matches
InterruptibleCapacityAllocation.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/ec2/EC2_EXPORTS.h>
10#include <aws/ec2/model/InterruptibleCapacityReservationAllocationStatus.h>
11#include <aws/ec2/model/InterruptionType.h>
12#include <aws/ec2/model/ZeroSizePreference.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
33 public:
34 AWS_EC2_API InterruptibleCapacityAllocation() = default;
37
38 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
39 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
40
42
46 inline int GetInstanceCount() const { return m_instanceCount; }
47 inline bool InstanceCountHasBeenSet() const { return m_instanceCountHasBeenSet; }
48 inline void SetInstanceCount(int value) {
49 m_instanceCountHasBeenSet = true;
50 m_instanceCount = value;
51 }
53 SetInstanceCount(value);
54 return *this;
55 }
57
59
63 inline int GetTargetInstanceCount() const { return m_targetInstanceCount; }
64 inline bool TargetInstanceCountHasBeenSet() const { return m_targetInstanceCountHasBeenSet; }
65 inline void SetTargetInstanceCount(int value) {
66 m_targetInstanceCountHasBeenSet = true;
67 m_targetInstanceCount = value;
68 }
71 return *this;
72 }
74
76
81 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
83 m_statusHasBeenSet = true;
84 m_status = value;
85 }
87 SetStatus(value);
88 return *this;
89 }
91
93
97 inline const Aws::String& GetInterruptibleCapacityReservationId() const { return m_interruptibleCapacityReservationId; }
98 inline bool InterruptibleCapacityReservationIdHasBeenSet() const { return m_interruptibleCapacityReservationIdHasBeenSet; }
99 template <typename InterruptibleCapacityReservationIdT = Aws::String>
100 void SetInterruptibleCapacityReservationId(InterruptibleCapacityReservationIdT&& value) {
101 m_interruptibleCapacityReservationIdHasBeenSet = true;
102 m_interruptibleCapacityReservationId = std::forward<InterruptibleCapacityReservationIdT>(value);
103 }
104 template <typename InterruptibleCapacityReservationIdT = Aws::String>
105 InterruptibleCapacityAllocation& WithInterruptibleCapacityReservationId(InterruptibleCapacityReservationIdT&& value) {
106 SetInterruptibleCapacityReservationId(std::forward<InterruptibleCapacityReservationIdT>(value));
107 return *this;
108 }
110
112
116 inline InterruptionType GetInterruptionType() const { return m_interruptionType; }
117 inline bool InterruptionTypeHasBeenSet() const { return m_interruptionTypeHasBeenSet; }
119 m_interruptionTypeHasBeenSet = true;
120 m_interruptionType = value;
121 }
123 SetInterruptionType(value);
124 return *this;
125 }
127
129
137 inline ZeroSizePreference GetZeroSizePreference() const { return m_zeroSizePreference; }
138 inline bool ZeroSizePreferenceHasBeenSet() const { return m_zeroSizePreferenceHasBeenSet; }
140 m_zeroSizePreferenceHasBeenSet = true;
141 m_zeroSizePreference = value;
142 }
145 return *this;
146 }
148 private:
149 int m_instanceCount{0};
150
151 int m_targetInstanceCount{0};
152
154
155 Aws::String m_interruptibleCapacityReservationId;
156
158
160 bool m_instanceCountHasBeenSet = false;
161 bool m_targetInstanceCountHasBeenSet = false;
162 bool m_statusHasBeenSet = false;
163 bool m_interruptibleCapacityReservationIdHasBeenSet = false;
164 bool m_interruptionTypeHasBeenSet = false;
165 bool m_zeroSizePreferenceHasBeenSet = false;
166};
167
168} // namespace Model
169} // namespace EC2
170} // namespace Aws
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
InterruptibleCapacityAllocation & WithInterruptionType(InterruptionType value)
void SetInterruptibleCapacityReservationId(InterruptibleCapacityReservationIdT &&value)
InterruptibleCapacityAllocation & WithTargetInstanceCount(int value)
InterruptibleCapacityReservationAllocationStatus GetStatus() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetStatus(InterruptibleCapacityReservationAllocationStatus value)
InterruptibleCapacityAllocation & WithZeroSizePreference(ZeroSizePreference value)
InterruptibleCapacityAllocation & WithInstanceCount(int value)
AWS_EC2_API InterruptibleCapacityAllocation(const Aws::Utils::Xml::XmlNode &xmlNode)
InterruptibleCapacityAllocation & WithStatus(InterruptibleCapacityReservationAllocationStatus value)
AWS_EC2_API InterruptibleCapacityAllocation & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
InterruptibleCapacityAllocation & WithInterruptibleCapacityReservationId(InterruptibleCapacityReservationIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream