AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ClusterSlurmConfiguration.h
1
6#pragma once
7#include <aws/pcs/PCS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/pcs/model/SlurmAuthKey.h>
10#include <aws/pcs/model/Accounting.h>
11#include <aws/pcs/model/SlurmCustomSetting.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace PCS
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_PCS_API ClusterSlurmConfiguration() = default;
42
43
45
49 inline int GetScaleDownIdleTimeInSeconds() const { return m_scaleDownIdleTimeInSeconds; }
50 inline bool ScaleDownIdleTimeInSecondsHasBeenSet() const { return m_scaleDownIdleTimeInSecondsHasBeenSet; }
51 inline void SetScaleDownIdleTimeInSeconds(int value) { m_scaleDownIdleTimeInSecondsHasBeenSet = true; m_scaleDownIdleTimeInSeconds = value; }
54
56
60 inline const Aws::Vector<SlurmCustomSetting>& GetSlurmCustomSettings() const { return m_slurmCustomSettings; }
61 inline bool SlurmCustomSettingsHasBeenSet() const { return m_slurmCustomSettingsHasBeenSet; }
62 template<typename SlurmCustomSettingsT = Aws::Vector<SlurmCustomSetting>>
63 void SetSlurmCustomSettings(SlurmCustomSettingsT&& value) { m_slurmCustomSettingsHasBeenSet = true; m_slurmCustomSettings = std::forward<SlurmCustomSettingsT>(value); }
64 template<typename SlurmCustomSettingsT = Aws::Vector<SlurmCustomSetting>>
65 ClusterSlurmConfiguration& WithSlurmCustomSettings(SlurmCustomSettingsT&& value) { SetSlurmCustomSettings(std::forward<SlurmCustomSettingsT>(value)); return *this;}
66 template<typename SlurmCustomSettingsT = SlurmCustomSetting>
67 ClusterSlurmConfiguration& AddSlurmCustomSettings(SlurmCustomSettingsT&& value) { m_slurmCustomSettingsHasBeenSet = true; m_slurmCustomSettings.emplace_back(std::forward<SlurmCustomSettingsT>(value)); return *this; }
69
71
75 inline const SlurmAuthKey& GetAuthKey() const { return m_authKey; }
76 inline bool AuthKeyHasBeenSet() const { return m_authKeyHasBeenSet; }
77 template<typename AuthKeyT = SlurmAuthKey>
78 void SetAuthKey(AuthKeyT&& value) { m_authKeyHasBeenSet = true; m_authKey = std::forward<AuthKeyT>(value); }
79 template<typename AuthKeyT = SlurmAuthKey>
80 ClusterSlurmConfiguration& WithAuthKey(AuthKeyT&& value) { SetAuthKey(std::forward<AuthKeyT>(value)); return *this;}
82
84
88 inline const Accounting& GetAccounting() const { return m_accounting; }
89 inline bool AccountingHasBeenSet() const { return m_accountingHasBeenSet; }
90 template<typename AccountingT = Accounting>
91 void SetAccounting(AccountingT&& value) { m_accountingHasBeenSet = true; m_accounting = std::forward<AccountingT>(value); }
92 template<typename AccountingT = Accounting>
93 ClusterSlurmConfiguration& WithAccounting(AccountingT&& value) { SetAccounting(std::forward<AccountingT>(value)); return *this;}
95 private:
96
97 int m_scaleDownIdleTimeInSeconds{0};
98 bool m_scaleDownIdleTimeInSecondsHasBeenSet = false;
99
100 Aws::Vector<SlurmCustomSetting> m_slurmCustomSettings;
101 bool m_slurmCustomSettingsHasBeenSet = false;
102
103 SlurmAuthKey m_authKey;
104 bool m_authKeyHasBeenSet = false;
105
106 Accounting m_accounting;
107 bool m_accountingHasBeenSet = false;
108 };
109
110} // namespace Model
111} // namespace PCS
112} // namespace Aws
ClusterSlurmConfiguration & WithAccounting(AccountingT &&value)
AWS_PCS_API ClusterSlurmConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_PCS_API ClusterSlurmConfiguration(Aws::Utils::Json::JsonView jsonValue)
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)
const Aws::Vector< SlurmCustomSetting > & GetSlurmCustomSettings() const
ClusterSlurmConfiguration & WithAuthKey(AuthKeyT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue