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/core/utils/memory/stl/AWSVector.h>
11#include <aws/pcs/model/CustomLaunchTemplate.h>
12#include <aws/pcs/model/PurchaseOption.h>
13#include <aws/pcs/model/SpotOptions.h>
14#include <aws/pcs/model/ScalingConfigurationRequest.h>
15#include <aws/pcs/model/UpdateComputeNodeGroupSlurmConfigurationRequest.h>
17#include <aws/core/utils/UUID.h>
50 template<
typename ClusterIdentifierT = Aws::String>
51 void SetClusterIdentifier(ClusterIdentifierT&& value) { m_clusterIdentifierHasBeenSet =
true; m_clusterIdentifier = std::forward<ClusterIdentifierT>(value); }
52 template<
typename ClusterIdentifierT = Aws::String>
62 template<
typename ComputeNodeGroupIdentifierT = Aws::String>
63 void SetComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT&& value) { m_computeNodeGroupIdentifierHasBeenSet =
true; m_computeNodeGroupIdentifier = std::forward<ComputeNodeGroupIdentifierT>(value); }
64 template<
typename ComputeNodeGroupIdentifierT = Aws::String>
76 template<
typename AmiIdT = Aws::String>
77 void SetAmiId(AmiIdT&& value) { m_amiIdHasBeenSet =
true; m_amiId = std::forward<AmiIdT>(value); }
78 template<
typename AmiIdT = Aws::String>
89 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
90 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet =
true; m_subnetIds = std::forward<SubnetIdsT>(value); }
91 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
93 template<
typename SubnetIdsT = Aws::String>
101 template<
typename CustomLaunchTemplateT = CustomLaunchTemplate>
102 void SetCustomLaunchTemplate(CustomLaunchTemplateT&& value) { m_customLaunchTemplateHasBeenSet =
true; m_customLaunchTemplate = std::forward<CustomLaunchTemplateT>(value); }
103 template<
typename CustomLaunchTemplateT = CustomLaunchTemplate>
125 template<
typename SpotOptionsT = SpotOptions>
126 void SetSpotOptions(SpotOptionsT&& value) { m_spotOptionsHasBeenSet =
true; m_spotOptions = std::forward<SpotOptionsT>(value); }
127 template<
typename SpotOptionsT = SpotOptions>
137 template<
typename ScalingConfigurationT = ScalingConfigurationRequest>
138 void SetScalingConfiguration(ScalingConfigurationT&& value) { m_scalingConfigurationHasBeenSet =
true; m_scalingConfiguration = std::forward<ScalingConfigurationT>(value); }
139 template<
typename ScalingConfigurationT = ScalingConfigurationRequest>
158 template<
typename IamInstanceProfileArnT = Aws::String>
159 void SetIamInstanceProfileArn(IamInstanceProfileArnT&& value) { m_iamInstanceProfileArnHasBeenSet =
true; m_iamInstanceProfileArn = std::forward<IamInstanceProfileArnT>(value); }
160 template<
typename IamInstanceProfileArnT = Aws::String>
170 template<
typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
171 void SetSlurmConfiguration(SlurmConfigurationT&& value) { m_slurmConfigurationHasBeenSet =
true; m_slurmConfiguration = std::forward<SlurmConfigurationT>(value); }
172 template<
typename SlurmConfigurationT = UpdateComputeNodeGroupSlurmConfigurationRequest>
188 template<
typename ClientTokenT = Aws::String>
189 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet =
true; m_clientToken = std::forward<ClientTokenT>(value); }
190 template<
typename ClientTokenT = Aws::String>
196 bool m_clusterIdentifierHasBeenSet =
false;
199 bool m_computeNodeGroupIdentifierHasBeenSet =
false;
202 bool m_amiIdHasBeenSet =
false;
205 bool m_subnetIdsHasBeenSet =
false;
208 bool m_customLaunchTemplateHasBeenSet =
false;
211 bool m_purchaseOptionHasBeenSet =
false;
213 SpotOptions m_spotOptions;
214 bool m_spotOptionsHasBeenSet =
false;
216 ScalingConfigurationRequest m_scalingConfiguration;
217 bool m_scalingConfigurationHasBeenSet =
false;
220 bool m_iamInstanceProfileArnHasBeenSet =
false;
222 UpdateComputeNodeGroupSlurmConfigurationRequest m_slurmConfiguration;
223 bool m_slurmConfigurationHasBeenSet =
false;
226 bool m_clientTokenHasBeenSet =
true;
const Aws::Vector< Aws::String > & GetSubnetIds() const
void SetScalingConfiguration(ScalingConfigurationT &&value)
bool ComputeNodeGroupIdentifierHasBeenSet() const
void SetSlurmConfiguration(SlurmConfigurationT &&value)
bool AmiIdHasBeenSet() const
void SetClientToken(ClientTokenT &&value)
const CustomLaunchTemplate & GetCustomLaunchTemplate() const
const Aws::String & GetComputeNodeGroupIdentifier() const
AWS_PCS_API Aws::String SerializePayload() const override
void SetComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT &&value)
UpdateComputeNodeGroupRequest & WithSlurmConfiguration(SlurmConfigurationT &&value)
UpdateComputeNodeGroupRequest & WithSpotOptions(SpotOptionsT &&value)
void SetPurchaseOption(PurchaseOption value)
UpdateComputeNodeGroupRequest & WithScalingConfiguration(ScalingConfigurationT &&value)
const ScalingConfigurationRequest & GetScalingConfiguration() const
void SetCustomLaunchTemplate(CustomLaunchTemplateT &&value)
void SetAmiId(AmiIdT &&value)
UpdateComputeNodeGroupRequest & WithAmiId(AmiIdT &&value)
UpdateComputeNodeGroupRequest & WithPurchaseOption(PurchaseOption value)
UpdateComputeNodeGroupRequest & WithClientToken(ClientTokenT &&value)
UpdateComputeNodeGroupRequest & WithComputeNodeGroupIdentifier(ComputeNodeGroupIdentifierT &&value)
UpdateComputeNodeGroupRequest & WithCustomLaunchTemplate(CustomLaunchTemplateT &&value)
void SetClusterIdentifier(ClusterIdentifierT &&value)
bool ClusterIdentifierHasBeenSet() const
void SetSubnetIds(SubnetIdsT &&value)
bool ClientTokenHasBeenSet() const
UpdateComputeNodeGroupRequest & WithSubnetIds(SubnetIdsT &&value)
void SetIamInstanceProfileArn(IamInstanceProfileArnT &&value)
bool CustomLaunchTemplateHasBeenSet() const
UpdateComputeNodeGroupRequest & AddSubnetIds(SubnetIdsT &&value)
UpdateComputeNodeGroupRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
bool IamInstanceProfileArnHasBeenSet() const
PurchaseOption GetPurchaseOption() const
const Aws::String & GetIamInstanceProfileArn() const
UpdateComputeNodeGroupRequest & WithIamInstanceProfileArn(IamInstanceProfileArnT &&value)
virtual const char * GetServiceRequestName() const override
AWS_PCS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::String & GetClusterIdentifier() const
bool SlurmConfigurationHasBeenSet() const
const SpotOptions & GetSpotOptions() const
bool SpotOptionsHasBeenSet() const
bool SubnetIdsHasBeenSet() const
bool ScalingConfigurationHasBeenSet() const
const UpdateComputeNodeGroupSlurmConfigurationRequest & GetSlurmConfiguration() const
const Aws::String & GetClientToken() const
void SetSpotOptions(SpotOptionsT &&value)
AWS_PCS_API UpdateComputeNodeGroupRequest()=default
const Aws::String & GetAmiId() const
bool PurchaseOptionHasBeenSet() const
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector