7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/pcs/PCSRequest.h>
11#include <aws/pcs/PCS_EXPORTS.h>
12#include <aws/pcs/model/ClusterSlurmConfigurationRequest.h>
13#include <aws/pcs/model/NetworkingRequest.h>
14#include <aws/pcs/model/SchedulerRequest.h>
15#include <aws/pcs/model/Size.h>
45 template <
typename ClusterNameT = Aws::String>
47 m_clusterNameHasBeenSet =
true;
48 m_clusterName = std::forward<ClusterNameT>(value);
50 template <
typename ClusterNameT = Aws::String>
64 template <
typename SchedulerT = SchedulerRequest>
66 m_schedulerHasBeenSet =
true;
67 m_scheduler = std::forward<SchedulerT>(value);
69 template <
typename SchedulerT = SchedulerRequest>
87 m_sizeHasBeenSet =
true;
102 template <
typename NetworkingT = NetworkingRequest>
104 m_networkingHasBeenSet =
true;
105 m_networking = std::forward<NetworkingT>(value);
107 template <
typename NetworkingT = NetworkingRequest>
120 template <
typename SlurmConfigurationT = ClusterSlurmConfigurationRequest>
122 m_slurmConfigurationHasBeenSet =
true;
123 m_slurmConfiguration = std::forward<SlurmConfigurationT>(value);
125 template <
typename SlurmConfigurationT = ClusterSlurmConfigurationRequest>
144 template <
typename ClientTokenT = Aws::String>
146 m_clientTokenHasBeenSet =
true;
147 m_clientToken = std::forward<ClientTokenT>(value);
149 template <
typename ClientTokenT = Aws::String>
163 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
165 m_tagsHasBeenSet =
true;
166 m_tags = std::forward<TagsT>(value);
168 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
170 SetTags(std::forward<TagsT>(value));
173 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
175 m_tagsHasBeenSet =
true;
176 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
187 NetworkingRequest m_networking;
189 ClusterSlurmConfigurationRequest m_slurmConfiguration;
194 bool m_clusterNameHasBeenSet =
false;
195 bool m_schedulerHasBeenSet =
false;
196 bool m_sizeHasBeenSet =
false;
197 bool m_networkingHasBeenSet =
false;
198 bool m_slurmConfigurationHasBeenSet =
false;
199 bool m_clientTokenHasBeenSet =
true;
200 bool m_tagsHasBeenSet =
false;
bool SlurmConfigurationHasBeenSet() const
CreateClusterRequest & WithSize(Size value)
AWS_PCS_API Aws::String SerializePayload() const override
CreateClusterRequest & WithSlurmConfiguration(SlurmConfigurationT &&value)
bool SchedulerHasBeenSet() const
CreateClusterRequest & WithClientToken(ClientTokenT &&value)
const NetworkingRequest & GetNetworking() const
bool ClusterNameHasBeenSet() const
virtual const char * GetServiceRequestName() const override
CreateClusterRequest & WithTags(TagsT &&value)
AWS_PCS_API CreateClusterRequest()=default
bool SizeHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::String & GetClusterName() const
bool NetworkingHasBeenSet() const
CreateClusterRequest & WithNetworking(NetworkingT &&value)
CreateClusterRequest & WithClusterName(ClusterNameT &&value)
const Aws::String & GetClientToken() const
const SchedulerRequest & GetScheduler() const
void SetSlurmConfiguration(SlurmConfigurationT &&value)
CreateClusterRequest & WithScheduler(SchedulerT &&value)
void SetClientToken(ClientTokenT &&value)
void SetClusterName(ClusterNameT &&value)
AWS_PCS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateClusterRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetNetworking(NetworkingT &&value)
void SetScheduler(SchedulerT &&value)
bool ClientTokenHasBeenSet() const
bool TagsHasBeenSet() const
void SetTags(TagsT &&value)
const ClusterSlurmConfigurationRequest & GetSlurmConfiguration() const
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String