7#include <aws/pcs/PCS_EXPORTS.h>
8#include <aws/pcs/PCSRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/pcs/model/SchedulerRequest.h>
11#include <aws/pcs/model/Size.h>
12#include <aws/pcs/model/NetworkingRequest.h>
13#include <aws/pcs/model/ClusterSlurmConfigurationRequest.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
16#include <aws/core/utils/UUID.h>
49 template<
typename ClusterNameT = Aws::String>
50 void SetClusterName(ClusterNameT&& value) { m_clusterNameHasBeenSet =
true; m_clusterName = std::forward<ClusterNameT>(value); }
51 template<
typename ClusterNameT = Aws::String>
62 template<
typename SchedulerT = SchedulerRequest>
63 void SetScheduler(SchedulerT&& value) { m_schedulerHasBeenSet =
true; m_scheduler = std::forward<SchedulerT>(value); }
64 template<
typename SchedulerT = SchedulerRequest>
78 inline void SetSize(
Size value) { m_sizeHasBeenSet =
true; m_size = value; }
88 template<
typename NetworkingT = NetworkingRequest>
89 void SetNetworking(NetworkingT&& value) { m_networkingHasBeenSet =
true; m_networking = std::forward<NetworkingT>(value); }
90 template<
typename NetworkingT = NetworkingRequest>
100 template<
typename SlurmConfigurationT = ClusterSlurmConfigurationRequest>
101 void SetSlurmConfiguration(SlurmConfigurationT&& value) { m_slurmConfigurationHasBeenSet =
true; m_slurmConfiguration = std::forward<SlurmConfigurationT>(value); }
102 template<
typename SlurmConfigurationT = ClusterSlurmConfigurationRequest>
118 template<
typename ClientTokenT = Aws::String>
119 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet =
true; m_clientToken = std::forward<ClientTokenT>(value); }
120 template<
typename ClientTokenT = Aws::String>
131 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
132 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
133 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
135 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
137 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
143 bool m_clusterNameHasBeenSet =
false;
146 bool m_schedulerHasBeenSet =
false;
149 bool m_sizeHasBeenSet =
false;
151 NetworkingRequest m_networking;
152 bool m_networkingHasBeenSet =
false;
154 ClusterSlurmConfigurationRequest m_slurmConfiguration;
155 bool m_slurmConfigurationHasBeenSet =
false;
158 bool m_clientTokenHasBeenSet =
true;
161 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