7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/pcs/PCS_EXPORTS.h>
11#include <aws/pcs/model/ComputeNodeGroupSlurmConfiguration.h>
12#include <aws/pcs/model/ComputeNodeGroupStatus.h>
13#include <aws/pcs/model/CustomLaunchTemplate.h>
14#include <aws/pcs/model/ErrorInfo.h>
15#include <aws/pcs/model/InstanceConfig.h>
16#include <aws/pcs/model/LaunchTemplateMode.h>
17#include <aws/pcs/model/NodeLifecycleActions.h>
18#include <aws/pcs/model/PurchaseOption.h>
19#include <aws/pcs/model/ScalingConfiguration.h>
20#include <aws/pcs/model/SpotOptions.h>
53 template <
typename AmiIdT = Aws::String>
55 m_amiIdHasBeenSet =
true;
56 m_amiId = std::forward<AmiIdT>(value);
58 template <
typename AmiIdT = Aws::String>
60 SetAmiId(std::forward<AmiIdT>(value));
75 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
77 m_securityGroupIdsHasBeenSet =
true;
78 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
80 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
85 template <
typename SecurityGroupIdsT = Aws::String>
87 m_securityGroupIdsHasBeenSet =
true;
88 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
103 template <
typename SshKeyNameT = Aws::String>
105 m_sshKeyNameHasBeenSet =
true;
106 m_sshKeyName = std::forward<SshKeyNameT>(value);
108 template <
typename SshKeyNameT = Aws::String>
121 template <
typename NameT = Aws::String>
123 m_nameHasBeenSet =
true;
124 m_name = std::forward<NameT>(value);
126 template <
typename NameT = Aws::String>
128 SetName(std::forward<NameT>(value));
139 template <
typename IdT = Aws::String>
141 m_idHasBeenSet =
true;
142 m_id = std::forward<IdT>(value);
144 template <
typename IdT = Aws::String>
146 SetId(std::forward<IdT>(value));
157 template <
typename ArnT = Aws::String>
159 m_arnHasBeenSet =
true;
160 m_arn = std::forward<ArnT>(value);
162 template <
typename ArnT = Aws::String>
164 SetArn(std::forward<ArnT>(value));
175 template <
typename ClusterIdT = Aws::String>
177 m_clusterIdHasBeenSet =
true;
178 m_clusterId = std::forward<ClusterIdT>(value);
180 template <
typename ClusterIdT = Aws::String>
193 template <
typename CreatedAtT = Aws::Utils::DateTime>
195 m_createdAtHasBeenSet =
true;
196 m_createdAt = std::forward<CreatedAtT>(value);
198 template <
typename CreatedAtT = Aws::Utils::DateTime>
211 template <
typename ModifiedAtT = Aws::Utils::DateTime>
213 m_modifiedAtHasBeenSet =
true;
214 m_modifiedAt = std::forward<ModifiedAtT>(value);
216 template <
typename ModifiedAtT = Aws::Utils::DateTime>
241 m_statusHasBeenSet =
true;
257 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
259 m_subnetIdsHasBeenSet =
true;
260 m_subnetIds = std::forward<SubnetIdsT>(value);
262 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
267 template <
typename SubnetIdsT = Aws::String>
269 m_subnetIdsHasBeenSet =
true;
270 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
299 m_purchaseOptionHasBeenSet =
true;
300 m_purchaseOption = value;
320 m_launchTemplateModeHasBeenSet =
true;
321 m_launchTemplateMode = value;
338 template <
typename CustomLaunchTemplateT = CustomLaunchTemplate>
340 m_customLaunchTemplateHasBeenSet =
true;
341 m_customLaunchTemplate = std::forward<CustomLaunchTemplateT>(value);
343 template <
typename CustomLaunchTemplateT = CustomLaunchTemplate>
362 template <
typename IamInstanceProfileArnT = Aws::String>
364 m_iamInstanceProfileArnHasBeenSet =
true;
365 m_iamInstanceProfileArn = std::forward<IamInstanceProfileArnT>(value);
367 template <
typename IamInstanceProfileArnT = Aws::String>
378 template <
typename ScalingConfigurationT = ScalingConfiguration>
380 m_scalingConfigurationHasBeenSet =
true;
381 m_scalingConfiguration = std::forward<ScalingConfigurationT>(value);
383 template <
typename ScalingConfigurationT = ScalingConfiguration>
397 template <
typename InstanceConfigsT = Aws::Vector<InstanceConfig>>
399 m_instanceConfigsHasBeenSet =
true;
400 m_instanceConfigs = std::forward<InstanceConfigsT>(value);
402 template <
typename InstanceConfigsT = Aws::Vector<InstanceConfig>>
407 template <
typename InstanceConfigsT = InstanceConfig>
409 m_instanceConfigsHasBeenSet =
true;
410 m_instanceConfigs.emplace_back(std::forward<InstanceConfigsT>(value));
419 template <
typename SpotOptionsT = SpotOptions>
421 m_spotOptionsHasBeenSet =
true;
422 m_spotOptions = std::forward<SpotOptionsT>(value);
424 template <
typename SpotOptionsT = SpotOptions>
435 template <
typename SlurmConfigurationT = ComputeNodeGroupSlurmConfiguration>
437 m_slurmConfigurationHasBeenSet =
true;
438 m_slurmConfiguration = std::forward<SlurmConfigurationT>(value);
440 template <
typename SlurmConfigurationT = ComputeNodeGroupSlurmConfiguration>
456 template <
typename NodeLifecycleActionsT = NodeLifecycleActions>
458 m_nodeLifecycleActionsHasBeenSet =
true;
459 m_nodeLifecycleActions = std::forward<NodeLifecycleActionsT>(value);
461 template <
typename NodeLifecycleActionsT = NodeLifecycleActions>
474 template <
typename ErrorInfoT = Aws::Vector<ErrorInfo>>
476 m_errorInfoHasBeenSet =
true;
477 m_errorInfo = std::forward<ErrorInfoT>(value);
479 template <
typename ErrorInfoT = Aws::Vector<ErrorInfo>>
484 template <
typename ErrorInfoT = ErrorInfo>
486 m_errorInfoHasBeenSet =
true;
487 m_errorInfo.emplace_back(std::forward<ErrorInfoT>(value));
518 CustomLaunchTemplate m_customLaunchTemplate;
522 ScalingConfiguration m_scalingConfiguration;
526 SpotOptions m_spotOptions;
528 ComputeNodeGroupSlurmConfiguration m_slurmConfiguration;
530 NodeLifecycleActions m_nodeLifecycleActions;
533 bool m_amiIdHasBeenSet =
false;
534 bool m_securityGroupIdsHasBeenSet =
false;
535 bool m_sshKeyNameHasBeenSet =
false;
536 bool m_nameHasBeenSet =
false;
537 bool m_idHasBeenSet =
false;
538 bool m_arnHasBeenSet =
false;
539 bool m_clusterIdHasBeenSet =
false;
540 bool m_createdAtHasBeenSet =
false;
541 bool m_modifiedAtHasBeenSet =
false;
542 bool m_statusHasBeenSet =
false;
543 bool m_subnetIdsHasBeenSet =
false;
544 bool m_purchaseOptionHasBeenSet =
false;
545 bool m_launchTemplateModeHasBeenSet =
false;
546 bool m_customLaunchTemplateHasBeenSet =
false;
547 bool m_iamInstanceProfileArnHasBeenSet =
false;
548 bool m_scalingConfigurationHasBeenSet =
false;
549 bool m_instanceConfigsHasBeenSet =
false;
550 bool m_spotOptionsHasBeenSet =
false;
551 bool m_slurmConfigurationHasBeenSet =
false;
552 bool m_nodeLifecycleActionsHasBeenSet =
false;
553 bool m_errorInfoHasBeenSet =
false;
void SetName(NameT &&value)
ComputeNodeGroup & AddSubnetIds(SubnetIdsT &&value)
ComputeNodeGroupStatus GetStatus() const
void SetScalingConfiguration(ScalingConfigurationT &&value)
bool SshKeyNameHasBeenSet() const
const Aws::Utils::DateTime & GetCreatedAt() const
void SetAmiId(AmiIdT &&value)
LaunchTemplateMode GetLaunchTemplateMode() const
ComputeNodeGroup & WithPurchaseOption(PurchaseOption value)
const Aws::String & GetIamInstanceProfileArn() const
void SetPurchaseOption(PurchaseOption value)
const ComputeNodeGroupSlurmConfiguration & GetSlurmConfiguration() const
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
bool StatusHasBeenSet() const
const Aws::Vector< ErrorInfo > & GetErrorInfo() const
const Aws::String & GetId() const
ComputeNodeGroup & WithClusterId(ClusterIdT &&value)
const Aws::String & GetClusterId() const
void SetErrorInfo(ErrorInfoT &&value)
bool NodeLifecycleActionsHasBeenSet() const
const Aws::Vector< Aws::String > & GetSubnetIds() const
bool InstanceConfigsHasBeenSet() const
const NodeLifecycleActions & GetNodeLifecycleActions() const
const SpotOptions & GetSpotOptions() const
ComputeNodeGroup & WithCustomLaunchTemplate(CustomLaunchTemplateT &&value)
void SetArn(ArnT &&value)
ComputeNodeGroup & WithAmiId(AmiIdT &&value)
void SetLaunchTemplateMode(LaunchTemplateMode value)
ComputeNodeGroup & AddSecurityGroupIds(SecurityGroupIdsT &&value)
ComputeNodeGroup & WithSpotOptions(SpotOptionsT &&value)
ComputeNodeGroup & WithName(NameT &&value)
AWS_PCS_API ComputeNodeGroup()=default
void SetModifiedAt(ModifiedAtT &&value)
ComputeNodeGroup & WithInstanceConfigs(InstanceConfigsT &&value)
bool ModifiedAtHasBeenSet() const
ComputeNodeGroup & WithSshKeyName(SshKeyNameT &&value)
void SetStatus(ComputeNodeGroupStatus value)
bool ErrorInfoHasBeenSet() const
bool LaunchTemplateModeHasBeenSet() const
ComputeNodeGroup & WithId(IdT &&value)
ComputeNodeGroup & WithModifiedAt(ModifiedAtT &&value)
void SetClusterId(ClusterIdT &&value)
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
bool ClusterIdHasBeenSet() const
AWS_PCS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetSubnetIds(SubnetIdsT &&value)
void SetCustomLaunchTemplate(CustomLaunchTemplateT &&value)
ComputeNodeGroup & WithIamInstanceProfileArn(IamInstanceProfileArnT &&value)
ComputeNodeGroup & WithArn(ArnT &&value)
bool SlurmConfigurationHasBeenSet() const
bool CreatedAtHasBeenSet() const
ComputeNodeGroup & WithSubnetIds(SubnetIdsT &&value)
const Aws::String & GetAmiId() const
void SetSshKeyName(SshKeyNameT &&value)
bool CustomLaunchTemplateHasBeenSet() const
ComputeNodeGroup & WithCreatedAt(CreatedAtT &&value)
const Aws::Utils::DateTime & GetModifiedAt() const
PurchaseOption GetPurchaseOption() const
const Aws::Vector< InstanceConfig > & GetInstanceConfigs() const
ComputeNodeGroup & WithSecurityGroupIds(SecurityGroupIdsT &&value)
ComputeNodeGroup & WithStatus(ComputeNodeGroupStatus value)
bool SpotOptionsHasBeenSet() const
const Aws::String & GetSshKeyName() const
void SetSlurmConfiguration(SlurmConfigurationT &&value)
const Aws::String & GetArn() const
bool SecurityGroupIdsHasBeenSet() const
ComputeNodeGroup & AddInstanceConfigs(InstanceConfigsT &&value)
void SetNodeLifecycleActions(NodeLifecycleActionsT &&value)
ComputeNodeGroup & WithScalingConfiguration(ScalingConfigurationT &&value)
ComputeNodeGroup & WithSlurmConfiguration(SlurmConfigurationT &&value)
const Aws::String & GetName() const
void SetInstanceConfigs(InstanceConfigsT &&value)
void SetCreatedAt(CreatedAtT &&value)
const CustomLaunchTemplate & GetCustomLaunchTemplate() const
void SetSpotOptions(SpotOptionsT &&value)
bool PurchaseOptionHasBeenSet() const
bool NameHasBeenSet() const
ComputeNodeGroup & WithLaunchTemplateMode(LaunchTemplateMode value)
ComputeNodeGroup & WithErrorInfo(ErrorInfoT &&value)
bool ArnHasBeenSet() const
void SetIamInstanceProfileArn(IamInstanceProfileArnT &&value)
ComputeNodeGroup & WithNodeLifecycleActions(NodeLifecycleActionsT &&value)
bool IdHasBeenSet() const
bool SubnetIdsHasBeenSet() const
bool ScalingConfigurationHasBeenSet() const
AWS_PCS_API ComputeNodeGroup & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_PCS_API ComputeNodeGroup(Aws::Utils::Json::JsonView jsonValue)
const ScalingConfiguration & GetScalingConfiguration() const
bool IamInstanceProfileArnHasBeenSet() const
bool AmiIdHasBeenSet() const
ComputeNodeGroup & AddErrorInfo(ErrorInfoT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue