AWS SDK for C++

AWS SDK for C++ Version 1.11.751

Loading...
Searching...
No Matches
WarmPoolConfiguration.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/autoscaling/model/InstanceReusePolicy.h>
9#include <aws/autoscaling/model/WarmPoolState.h>
10#include <aws/autoscaling/model/WarmPoolStatus.h>
11#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Xml {
18class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace AutoScaling {
22namespace Model {
23
30 public:
31 AWS_AUTOSCALING_API WarmPoolConfiguration() = default;
32 AWS_AUTOSCALING_API WarmPoolConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
33 AWS_AUTOSCALING_API WarmPoolConfiguration& 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
43 inline int GetMaxGroupPreparedCapacity() const { return m_maxGroupPreparedCapacity; }
44 inline bool MaxGroupPreparedCapacityHasBeenSet() const { return m_maxGroupPreparedCapacityHasBeenSet; }
45 inline void SetMaxGroupPreparedCapacity(int value) {
46 m_maxGroupPreparedCapacityHasBeenSet = true;
47 m_maxGroupPreparedCapacity = value;
48 }
51 return *this;
52 }
54
56
59 inline int GetMinSize() const { return m_minSize; }
60 inline bool MinSizeHasBeenSet() const { return m_minSizeHasBeenSet; }
61 inline void SetMinSize(int value) {
62 m_minSizeHasBeenSet = true;
63 m_minSize = value;
64 }
66 SetMinSize(value);
67 return *this;
68 }
70
72
76 inline WarmPoolState GetPoolState() const { return m_poolState; }
77 inline bool PoolStateHasBeenSet() const { return m_poolStateHasBeenSet; }
78 inline void SetPoolState(WarmPoolState value) {
79 m_poolStateHasBeenSet = true;
80 m_poolState = value;
81 }
83 SetPoolState(value);
84 return *this;
85 }
87
89
92 inline WarmPoolStatus GetStatus() const { return m_status; }
93 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
94 inline void SetStatus(WarmPoolStatus value) {
95 m_statusHasBeenSet = true;
96 m_status = value;
97 }
99 SetStatus(value);
100 return *this;
101 }
103
105
108 inline const InstanceReusePolicy& GetInstanceReusePolicy() const { return m_instanceReusePolicy; }
109 inline bool InstanceReusePolicyHasBeenSet() const { return m_instanceReusePolicyHasBeenSet; }
110 template <typename InstanceReusePolicyT = InstanceReusePolicy>
111 void SetInstanceReusePolicy(InstanceReusePolicyT&& value) {
112 m_instanceReusePolicyHasBeenSet = true;
113 m_instanceReusePolicy = std::forward<InstanceReusePolicyT>(value);
114 }
115 template <typename InstanceReusePolicyT = InstanceReusePolicy>
116 WarmPoolConfiguration& WithInstanceReusePolicy(InstanceReusePolicyT&& value) {
117 SetInstanceReusePolicy(std::forward<InstanceReusePolicyT>(value));
118 return *this;
119 }
121 private:
122 int m_maxGroupPreparedCapacity{0};
123
124 int m_minSize{0};
125
127
129
130 InstanceReusePolicy m_instanceReusePolicy;
131 bool m_maxGroupPreparedCapacityHasBeenSet = false;
132 bool m_minSizeHasBeenSet = false;
133 bool m_poolStateHasBeenSet = false;
134 bool m_statusHasBeenSet = false;
135 bool m_instanceReusePolicyHasBeenSet = false;
136};
137
138} // namespace Model
139} // namespace AutoScaling
140} // namespace Aws
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
WarmPoolConfiguration & WithInstanceReusePolicy(InstanceReusePolicyT &&value)
WarmPoolConfiguration & WithPoolState(WarmPoolState value)
WarmPoolConfiguration & WithMinSize(int value)
const InstanceReusePolicy & GetInstanceReusePolicy() const
void SetInstanceReusePolicy(InstanceReusePolicyT &&value)
WarmPoolConfiguration & WithMaxGroupPreparedCapacity(int value)
AWS_AUTOSCALING_API WarmPoolConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_AUTOSCALING_API WarmPoolConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
WarmPoolConfiguration & WithStatus(WarmPoolStatus value)
AWS_AUTOSCALING_API WarmPoolConfiguration()=default
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
std::basic_ostream< char, std::char_traits< char > > OStream