/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains the parameters for RegisterJobDefinition.See
* Also:
AWS
* API Reference
The name of the job definition to register. It can be up to 128 letters long. * It can contain uppercase and lowercase letters, numbers, hyphens (-), and * underscores (_).
*/ inline const Aws::String& GetJobDefinitionName() const{ return m_jobDefinitionName; } /** *The name of the job definition to register. It can be up to 128 letters long. * It can contain uppercase and lowercase letters, numbers, hyphens (-), and * underscores (_).
*/ inline bool JobDefinitionNameHasBeenSet() const { return m_jobDefinitionNameHasBeenSet; } /** *The name of the job definition to register. It can be up to 128 letters long. * It can contain uppercase and lowercase letters, numbers, hyphens (-), and * underscores (_).
*/ inline void SetJobDefinitionName(const Aws::String& value) { m_jobDefinitionNameHasBeenSet = true; m_jobDefinitionName = value; } /** *The name of the job definition to register. It can be up to 128 letters long. * It can contain uppercase and lowercase letters, numbers, hyphens (-), and * underscores (_).
*/ inline void SetJobDefinitionName(Aws::String&& value) { m_jobDefinitionNameHasBeenSet = true; m_jobDefinitionName = std::move(value); } /** *The name of the job definition to register. It can be up to 128 letters long. * It can contain uppercase and lowercase letters, numbers, hyphens (-), and * underscores (_).
*/ inline void SetJobDefinitionName(const char* value) { m_jobDefinitionNameHasBeenSet = true; m_jobDefinitionName.assign(value); } /** *The name of the job definition to register. It can be up to 128 letters long. * It can contain uppercase and lowercase letters, numbers, hyphens (-), and * underscores (_).
*/ inline RegisterJobDefinitionRequest& WithJobDefinitionName(const Aws::String& value) { SetJobDefinitionName(value); return *this;} /** *The name of the job definition to register. It can be up to 128 letters long. * It can contain uppercase and lowercase letters, numbers, hyphens (-), and * underscores (_).
*/ inline RegisterJobDefinitionRequest& WithJobDefinitionName(Aws::String&& value) { SetJobDefinitionName(std::move(value)); return *this;} /** *The name of the job definition to register. It can be up to 128 letters long. * It can contain uppercase and lowercase letters, numbers, hyphens (-), and * underscores (_).
*/ inline RegisterJobDefinitionRequest& WithJobDefinitionName(const char* value) { SetJobDefinitionName(value); return *this;} /** *The type of job definition. For more information about multi-node parallel * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.
*If the job is run on Fargate resources, then multinode
* isn't supported.
The type of job definition. For more information about multi-node parallel * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.
*If the job is run on Fargate resources, then multinode
* isn't supported.
The type of job definition. For more information about multi-node parallel * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.
*If the job is run on Fargate resources, then multinode
* isn't supported.
The type of job definition. For more information about multi-node parallel * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.
*If the job is run on Fargate resources, then multinode
* isn't supported.
The type of job definition. For more information about multi-node parallel * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.
*If the job is run on Fargate resources, then multinode
* isn't supported.
The type of job definition. For more information about multi-node parallel * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.
*If the job is run on Fargate resources, then multinode
* isn't supported.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
Default parameter substitution placeholders to set in the job definition.
* Parameters are specified as a key-value pair mapping. Parameters in a
* SubmitJob request override any corresponding parameter defaults
* from the job definition.
The scheduling priority for jobs that are submitted with this job definition. * This only affects jobs in job queues with a fair share policy. Jobs with a * higher scheduling priority are scheduled before jobs with a lower scheduling * priority.
The minimum supported value is 0 and the maximum supported * value is 9999.
*/ inline int GetSchedulingPriority() const{ return m_schedulingPriority; } /** *The scheduling priority for jobs that are submitted with this job definition. * This only affects jobs in job queues with a fair share policy. Jobs with a * higher scheduling priority are scheduled before jobs with a lower scheduling * priority.
The minimum supported value is 0 and the maximum supported * value is 9999.
*/ inline bool SchedulingPriorityHasBeenSet() const { return m_schedulingPriorityHasBeenSet; } /** *The scheduling priority for jobs that are submitted with this job definition. * This only affects jobs in job queues with a fair share policy. Jobs with a * higher scheduling priority are scheduled before jobs with a lower scheduling * priority.
The minimum supported value is 0 and the maximum supported * value is 9999.
*/ inline void SetSchedulingPriority(int value) { m_schedulingPriorityHasBeenSet = true; m_schedulingPriority = value; } /** *The scheduling priority for jobs that are submitted with this job definition. * This only affects jobs in job queues with a fair share policy. Jobs with a * higher scheduling priority are scheduled before jobs with a lower scheduling * priority.
The minimum supported value is 0 and the maximum supported * value is 9999.
*/ inline RegisterJobDefinitionRequest& WithSchedulingPriority(int value) { SetSchedulingPriority(value); return *this;} /** *An object with various properties specific to Amazon ECS based single-node
* container-based jobs. If the job definition's type parameter is
* container, then you must specify either
* containerProperties or nodeProperties. This must not
* be specified for Amazon EKS based job definitions.
If the job runs
* on Fargate resources, then you must not specify nodeProperties; use
* only containerProperties.
An object with various properties specific to Amazon ECS based single-node
* container-based jobs. If the job definition's type parameter is
* container, then you must specify either
* containerProperties or nodeProperties. This must not
* be specified for Amazon EKS based job definitions.
If the job runs
* on Fargate resources, then you must not specify nodeProperties; use
* only containerProperties.
An object with various properties specific to Amazon ECS based single-node
* container-based jobs. If the job definition's type parameter is
* container, then you must specify either
* containerProperties or nodeProperties. This must not
* be specified for Amazon EKS based job definitions.
If the job runs
* on Fargate resources, then you must not specify nodeProperties; use
* only containerProperties.
An object with various properties specific to Amazon ECS based single-node
* container-based jobs. If the job definition's type parameter is
* container, then you must specify either
* containerProperties or nodeProperties. This must not
* be specified for Amazon EKS based job definitions.
If the job runs
* on Fargate resources, then you must not specify nodeProperties; use
* only containerProperties.
An object with various properties specific to Amazon ECS based single-node
* container-based jobs. If the job definition's type parameter is
* container, then you must specify either
* containerProperties or nodeProperties. This must not
* be specified for Amazon EKS based job definitions.
If the job runs
* on Fargate resources, then you must not specify nodeProperties; use
* only containerProperties.
An object with various properties specific to Amazon ECS based single-node
* container-based jobs. If the job definition's type parameter is
* container, then you must specify either
* containerProperties or nodeProperties. This must not
* be specified for Amazon EKS based job definitions.
If the job runs
* on Fargate resources, then you must not specify nodeProperties; use
* only containerProperties.
An object with various properties specific to multi-node parallel jobs. If
* you specify node properties for a job, it becomes a multi-node parallel job. For
* more information, see Multi-node
* Parallel Jobs in the Batch User Guide. If the job definition's
* type parameter is container, then you must specify
* either containerProperties or nodeProperties.
If the job runs on Fargate resources, then you must not specify
* nodeProperties; use containerProperties instead.
If the job runs on Amazon EKS resources, then you must not
* specify nodeProperties.
An object with various properties specific to multi-node parallel jobs. If
* you specify node properties for a job, it becomes a multi-node parallel job. For
* more information, see Multi-node
* Parallel Jobs in the Batch User Guide. If the job definition's
* type parameter is container, then you must specify
* either containerProperties or nodeProperties.
If the job runs on Fargate resources, then you must not specify
* nodeProperties; use containerProperties instead.
If the job runs on Amazon EKS resources, then you must not
* specify nodeProperties.
An object with various properties specific to multi-node parallel jobs. If
* you specify node properties for a job, it becomes a multi-node parallel job. For
* more information, see Multi-node
* Parallel Jobs in the Batch User Guide. If the job definition's
* type parameter is container, then you must specify
* either containerProperties or nodeProperties.
If the job runs on Fargate resources, then you must not specify
* nodeProperties; use containerProperties instead.
If the job runs on Amazon EKS resources, then you must not
* specify nodeProperties.
An object with various properties specific to multi-node parallel jobs. If
* you specify node properties for a job, it becomes a multi-node parallel job. For
* more information, see Multi-node
* Parallel Jobs in the Batch User Guide. If the job definition's
* type parameter is container, then you must specify
* either containerProperties or nodeProperties.
If the job runs on Fargate resources, then you must not specify
* nodeProperties; use containerProperties instead.
If the job runs on Amazon EKS resources, then you must not
* specify nodeProperties.
An object with various properties specific to multi-node parallel jobs. If
* you specify node properties for a job, it becomes a multi-node parallel job. For
* more information, see Multi-node
* Parallel Jobs in the Batch User Guide. If the job definition's
* type parameter is container, then you must specify
* either containerProperties or nodeProperties.
If the job runs on Fargate resources, then you must not specify
* nodeProperties; use containerProperties instead.
If the job runs on Amazon EKS resources, then you must not
* specify nodeProperties.
An object with various properties specific to multi-node parallel jobs. If
* you specify node properties for a job, it becomes a multi-node parallel job. For
* more information, see Multi-node
* Parallel Jobs in the Batch User Guide. If the job definition's
* type parameter is container, then you must specify
* either containerProperties or nodeProperties.
If the job runs on Fargate resources, then you must not specify
* nodeProperties; use containerProperties instead.
If the job runs on Amazon EKS resources, then you must not
* specify nodeProperties.
The retry strategy to use for failed jobs that are submitted with this job * definition. Any retry strategy that's specified during a SubmitJob * operation overrides the retry strategy defined here. If a job is terminated due * to a timeout, it isn't retried.
*/ inline const RetryStrategy& GetRetryStrategy() const{ return m_retryStrategy; } /** *The retry strategy to use for failed jobs that are submitted with this job * definition. Any retry strategy that's specified during a SubmitJob * operation overrides the retry strategy defined here. If a job is terminated due * to a timeout, it isn't retried.
*/ inline bool RetryStrategyHasBeenSet() const { return m_retryStrategyHasBeenSet; } /** *The retry strategy to use for failed jobs that are submitted with this job * definition. Any retry strategy that's specified during a SubmitJob * operation overrides the retry strategy defined here. If a job is terminated due * to a timeout, it isn't retried.
*/ inline void SetRetryStrategy(const RetryStrategy& value) { m_retryStrategyHasBeenSet = true; m_retryStrategy = value; } /** *The retry strategy to use for failed jobs that are submitted with this job * definition. Any retry strategy that's specified during a SubmitJob * operation overrides the retry strategy defined here. If a job is terminated due * to a timeout, it isn't retried.
*/ inline void SetRetryStrategy(RetryStrategy&& value) { m_retryStrategyHasBeenSet = true; m_retryStrategy = std::move(value); } /** *The retry strategy to use for failed jobs that are submitted with this job * definition. Any retry strategy that's specified during a SubmitJob * operation overrides the retry strategy defined here. If a job is terminated due * to a timeout, it isn't retried.
*/ inline RegisterJobDefinitionRequest& WithRetryStrategy(const RetryStrategy& value) { SetRetryStrategy(value); return *this;} /** *The retry strategy to use for failed jobs that are submitted with this job * definition. Any retry strategy that's specified during a SubmitJob * operation overrides the retry strategy defined here. If a job is terminated due * to a timeout, it isn't retried.
*/ inline RegisterJobDefinitionRequest& WithRetryStrategy(RetryStrategy&& value) { SetRetryStrategy(std::move(value)); return *this;} /** *Specifies whether to propagate the tags from the job or job definition to the
* corresponding Amazon ECS task. If no value is specified, the tags are not
* propagated. Tags can only be propagated to the tasks during task creation. For
* tags with the same name, job tags are given priority over job definitions tags.
* If the total number of combined tags from the job and job definition is over 50,
* the job is moved to the FAILED state.
If the job runs
* on Amazon EKS resources, then you must not specify
* propagateTags.
Specifies whether to propagate the tags from the job or job definition to the
* corresponding Amazon ECS task. If no value is specified, the tags are not
* propagated. Tags can only be propagated to the tasks during task creation. For
* tags with the same name, job tags are given priority over job definitions tags.
* If the total number of combined tags from the job and job definition is over 50,
* the job is moved to the FAILED state.
If the job runs
* on Amazon EKS resources, then you must not specify
* propagateTags.
Specifies whether to propagate the tags from the job or job definition to the
* corresponding Amazon ECS task. If no value is specified, the tags are not
* propagated. Tags can only be propagated to the tasks during task creation. For
* tags with the same name, job tags are given priority over job definitions tags.
* If the total number of combined tags from the job and job definition is over 50,
* the job is moved to the FAILED state.
If the job runs
* on Amazon EKS resources, then you must not specify
* propagateTags.
Specifies whether to propagate the tags from the job or job definition to the
* corresponding Amazon ECS task. If no value is specified, the tags are not
* propagated. Tags can only be propagated to the tasks during task creation. For
* tags with the same name, job tags are given priority over job definitions tags.
* If the total number of combined tags from the job and job definition is over 50,
* the job is moved to the FAILED state.
If the job runs
* on Amazon EKS resources, then you must not specify
* propagateTags.
The timeout configuration for jobs that are submitted with this job * definition, after which Batch terminates your jobs if they have not finished. If * a job is terminated due to a timeout, it isn't retried. The minimum value for * the timeout is 60 seconds. Any timeout configuration that's specified during a * SubmitJob operation overrides the timeout configuration defined here. For * more information, see Job * Timeouts in the Batch User Guide.
*/ inline const JobTimeout& GetTimeout() const{ return m_timeout; } /** *The timeout configuration for jobs that are submitted with this job * definition, after which Batch terminates your jobs if they have not finished. If * a job is terminated due to a timeout, it isn't retried. The minimum value for * the timeout is 60 seconds. Any timeout configuration that's specified during a * SubmitJob operation overrides the timeout configuration defined here. For * more information, see Job * Timeouts in the Batch User Guide.
*/ inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; } /** *The timeout configuration for jobs that are submitted with this job * definition, after which Batch terminates your jobs if they have not finished. If * a job is terminated due to a timeout, it isn't retried. The minimum value for * the timeout is 60 seconds. Any timeout configuration that's specified during a * SubmitJob operation overrides the timeout configuration defined here. For * more information, see Job * Timeouts in the Batch User Guide.
*/ inline void SetTimeout(const JobTimeout& value) { m_timeoutHasBeenSet = true; m_timeout = value; } /** *The timeout configuration for jobs that are submitted with this job * definition, after which Batch terminates your jobs if they have not finished. If * a job is terminated due to a timeout, it isn't retried. The minimum value for * the timeout is 60 seconds. Any timeout configuration that's specified during a * SubmitJob operation overrides the timeout configuration defined here. For * more information, see Job * Timeouts in the Batch User Guide.
*/ inline void SetTimeout(JobTimeout&& value) { m_timeoutHasBeenSet = true; m_timeout = std::move(value); } /** *The timeout configuration for jobs that are submitted with this job * definition, after which Batch terminates your jobs if they have not finished. If * a job is terminated due to a timeout, it isn't retried. The minimum value for * the timeout is 60 seconds. Any timeout configuration that's specified during a * SubmitJob operation overrides the timeout configuration defined here. For * more information, see Job * Timeouts in the Batch User Guide.
*/ inline RegisterJobDefinitionRequest& WithTimeout(const JobTimeout& value) { SetTimeout(value); return *this;} /** *The timeout configuration for jobs that are submitted with this job * definition, after which Batch terminates your jobs if they have not finished. If * a job is terminated due to a timeout, it isn't retried. The minimum value for * the timeout is 60 seconds. Any timeout configuration that's specified during a * SubmitJob operation overrides the timeout configuration defined here. For * more information, see Job * Timeouts in the Batch User Guide.
*/ inline RegisterJobDefinitionRequest& WithTimeout(JobTimeout&& value) { SetTimeout(std::move(value)); return *this;} /** *The tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline const Aws::MapThe tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *The tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline void SetTags(const Aws::MapThe tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline void SetTags(Aws::MapThe tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& WithTags(const Aws::MapThe tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& WithTags(Aws::MapThe tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *The tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *The tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *The tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *The tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *The tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *The tags that you apply to the job definition to help you categorize and * organize your resources. Each tag consists of a key and an optional value. For * more information, see Tagging * Amazon Web Services Resources in Batch User Guide.
*/ inline RegisterJobDefinitionRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *The platform capabilities required by the job definition. If no value is
* specified, it defaults to EC2. To run the job on Fargate resources,
* specify FARGATE.
If the job runs on Amazon EKS
* resources, then you must not specify platformCapabilities.
The platform capabilities required by the job definition. If no value is
* specified, it defaults to EC2. To run the job on Fargate resources,
* specify FARGATE.
If the job runs on Amazon EKS
* resources, then you must not specify platformCapabilities.
The platform capabilities required by the job definition. If no value is
* specified, it defaults to EC2. To run the job on Fargate resources,
* specify FARGATE.
If the job runs on Amazon EKS
* resources, then you must not specify platformCapabilities.
The platform capabilities required by the job definition. If no value is
* specified, it defaults to EC2. To run the job on Fargate resources,
* specify FARGATE.
If the job runs on Amazon EKS
* resources, then you must not specify platformCapabilities.
The platform capabilities required by the job definition. If no value is
* specified, it defaults to EC2. To run the job on Fargate resources,
* specify FARGATE.
If the job runs on Amazon EKS
* resources, then you must not specify platformCapabilities.
The platform capabilities required by the job definition. If no value is
* specified, it defaults to EC2. To run the job on Fargate resources,
* specify FARGATE.
If the job runs on Amazon EKS
* resources, then you must not specify platformCapabilities.
The platform capabilities required by the job definition. If no value is
* specified, it defaults to EC2. To run the job on Fargate resources,
* specify FARGATE.
If the job runs on Amazon EKS
* resources, then you must not specify platformCapabilities.
The platform capabilities required by the job definition. If no value is
* specified, it defaults to EC2. To run the job on Fargate resources,
* specify FARGATE.
If the job runs on Amazon EKS
* resources, then you must not specify platformCapabilities.
An object with various properties that are specific to Amazon EKS based jobs. * This must not be specified for Amazon ECS based job definitions.
*/ inline const EksProperties& GetEksProperties() const{ return m_eksProperties; } /** *An object with various properties that are specific to Amazon EKS based jobs. * This must not be specified for Amazon ECS based job definitions.
*/ inline bool EksPropertiesHasBeenSet() const { return m_eksPropertiesHasBeenSet; } /** *An object with various properties that are specific to Amazon EKS based jobs. * This must not be specified for Amazon ECS based job definitions.
*/ inline void SetEksProperties(const EksProperties& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = value; } /** *An object with various properties that are specific to Amazon EKS based jobs. * This must not be specified for Amazon ECS based job definitions.
*/ inline void SetEksProperties(EksProperties&& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = std::move(value); } /** *An object with various properties that are specific to Amazon EKS based jobs. * This must not be specified for Amazon ECS based job definitions.
*/ inline RegisterJobDefinitionRequest& WithEksProperties(const EksProperties& value) { SetEksProperties(value); return *this;} /** *An object with various properties that are specific to Amazon EKS based jobs. * This must not be specified for Amazon ECS based job definitions.
*/ inline RegisterJobDefinitionRequest& WithEksProperties(EksProperties&& value) { SetEksProperties(std::move(value)); return *this;} private: Aws::String m_jobDefinitionName; bool m_jobDefinitionNameHasBeenSet = false; JobDefinitionType m_type; bool m_typeHasBeenSet = false; Aws::Map