AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
ClusterSlurmConfigurationRequest.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/AccountingRequest.h>
10#include <aws/pcs/model/CgroupCustomSetting.h>
11#include <aws/pcs/model/SlurmCustomSetting.h>
12#include <aws/pcs/model/SlurmRestRequest.h>
13#include <aws/pcs/model/SlurmdbdCustomSetting.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace PCS {
25namespace Model {
26
34 public:
35 AWS_PCS_API ClusterSlurmConfigurationRequest() = default;
39
41
45 inline int GetScaleDownIdleTimeInSeconds() const { return m_scaleDownIdleTimeInSeconds; }
46 inline bool ScaleDownIdleTimeInSecondsHasBeenSet() const { return m_scaleDownIdleTimeInSecondsHasBeenSet; }
47 inline void SetScaleDownIdleTimeInSeconds(int value) {
48 m_scaleDownIdleTimeInSecondsHasBeenSet = true;
49 m_scaleDownIdleTimeInSeconds = value;
50 }
53 return *this;
54 }
56
58
62 inline const Aws::Vector<SlurmCustomSetting>& GetSlurmCustomSettings() const { return m_slurmCustomSettings; }
63 inline bool SlurmCustomSettingsHasBeenSet() const { return m_slurmCustomSettingsHasBeenSet; }
64 template <typename SlurmCustomSettingsT = Aws::Vector<SlurmCustomSetting>>
65 void SetSlurmCustomSettings(SlurmCustomSettingsT&& value) {
66 m_slurmCustomSettingsHasBeenSet = true;
67 m_slurmCustomSettings = std::forward<SlurmCustomSettingsT>(value);
68 }
69 template <typename SlurmCustomSettingsT = Aws::Vector<SlurmCustomSetting>>
71 SetSlurmCustomSettings(std::forward<SlurmCustomSettingsT>(value));
72 return *this;
73 }
74 template <typename SlurmCustomSettingsT = SlurmCustomSetting>
76 m_slurmCustomSettingsHasBeenSet = true;
77 m_slurmCustomSettings.emplace_back(std::forward<SlurmCustomSettingsT>(value));
78 return *this;
79 }
81
83
87 inline const Aws::Vector<SlurmdbdCustomSetting>& GetSlurmdbdCustomSettings() const { return m_slurmdbdCustomSettings; }
88 inline bool SlurmdbdCustomSettingsHasBeenSet() const { return m_slurmdbdCustomSettingsHasBeenSet; }
89 template <typename SlurmdbdCustomSettingsT = Aws::Vector<SlurmdbdCustomSetting>>
90 void SetSlurmdbdCustomSettings(SlurmdbdCustomSettingsT&& value) {
91 m_slurmdbdCustomSettingsHasBeenSet = true;
92 m_slurmdbdCustomSettings = std::forward<SlurmdbdCustomSettingsT>(value);
93 }
94 template <typename SlurmdbdCustomSettingsT = Aws::Vector<SlurmdbdCustomSetting>>
96 SetSlurmdbdCustomSettings(std::forward<SlurmdbdCustomSettingsT>(value));
97 return *this;
98 }
99 template <typename SlurmdbdCustomSettingsT = SlurmdbdCustomSetting>
101 m_slurmdbdCustomSettingsHasBeenSet = true;
102 m_slurmdbdCustomSettings.emplace_back(std::forward<SlurmdbdCustomSettingsT>(value));
103 return *this;
104 }
106
108
112 inline const Aws::Vector<CgroupCustomSetting>& GetCgroupCustomSettings() const { return m_cgroupCustomSettings; }
113 inline bool CgroupCustomSettingsHasBeenSet() const { return m_cgroupCustomSettingsHasBeenSet; }
114 template <typename CgroupCustomSettingsT = Aws::Vector<CgroupCustomSetting>>
115 void SetCgroupCustomSettings(CgroupCustomSettingsT&& value) {
116 m_cgroupCustomSettingsHasBeenSet = true;
117 m_cgroupCustomSettings = std::forward<CgroupCustomSettingsT>(value);
118 }
119 template <typename CgroupCustomSettingsT = Aws::Vector<CgroupCustomSetting>>
121 SetCgroupCustomSettings(std::forward<CgroupCustomSettingsT>(value));
122 return *this;
123 }
124 template <typename CgroupCustomSettingsT = CgroupCustomSetting>
126 m_cgroupCustomSettingsHasBeenSet = true;
127 m_cgroupCustomSettings.emplace_back(std::forward<CgroupCustomSettingsT>(value));
128 return *this;
129 }
131
133
137 inline const AccountingRequest& GetAccounting() const { return m_accounting; }
138 inline bool AccountingHasBeenSet() const { return m_accountingHasBeenSet; }
139 template <typename AccountingT = AccountingRequest>
140 void SetAccounting(AccountingT&& value) {
141 m_accountingHasBeenSet = true;
142 m_accounting = std::forward<AccountingT>(value);
143 }
144 template <typename AccountingT = AccountingRequest>
146 SetAccounting(std::forward<AccountingT>(value));
147 return *this;
148 }
150
152
155 inline const SlurmRestRequest& GetSlurmRest() const { return m_slurmRest; }
156 inline bool SlurmRestHasBeenSet() const { return m_slurmRestHasBeenSet; }
157 template <typename SlurmRestT = SlurmRestRequest>
158 void SetSlurmRest(SlurmRestT&& value) {
159 m_slurmRestHasBeenSet = true;
160 m_slurmRest = std::forward<SlurmRestT>(value);
161 }
162 template <typename SlurmRestT = SlurmRestRequest>
164 SetSlurmRest(std::forward<SlurmRestT>(value));
165 return *this;
166 }
168 private:
169 int m_scaleDownIdleTimeInSeconds{0};
170
171 Aws::Vector<SlurmCustomSetting> m_slurmCustomSettings;
172
173 Aws::Vector<SlurmdbdCustomSetting> m_slurmdbdCustomSettings;
174
175 Aws::Vector<CgroupCustomSetting> m_cgroupCustomSettings;
176
177 AccountingRequest m_accounting;
178
179 SlurmRestRequest m_slurmRest;
180 bool m_scaleDownIdleTimeInSecondsHasBeenSet = false;
181 bool m_slurmCustomSettingsHasBeenSet = false;
182 bool m_slurmdbdCustomSettingsHasBeenSet = false;
183 bool m_cgroupCustomSettingsHasBeenSet = false;
184 bool m_accountingHasBeenSet = false;
185 bool m_slurmRestHasBeenSet = false;
186};
187
188} // namespace Model
189} // namespace PCS
190} // namespace Aws
ClusterSlurmConfigurationRequest & AddCgroupCustomSettings(CgroupCustomSettingsT &&value)
const Aws::Vector< CgroupCustomSetting > & GetCgroupCustomSettings() const
ClusterSlurmConfigurationRequest & WithSlurmCustomSettings(SlurmCustomSettingsT &&value)
const Aws::Vector< SlurmdbdCustomSetting > & GetSlurmdbdCustomSettings() const
ClusterSlurmConfigurationRequest & AddSlurmdbdCustomSettings(SlurmdbdCustomSettingsT &&value)
ClusterSlurmConfigurationRequest & WithAccounting(AccountingT &&value)
AWS_PCS_API ClusterSlurmConfigurationRequest & operator=(Aws::Utils::Json::JsonView jsonValue)
ClusterSlurmConfigurationRequest & WithCgroupCustomSettings(CgroupCustomSettingsT &&value)
ClusterSlurmConfigurationRequest & WithScaleDownIdleTimeInSeconds(int value)
ClusterSlurmConfigurationRequest & AddSlurmCustomSettings(SlurmCustomSettingsT &&value)
ClusterSlurmConfigurationRequest & WithSlurmRest(SlurmRestT &&value)
AWS_PCS_API ClusterSlurmConfigurationRequest(Aws::Utils::Json::JsonView jsonValue)
AWS_PCS_API Aws::Utils::Json::JsonValue Jsonize() const
ClusterSlurmConfigurationRequest & WithSlurmdbdCustomSettings(SlurmdbdCustomSettingsT &&value)
const Aws::Vector< SlurmCustomSetting > & GetSlurmCustomSettings() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue