AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Cluster.h
1
6#pragma once
7#include <aws/pcs/PCS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/pcs/model/ClusterStatus.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/pcs/model/Scheduler.h>
12#include <aws/pcs/model/Size.h>
13#include <aws/pcs/model/ClusterSlurmConfiguration.h>
14#include <aws/pcs/model/Networking.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16#include <aws/pcs/model/Endpoint.h>
17#include <aws/pcs/model/ErrorInfo.h>
18#include <utility>
19
20namespace Aws
21{
22namespace Utils
23{
24namespace Json
25{
26 class JsonValue;
27 class JsonView;
28} // namespace Json
29} // namespace Utils
30namespace PCS
31{
32namespace Model
33{
34
40 class Cluster
41 {
42 public:
43 AWS_PCS_API Cluster() = default;
44 AWS_PCS_API Cluster(Aws::Utils::Json::JsonView jsonValue);
47
48
50
53 inline const Aws::String& GetName() const { return m_name; }
54 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
55 template<typename NameT = Aws::String>
56 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
57 template<typename NameT = Aws::String>
58 Cluster& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
60
62
65 inline const Aws::String& GetId() const { return m_id; }
66 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
67 template<typename IdT = Aws::String>
68 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
69 template<typename IdT = Aws::String>
70 Cluster& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
72
74
77 inline const Aws::String& GetArn() const { return m_arn; }
78 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
79 template<typename ArnT = Aws::String>
80 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
81 template<typename ArnT = Aws::String>
82 Cluster& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
84
86
99 inline ClusterStatus GetStatus() const { return m_status; }
100 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
101 inline void SetStatus(ClusterStatus value) { m_statusHasBeenSet = true; m_status = value; }
102 inline Cluster& WithStatus(ClusterStatus value) { SetStatus(value); return *this;}
104
106
109 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
110 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
111 template<typename CreatedAtT = Aws::Utils::DateTime>
112 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::forward<CreatedAtT>(value); }
113 template<typename CreatedAtT = Aws::Utils::DateTime>
114 Cluster& WithCreatedAt(CreatedAtT&& value) { SetCreatedAt(std::forward<CreatedAtT>(value)); return *this;}
116
118
121 inline const Aws::Utils::DateTime& GetModifiedAt() const { return m_modifiedAt; }
122 inline bool ModifiedAtHasBeenSet() const { return m_modifiedAtHasBeenSet; }
123 template<typename ModifiedAtT = Aws::Utils::DateTime>
124 void SetModifiedAt(ModifiedAtT&& value) { m_modifiedAtHasBeenSet = true; m_modifiedAt = std::forward<ModifiedAtT>(value); }
125 template<typename ModifiedAtT = Aws::Utils::DateTime>
126 Cluster& WithModifiedAt(ModifiedAtT&& value) { SetModifiedAt(std::forward<ModifiedAtT>(value)); return *this;}
128
130
131 inline const Scheduler& GetScheduler() const { return m_scheduler; }
132 inline bool SchedulerHasBeenSet() const { return m_schedulerHasBeenSet; }
133 template<typename SchedulerT = Scheduler>
134 void SetScheduler(SchedulerT&& value) { m_schedulerHasBeenSet = true; m_scheduler = std::forward<SchedulerT>(value); }
135 template<typename SchedulerT = Scheduler>
136 Cluster& WithScheduler(SchedulerT&& value) { SetScheduler(std::forward<SchedulerT>(value)); return *this;}
138
140
146 inline Size GetSize() const { return m_size; }
147 inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; }
148 inline void SetSize(Size value) { m_sizeHasBeenSet = true; m_size = value; }
149 inline Cluster& WithSize(Size value) { SetSize(value); return *this;}
151
153
156 inline const ClusterSlurmConfiguration& GetSlurmConfiguration() const { return m_slurmConfiguration; }
157 inline bool SlurmConfigurationHasBeenSet() const { return m_slurmConfigurationHasBeenSet; }
158 template<typename SlurmConfigurationT = ClusterSlurmConfiguration>
159 void SetSlurmConfiguration(SlurmConfigurationT&& value) { m_slurmConfigurationHasBeenSet = true; m_slurmConfiguration = std::forward<SlurmConfigurationT>(value); }
160 template<typename SlurmConfigurationT = ClusterSlurmConfiguration>
161 Cluster& WithSlurmConfiguration(SlurmConfigurationT&& value) { SetSlurmConfiguration(std::forward<SlurmConfigurationT>(value)); return *this;}
163
165
166 inline const Networking& GetNetworking() const { return m_networking; }
167 inline bool NetworkingHasBeenSet() const { return m_networkingHasBeenSet; }
168 template<typename NetworkingT = Networking>
169 void SetNetworking(NetworkingT&& value) { m_networkingHasBeenSet = true; m_networking = std::forward<NetworkingT>(value); }
170 template<typename NetworkingT = Networking>
171 Cluster& WithNetworking(NetworkingT&& value) { SetNetworking(std::forward<NetworkingT>(value)); return *this;}
173
175
178 inline const Aws::Vector<Endpoint>& GetEndpoints() const { return m_endpoints; }
179 inline bool EndpointsHasBeenSet() const { return m_endpointsHasBeenSet; }
180 template<typename EndpointsT = Aws::Vector<Endpoint>>
181 void SetEndpoints(EndpointsT&& value) { m_endpointsHasBeenSet = true; m_endpoints = std::forward<EndpointsT>(value); }
182 template<typename EndpointsT = Aws::Vector<Endpoint>>
183 Cluster& WithEndpoints(EndpointsT&& value) { SetEndpoints(std::forward<EndpointsT>(value)); return *this;}
184 template<typename EndpointsT = Endpoint>
185 Cluster& AddEndpoints(EndpointsT&& value) { m_endpointsHasBeenSet = true; m_endpoints.emplace_back(std::forward<EndpointsT>(value)); return *this; }
187
189
192 inline const Aws::Vector<ErrorInfo>& GetErrorInfo() const { return m_errorInfo; }
193 inline bool ErrorInfoHasBeenSet() const { return m_errorInfoHasBeenSet; }
194 template<typename ErrorInfoT = Aws::Vector<ErrorInfo>>
195 void SetErrorInfo(ErrorInfoT&& value) { m_errorInfoHasBeenSet = true; m_errorInfo = std::forward<ErrorInfoT>(value); }
196 template<typename ErrorInfoT = Aws::Vector<ErrorInfo>>
197 Cluster& WithErrorInfo(ErrorInfoT&& value) { SetErrorInfo(std::forward<ErrorInfoT>(value)); return *this;}
198 template<typename ErrorInfoT = ErrorInfo>
199 Cluster& AddErrorInfo(ErrorInfoT&& value) { m_errorInfoHasBeenSet = true; m_errorInfo.emplace_back(std::forward<ErrorInfoT>(value)); return *this; }
201 private:
202
203 Aws::String m_name;
204 bool m_nameHasBeenSet = false;
205
206 Aws::String m_id;
207 bool m_idHasBeenSet = false;
208
209 Aws::String m_arn;
210 bool m_arnHasBeenSet = false;
211
213 bool m_statusHasBeenSet = false;
214
215 Aws::Utils::DateTime m_createdAt{};
216 bool m_createdAtHasBeenSet = false;
217
218 Aws::Utils::DateTime m_modifiedAt{};
219 bool m_modifiedAtHasBeenSet = false;
220
221 Scheduler m_scheduler;
222 bool m_schedulerHasBeenSet = false;
223
224 Size m_size{Size::NOT_SET};
225 bool m_sizeHasBeenSet = false;
226
227 ClusterSlurmConfiguration m_slurmConfiguration;
228 bool m_slurmConfigurationHasBeenSet = false;
229
230 Networking m_networking;
231 bool m_networkingHasBeenSet = false;
232
233 Aws::Vector<Endpoint> m_endpoints;
234 bool m_endpointsHasBeenSet = false;
235
236 Aws::Vector<ErrorInfo> m_errorInfo;
237 bool m_errorInfoHasBeenSet = false;
238 };
239
240} // namespace Model
241} // namespace PCS
242} // namespace Aws
void SetSlurmConfiguration(SlurmConfigurationT &&value)
Definition Cluster.h:159
bool ArnHasBeenSet() const
Definition Cluster.h:78
void SetName(NameT &&value)
Definition Cluster.h:56
const Aws::String & GetName() const
Definition Cluster.h:53
Cluster & WithScheduler(SchedulerT &&value)
Definition Cluster.h:136
ClusterStatus GetStatus() const
Definition Cluster.h:99
void SetNetworking(NetworkingT &&value)
Definition Cluster.h:169
bool ModifiedAtHasBeenSet() const
Definition Cluster.h:122
Cluster & WithStatus(ClusterStatus value)
Definition Cluster.h:102
bool NetworkingHasBeenSet() const
Definition Cluster.h:167
void SetSize(Size value)
Definition Cluster.h:148
Cluster & WithSlurmConfiguration(SlurmConfigurationT &&value)
Definition Cluster.h:161
Cluster & WithNetworking(NetworkingT &&value)
Definition Cluster.h:171
AWS_PCS_API Cluster()=default
Cluster & WithId(IdT &&value)
Definition Cluster.h:70
void SetErrorInfo(ErrorInfoT &&value)
Definition Cluster.h:195
Cluster & AddEndpoints(EndpointsT &&value)
Definition Cluster.h:185
Cluster & WithCreatedAt(CreatedAtT &&value)
Definition Cluster.h:114
Cluster & AddErrorInfo(ErrorInfoT &&value)
Definition Cluster.h:199
void SetId(IdT &&value)
Definition Cluster.h:68
Cluster & WithEndpoints(EndpointsT &&value)
Definition Cluster.h:183
const Networking & GetNetworking() const
Definition Cluster.h:166
bool SlurmConfigurationHasBeenSet() const
Definition Cluster.h:157
bool IdHasBeenSet() const
Definition Cluster.h:66
bool CreatedAtHasBeenSet() const
Definition Cluster.h:110
AWS_PCS_API Cluster(Aws::Utils::Json::JsonView jsonValue)
Cluster & WithSize(Size value)
Definition Cluster.h:149
Cluster & WithArn(ArnT &&value)
Definition Cluster.h:82
const Aws::String & GetId() const
Definition Cluster.h:65
bool NameHasBeenSet() const
Definition Cluster.h:54
const Aws::Vector< Endpoint > & GetEndpoints() const
Definition Cluster.h:178
bool SchedulerHasBeenSet() const
Definition Cluster.h:132
const Aws::String & GetArn() const
Definition Cluster.h:77
void SetEndpoints(EndpointsT &&value)
Definition Cluster.h:181
const ClusterSlurmConfiguration & GetSlurmConfiguration() const
Definition Cluster.h:156
void SetScheduler(SchedulerT &&value)
Definition Cluster.h:134
const Aws::Vector< ErrorInfo > & GetErrorInfo() const
Definition Cluster.h:192
Cluster & WithErrorInfo(ErrorInfoT &&value)
Definition Cluster.h:197
bool ErrorInfoHasBeenSet() const
Definition Cluster.h:193
bool SizeHasBeenSet() const
Definition Cluster.h:147
AWS_PCS_API Cluster & operator=(Aws::Utils::Json::JsonView jsonValue)
const Scheduler & GetScheduler() const
Definition Cluster.h:131
void SetCreatedAt(CreatedAtT &&value)
Definition Cluster.h:112
Cluster & WithModifiedAt(ModifiedAtT &&value)
Definition Cluster.h:126
void SetArn(ArnT &&value)
Definition Cluster.h:80
const Aws::Utils::DateTime & GetModifiedAt() const
Definition Cluster.h:121
const Aws::Utils::DateTime & GetCreatedAt() const
Definition Cluster.h:109
void SetStatus(ClusterStatus value)
Definition Cluster.h:101
Size GetSize() const
Definition Cluster.h:146
bool StatusHasBeenSet() const
Definition Cluster.h:100
bool EndpointsHasBeenSet() const
Definition Cluster.h:179
void SetModifiedAt(ModifiedAtT &&value)
Definition Cluster.h:124
AWS_PCS_API Aws::Utils::Json::JsonValue Jsonize() const
Cluster & WithName(NameT &&value)
Definition Cluster.h:58
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue