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>
50 m_scaleDownIdleTimeInSecondsHasBeenSet =
true;
51 m_scaleDownIdleTimeInSeconds = value;
66 template <
typename SlurmCustomSettingsT = Aws::Vector<SlurmCustomSetting>>
68 m_slurmCustomSettingsHasBeenSet =
true;
69 m_slurmCustomSettings = std::forward<SlurmCustomSettingsT>(value);
71 template <
typename SlurmCustomSettingsT = Aws::Vector<SlurmCustomSetting>>
76 template <
typename SlurmCustomSettingsT = SlurmCustomSetting>
78 m_slurmCustomSettingsHasBeenSet =
true;
79 m_slurmCustomSettings.emplace_back(std::forward<SlurmCustomSettingsT>(value));
91 template <
typename SlurmdbdCustomSettingsT = Aws::Vector<SlurmdbdCustomSetting>>
93 m_slurmdbdCustomSettingsHasBeenSet =
true;
94 m_slurmdbdCustomSettings = std::forward<SlurmdbdCustomSettingsT>(value);
96 template <
typename SlurmdbdCustomSettingsT = Aws::Vector<SlurmdbdCustomSetting>>
101 template <
typename SlurmdbdCustomSettingsT = SlurmdbdCustomSetting>
103 m_slurmdbdCustomSettingsHasBeenSet =
true;
104 m_slurmdbdCustomSettings.emplace_back(std::forward<SlurmdbdCustomSettingsT>(value));
116 template <
typename CgroupCustomSettingsT = Aws::Vector<CgroupCustomSetting>>
118 m_cgroupCustomSettingsHasBeenSet =
true;
119 m_cgroupCustomSettings = std::forward<CgroupCustomSettingsT>(value);
121 template <
typename CgroupCustomSettingsT = Aws::Vector<CgroupCustomSetting>>
126 template <
typename CgroupCustomSettingsT = CgroupCustomSetting>
128 m_cgroupCustomSettingsHasBeenSet =
true;
129 m_cgroupCustomSettings.emplace_back(std::forward<CgroupCustomSettingsT>(value));
141 template <
typename AuthKeyT = SlurmAuthKey>
143 m_authKeyHasBeenSet =
true;
144 m_authKey = std::forward<AuthKeyT>(value);
146 template <
typename AuthKeyT = SlurmAuthKey>
159 template <
typename JwtAuthT = JwtAuth>
161 m_jwtAuthHasBeenSet =
true;
162 m_jwtAuth = std::forward<JwtAuthT>(value);
164 template <
typename JwtAuthT = JwtAuth>
178 template <
typename AccountingT = Accounting>
180 m_accountingHasBeenSet =
true;
181 m_accounting = std::forward<AccountingT>(value);
183 template <
typename AccountingT = Accounting>
196 template <
typename SlurmRestT = SlurmRest>
198 m_slurmRestHasBeenSet =
true;
199 m_slurmRest = std::forward<SlurmRestT>(value);
201 template <
typename SlurmRestT = SlurmRest>
208 int m_scaleDownIdleTimeInSeconds{0};
216 SlurmAuthKey m_authKey;
220 Accounting m_accounting;
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;
ClusterSlurmConfiguration & WithAccounting(AccountingT &&value)
ClusterSlurmConfiguration & AddCgroupCustomSettings(CgroupCustomSettingsT &&value)
bool ScaleDownIdleTimeInSecondsHasBeenSet() const
AWS_PCS_API ClusterSlurmConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetJwtAuth(JwtAuthT &&value)
ClusterSlurmConfiguration & AddSlurmdbdCustomSettings(SlurmdbdCustomSettingsT &&value)
void SetSlurmRest(SlurmRestT &&value)
AWS_PCS_API ClusterSlurmConfiguration(Aws::Utils::Json::JsonView jsonValue)
bool SlurmRestHasBeenSet() const
const JwtAuth & GetJwtAuth() const
ClusterSlurmConfiguration & WithSlurmRest(SlurmRestT &&value)
void SetScaleDownIdleTimeInSeconds(int value)
void SetAuthKey(AuthKeyT &&value)
const SlurmRest & GetSlurmRest() const
const Aws::Vector< CgroupCustomSetting > & GetCgroupCustomSettings() const
const SlurmAuthKey & GetAuthKey() const
const Accounting & GetAccounting() const
const Aws::Vector< SlurmdbdCustomSetting > & GetSlurmdbdCustomSettings() const
void SetCgroupCustomSettings(CgroupCustomSettingsT &&value)
ClusterSlurmConfiguration & WithJwtAuth(JwtAuthT &&value)
void SetSlurmdbdCustomSettings(SlurmdbdCustomSettingsT &&value)
bool AccountingHasBeenSet() const
int GetScaleDownIdleTimeInSeconds() const
AWS_PCS_API ClusterSlurmConfiguration()=default
ClusterSlurmConfiguration & AddSlurmCustomSettings(SlurmCustomSettingsT &&value)
bool SlurmdbdCustomSettingsHasBeenSet() const
ClusterSlurmConfiguration & WithScaleDownIdleTimeInSeconds(int value)
bool SlurmCustomSettingsHasBeenSet() const
ClusterSlurmConfiguration & WithSlurmCustomSettings(SlurmCustomSettingsT &&value)
AWS_PCS_API Aws::Utils::Json::JsonValue Jsonize() const
bool JwtAuthHasBeenSet() const
void SetSlurmCustomSettings(SlurmCustomSettingsT &&value)
ClusterSlurmConfiguration & WithSlurmdbdCustomSettings(SlurmdbdCustomSettingsT &&value)
const Aws::Vector< SlurmCustomSetting > & GetSlurmCustomSettings() const
bool CgroupCustomSettingsHasBeenSet() const
ClusterSlurmConfiguration & WithCgroupCustomSettings(CgroupCustomSettingsT &&value)
bool AuthKeyHasBeenSet() const
ClusterSlurmConfiguration & WithAuthKey(AuthKeyT &&value)
void SetAccounting(AccountingT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue