AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
ClusterSlurmConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/pcs/PCS_EXPORTS.h>
9#include <aws/pcs/model/Accounting.h>
10#include <aws/pcs/model/CgroupCustomSetting.h>
11#include <aws/pcs/model/JwtAuth.h>
12#include <aws/pcs/model/SlurmAuthKey.h>
13#include <aws/pcs/model/SlurmCustomSetting.h>
14#include <aws/pcs/model/SlurmRest.h>
15#include <aws/pcs/model/SlurmdbdCustomSetting.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace PCS {
27namespace Model {
28
36 public:
37 AWS_PCS_API ClusterSlurmConfiguration() = default;
41
43
47 inline int GetScaleDownIdleTimeInSeconds() const { return m_scaleDownIdleTimeInSeconds; }
48 inline bool ScaleDownIdleTimeInSecondsHasBeenSet() const { return m_scaleDownIdleTimeInSecondsHasBeenSet; }
49 inline void SetScaleDownIdleTimeInSeconds(int value) {
50 m_scaleDownIdleTimeInSecondsHasBeenSet = true;
51 m_scaleDownIdleTimeInSeconds = value;
52 }
55 return *this;
56 }
58
60
64 inline const Aws::Vector<SlurmCustomSetting>& GetSlurmCustomSettings() const { return m_slurmCustomSettings; }
65 inline bool SlurmCustomSettingsHasBeenSet() const { return m_slurmCustomSettingsHasBeenSet; }
66 template <typename SlurmCustomSettingsT = Aws::Vector<SlurmCustomSetting>>
67 void SetSlurmCustomSettings(SlurmCustomSettingsT&& value) {
68 m_slurmCustomSettingsHasBeenSet = true;
69 m_slurmCustomSettings = std::forward<SlurmCustomSettingsT>(value);
70 }
71 template <typename SlurmCustomSettingsT = Aws::Vector<SlurmCustomSetting>>
72 ClusterSlurmConfiguration& WithSlurmCustomSettings(SlurmCustomSettingsT&& value) {
73 SetSlurmCustomSettings(std::forward<SlurmCustomSettingsT>(value));
74 return *this;
75 }
76 template <typename SlurmCustomSettingsT = SlurmCustomSetting>
77 ClusterSlurmConfiguration& AddSlurmCustomSettings(SlurmCustomSettingsT&& value) {
78 m_slurmCustomSettingsHasBeenSet = true;
79 m_slurmCustomSettings.emplace_back(std::forward<SlurmCustomSettingsT>(value));
80 return *this;
81 }
83
85
89 inline const Aws::Vector<SlurmdbdCustomSetting>& GetSlurmdbdCustomSettings() const { return m_slurmdbdCustomSettings; }
90 inline bool SlurmdbdCustomSettingsHasBeenSet() const { return m_slurmdbdCustomSettingsHasBeenSet; }
91 template <typename SlurmdbdCustomSettingsT = Aws::Vector<SlurmdbdCustomSetting>>
92 void SetSlurmdbdCustomSettings(SlurmdbdCustomSettingsT&& value) {
93 m_slurmdbdCustomSettingsHasBeenSet = true;
94 m_slurmdbdCustomSettings = std::forward<SlurmdbdCustomSettingsT>(value);
95 }
96 template <typename SlurmdbdCustomSettingsT = Aws::Vector<SlurmdbdCustomSetting>>
97 ClusterSlurmConfiguration& WithSlurmdbdCustomSettings(SlurmdbdCustomSettingsT&& value) {
98 SetSlurmdbdCustomSettings(std::forward<SlurmdbdCustomSettingsT>(value));
99 return *this;
100 }
101 template <typename SlurmdbdCustomSettingsT = SlurmdbdCustomSetting>
102 ClusterSlurmConfiguration& AddSlurmdbdCustomSettings(SlurmdbdCustomSettingsT&& value) {
103 m_slurmdbdCustomSettingsHasBeenSet = true;
104 m_slurmdbdCustomSettings.emplace_back(std::forward<SlurmdbdCustomSettingsT>(value));
105 return *this;
106 }
108
110
114 inline const Aws::Vector<CgroupCustomSetting>& GetCgroupCustomSettings() const { return m_cgroupCustomSettings; }
115 inline bool CgroupCustomSettingsHasBeenSet() const { return m_cgroupCustomSettingsHasBeenSet; }
116 template <typename CgroupCustomSettingsT = Aws::Vector<CgroupCustomSetting>>
117 void SetCgroupCustomSettings(CgroupCustomSettingsT&& value) {
118 m_cgroupCustomSettingsHasBeenSet = true;
119 m_cgroupCustomSettings = std::forward<CgroupCustomSettingsT>(value);
120 }
121 template <typename CgroupCustomSettingsT = Aws::Vector<CgroupCustomSetting>>
122 ClusterSlurmConfiguration& WithCgroupCustomSettings(CgroupCustomSettingsT&& value) {
123 SetCgroupCustomSettings(std::forward<CgroupCustomSettingsT>(value));
124 return *this;
125 }
126 template <typename CgroupCustomSettingsT = CgroupCustomSetting>
127 ClusterSlurmConfiguration& AddCgroupCustomSettings(CgroupCustomSettingsT&& value) {
128 m_cgroupCustomSettingsHasBeenSet = true;
129 m_cgroupCustomSettings.emplace_back(std::forward<CgroupCustomSettingsT>(value));
130 return *this;
131 }
133
135
139 inline const SlurmAuthKey& GetAuthKey() const { return m_authKey; }
140 inline bool AuthKeyHasBeenSet() const { return m_authKeyHasBeenSet; }
141 template <typename AuthKeyT = SlurmAuthKey>
142 void SetAuthKey(AuthKeyT&& value) {
143 m_authKeyHasBeenSet = true;
144 m_authKey = std::forward<AuthKeyT>(value);
145 }
146 template <typename AuthKeyT = SlurmAuthKey>
148 SetAuthKey(std::forward<AuthKeyT>(value));
149 return *this;
150 }
152
154
157 inline const JwtAuth& GetJwtAuth() const { return m_jwtAuth; }
158 inline bool JwtAuthHasBeenSet() const { return m_jwtAuthHasBeenSet; }
159 template <typename JwtAuthT = JwtAuth>
160 void SetJwtAuth(JwtAuthT&& value) {
161 m_jwtAuthHasBeenSet = true;
162 m_jwtAuth = std::forward<JwtAuthT>(value);
163 }
164 template <typename JwtAuthT = JwtAuth>
166 SetJwtAuth(std::forward<JwtAuthT>(value));
167 return *this;
168 }
170
172
176 inline const Accounting& GetAccounting() const { return m_accounting; }
177 inline bool AccountingHasBeenSet() const { return m_accountingHasBeenSet; }
178 template <typename AccountingT = Accounting>
179 void SetAccounting(AccountingT&& value) {
180 m_accountingHasBeenSet = true;
181 m_accounting = std::forward<AccountingT>(value);
182 }
183 template <typename AccountingT = Accounting>
185 SetAccounting(std::forward<AccountingT>(value));
186 return *this;
187 }
189
191
194 inline const SlurmRest& GetSlurmRest() const { return m_slurmRest; }
195 inline bool SlurmRestHasBeenSet() const { return m_slurmRestHasBeenSet; }
196 template <typename SlurmRestT = SlurmRest>
197 void SetSlurmRest(SlurmRestT&& value) {
198 m_slurmRestHasBeenSet = true;
199 m_slurmRest = std::forward<SlurmRestT>(value);
200 }
201 template <typename SlurmRestT = SlurmRest>
203 SetSlurmRest(std::forward<SlurmRestT>(value));
204 return *this;
205 }
207 private:
208 int m_scaleDownIdleTimeInSeconds{0};
209
210 Aws::Vector<SlurmCustomSetting> m_slurmCustomSettings;
211
212 Aws::Vector<SlurmdbdCustomSetting> m_slurmdbdCustomSettings;
213
214 Aws::Vector<CgroupCustomSetting> m_cgroupCustomSettings;
215
216 SlurmAuthKey m_authKey;
217
218 JwtAuth m_jwtAuth;
219
220 Accounting m_accounting;
221
222 SlurmRest m_slurmRest;
223 bool m_scaleDownIdleTimeInSecondsHasBeenSet = false;
224 bool m_slurmCustomSettingsHasBeenSet = false;
225 bool m_slurmdbdCustomSettingsHasBeenSet = false;
226 bool m_cgroupCustomSettingsHasBeenSet = false;
227 bool m_authKeyHasBeenSet = false;
228 bool m_jwtAuthHasBeenSet = false;
229 bool m_accountingHasBeenSet = false;
230 bool m_slurmRestHasBeenSet = false;
231};
232
233} // namespace Model
234} // namespace PCS
235} // namespace Aws
ClusterSlurmConfiguration & WithAccounting(AccountingT &&value)
ClusterSlurmConfiguration & AddCgroupCustomSettings(CgroupCustomSettingsT &&value)
AWS_PCS_API ClusterSlurmConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
ClusterSlurmConfiguration & AddSlurmdbdCustomSettings(SlurmdbdCustomSettingsT &&value)
AWS_PCS_API ClusterSlurmConfiguration(Aws::Utils::Json::JsonView jsonValue)
ClusterSlurmConfiguration & WithSlurmRest(SlurmRestT &&value)
const Aws::Vector< CgroupCustomSetting > & GetCgroupCustomSettings() const
const Aws::Vector< SlurmdbdCustomSetting > & GetSlurmdbdCustomSettings() const
void SetCgroupCustomSettings(CgroupCustomSettingsT &&value)
ClusterSlurmConfiguration & WithJwtAuth(JwtAuthT &&value)
void SetSlurmdbdCustomSettings(SlurmdbdCustomSettingsT &&value)
AWS_PCS_API ClusterSlurmConfiguration()=default
ClusterSlurmConfiguration & AddSlurmCustomSettings(SlurmCustomSettingsT &&value)
ClusterSlurmConfiguration & WithScaleDownIdleTimeInSeconds(int value)
ClusterSlurmConfiguration & WithSlurmCustomSettings(SlurmCustomSettingsT &&value)
AWS_PCS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetSlurmCustomSettings(SlurmCustomSettingsT &&value)
ClusterSlurmConfiguration & WithSlurmdbdCustomSettings(SlurmdbdCustomSettingsT &&value)
const Aws::Vector< SlurmCustomSetting > & GetSlurmCustomSettings() const
ClusterSlurmConfiguration & WithCgroupCustomSettings(CgroupCustomSettingsT &&value)
ClusterSlurmConfiguration & WithAuthKey(AuthKeyT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue