/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains the parameters for CreateJobQueue
.See
* Also:
AWS
* API Reference
The name of the job queue. It can be up to 128 letters long. It can contain * uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
*/ inline const Aws::String& GetJobQueueName() const{ return m_jobQueueName; } /** *The name of the job queue. It can be up to 128 letters long. It can contain * uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
*/ inline bool JobQueueNameHasBeenSet() const { return m_jobQueueNameHasBeenSet; } /** *The name of the job queue. It can be up to 128 letters long. It can contain * uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
*/ inline void SetJobQueueName(const Aws::String& value) { m_jobQueueNameHasBeenSet = true; m_jobQueueName = value; } /** *The name of the job queue. It can be up to 128 letters long. It can contain * uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
*/ inline void SetJobQueueName(Aws::String&& value) { m_jobQueueNameHasBeenSet = true; m_jobQueueName = std::move(value); } /** *The name of the job queue. It can be up to 128 letters long. It can contain * uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
*/ inline void SetJobQueueName(const char* value) { m_jobQueueNameHasBeenSet = true; m_jobQueueName.assign(value); } /** *The name of the job queue. It can be up to 128 letters long. It can contain * uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
*/ inline CreateJobQueueRequest& WithJobQueueName(const Aws::String& value) { SetJobQueueName(value); return *this;} /** *The name of the job queue. It can be up to 128 letters long. It can contain * uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
*/ inline CreateJobQueueRequest& WithJobQueueName(Aws::String&& value) { SetJobQueueName(std::move(value)); return *this;} /** *The name of the job queue. It can be up to 128 letters long. It can contain * uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
*/ inline CreateJobQueueRequest& WithJobQueueName(const char* value) { SetJobQueueName(value); return *this;} /** *The state of the job queue. If the job queue state is ENABLED
,
* it is able to accept jobs. If the job queue state is DISABLED
, new
* jobs can't be added to the queue, but jobs already in the queue can finish.
The state of the job queue. If the job queue state is ENABLED
,
* it is able to accept jobs. If the job queue state is DISABLED
, new
* jobs can't be added to the queue, but jobs already in the queue can finish.
The state of the job queue. If the job queue state is ENABLED
,
* it is able to accept jobs. If the job queue state is DISABLED
, new
* jobs can't be added to the queue, but jobs already in the queue can finish.
The state of the job queue. If the job queue state is ENABLED
,
* it is able to accept jobs. If the job queue state is DISABLED
, new
* jobs can't be added to the queue, but jobs already in the queue can finish.
The state of the job queue. If the job queue state is ENABLED
,
* it is able to accept jobs. If the job queue state is DISABLED
, new
* jobs can't be added to the queue, but jobs already in the queue can finish.
The state of the job queue. If the job queue state is ENABLED
,
* it is able to accept jobs. If the job queue state is DISABLED
, new
* jobs can't be added to the queue, but jobs already in the queue can finish.
The Amazon Resource Name (ARN) of the fair share scheduling policy. If this
* parameter is specified, the job queue uses a fair share scheduling policy. If
* this parameter isn't specified, the job queue uses a first in, first out (FIFO)
* scheduling policy. After a job queue is created, you can replace but can't
* remove the fair share scheduling policy. The format is
* aws:Partition:batch:Region:Account:scheduling-policy/Name
*
. An example is
* aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy
.
The Amazon Resource Name (ARN) of the fair share scheduling policy. If this
* parameter is specified, the job queue uses a fair share scheduling policy. If
* this parameter isn't specified, the job queue uses a first in, first out (FIFO)
* scheduling policy. After a job queue is created, you can replace but can't
* remove the fair share scheduling policy. The format is
* aws:Partition:batch:Region:Account:scheduling-policy/Name
*
. An example is
* aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy
.
The Amazon Resource Name (ARN) of the fair share scheduling policy. If this
* parameter is specified, the job queue uses a fair share scheduling policy. If
* this parameter isn't specified, the job queue uses a first in, first out (FIFO)
* scheduling policy. After a job queue is created, you can replace but can't
* remove the fair share scheduling policy. The format is
* aws:Partition:batch:Region:Account:scheduling-policy/Name
*
. An example is
* aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy
.
The Amazon Resource Name (ARN) of the fair share scheduling policy. If this
* parameter is specified, the job queue uses a fair share scheduling policy. If
* this parameter isn't specified, the job queue uses a first in, first out (FIFO)
* scheduling policy. After a job queue is created, you can replace but can't
* remove the fair share scheduling policy. The format is
* aws:Partition:batch:Region:Account:scheduling-policy/Name
*
. An example is
* aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy
.
The Amazon Resource Name (ARN) of the fair share scheduling policy. If this
* parameter is specified, the job queue uses a fair share scheduling policy. If
* this parameter isn't specified, the job queue uses a first in, first out (FIFO)
* scheduling policy. After a job queue is created, you can replace but can't
* remove the fair share scheduling policy. The format is
* aws:Partition:batch:Region:Account:scheduling-policy/Name
*
. An example is
* aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy
.
The Amazon Resource Name (ARN) of the fair share scheduling policy. If this
* parameter is specified, the job queue uses a fair share scheduling policy. If
* this parameter isn't specified, the job queue uses a first in, first out (FIFO)
* scheduling policy. After a job queue is created, you can replace but can't
* remove the fair share scheduling policy. The format is
* aws:Partition:batch:Region:Account:scheduling-policy/Name
*
. An example is
* aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy
.
The Amazon Resource Name (ARN) of the fair share scheduling policy. If this
* parameter is specified, the job queue uses a fair share scheduling policy. If
* this parameter isn't specified, the job queue uses a first in, first out (FIFO)
* scheduling policy. After a job queue is created, you can replace but can't
* remove the fair share scheduling policy. The format is
* aws:Partition:batch:Region:Account:scheduling-policy/Name
*
. An example is
* aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy
.
The Amazon Resource Name (ARN) of the fair share scheduling policy. If this
* parameter is specified, the job queue uses a fair share scheduling policy. If
* this parameter isn't specified, the job queue uses a first in, first out (FIFO)
* scheduling policy. After a job queue is created, you can replace but can't
* remove the fair share scheduling policy. The format is
* aws:Partition:batch:Region:Account:scheduling-policy/Name
*
. An example is
* aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy
.
The priority of the job queue. Job queues with a higher priority (or a higher
* integer value for the priority
parameter) are evaluated first when
* associated with the same compute environment. Priority is determined in
* descending order. For example, a job queue with a priority value of
* 10
is given scheduling preference over a job queue with a priority
* value of 1
. All of the compute environments must be either EC2
* (EC2
or SPOT
) or Fargate (FARGATE
or
* FARGATE_SPOT
); EC2 and Fargate compute environments can't be
* mixed.
The priority of the job queue. Job queues with a higher priority (or a higher
* integer value for the priority
parameter) are evaluated first when
* associated with the same compute environment. Priority is determined in
* descending order. For example, a job queue with a priority value of
* 10
is given scheduling preference over a job queue with a priority
* value of 1
. All of the compute environments must be either EC2
* (EC2
or SPOT
) or Fargate (FARGATE
or
* FARGATE_SPOT
); EC2 and Fargate compute environments can't be
* mixed.
The priority of the job queue. Job queues with a higher priority (or a higher
* integer value for the priority
parameter) are evaluated first when
* associated with the same compute environment. Priority is determined in
* descending order. For example, a job queue with a priority value of
* 10
is given scheduling preference over a job queue with a priority
* value of 1
. All of the compute environments must be either EC2
* (EC2
or SPOT
) or Fargate (FARGATE
or
* FARGATE_SPOT
); EC2 and Fargate compute environments can't be
* mixed.
The priority of the job queue. Job queues with a higher priority (or a higher
* integer value for the priority
parameter) are evaluated first when
* associated with the same compute environment. Priority is determined in
* descending order. For example, a job queue with a priority value of
* 10
is given scheduling preference over a job queue with a priority
* value of 1
. All of the compute environments must be either EC2
* (EC2
or SPOT
) or Fargate (FARGATE
or
* FARGATE_SPOT
); EC2 and Fargate compute environments can't be
* mixed.
The set of compute environments mapped to a job queue and their order
* relative to each other. The job scheduler uses this parameter to determine which
* compute environment runs a specific job. Compute environments must be in the
* VALID
state before you can associate them with a job queue. You can
* associate up to three compute environments with a job queue. All of the compute
* environments must be either EC2 (EC2
or SPOT
) or
* Fargate (FARGATE
or FARGATE_SPOT
); EC2 and Fargate
* compute environments can't be mixed.
All compute environments that * are associated with a job queue must share the same architecture. Batch doesn't * support mixing compute environment architecture types in a single job queue.
* */ inline const Aws::VectorThe set of compute environments mapped to a job queue and their order
* relative to each other. The job scheduler uses this parameter to determine which
* compute environment runs a specific job. Compute environments must be in the
* VALID
state before you can associate them with a job queue. You can
* associate up to three compute environments with a job queue. All of the compute
* environments must be either EC2 (EC2
or SPOT
) or
* Fargate (FARGATE
or FARGATE_SPOT
); EC2 and Fargate
* compute environments can't be mixed.
All compute environments that * are associated with a job queue must share the same architecture. Batch doesn't * support mixing compute environment architecture types in a single job queue.
* */ inline bool ComputeEnvironmentOrderHasBeenSet() const { return m_computeEnvironmentOrderHasBeenSet; } /** *The set of compute environments mapped to a job queue and their order
* relative to each other. The job scheduler uses this parameter to determine which
* compute environment runs a specific job. Compute environments must be in the
* VALID
state before you can associate them with a job queue. You can
* associate up to three compute environments with a job queue. All of the compute
* environments must be either EC2 (EC2
or SPOT
) or
* Fargate (FARGATE
or FARGATE_SPOT
); EC2 and Fargate
* compute environments can't be mixed.
All compute environments that * are associated with a job queue must share the same architecture. Batch doesn't * support mixing compute environment architecture types in a single job queue.
* */ inline void SetComputeEnvironmentOrder(const Aws::VectorThe set of compute environments mapped to a job queue and their order
* relative to each other. The job scheduler uses this parameter to determine which
* compute environment runs a specific job. Compute environments must be in the
* VALID
state before you can associate them with a job queue. You can
* associate up to three compute environments with a job queue. All of the compute
* environments must be either EC2 (EC2
or SPOT
) or
* Fargate (FARGATE
or FARGATE_SPOT
); EC2 and Fargate
* compute environments can't be mixed.
All compute environments that * are associated with a job queue must share the same architecture. Batch doesn't * support mixing compute environment architecture types in a single job queue.
* */ inline void SetComputeEnvironmentOrder(Aws::VectorThe set of compute environments mapped to a job queue and their order
* relative to each other. The job scheduler uses this parameter to determine which
* compute environment runs a specific job. Compute environments must be in the
* VALID
state before you can associate them with a job queue. You can
* associate up to three compute environments with a job queue. All of the compute
* environments must be either EC2 (EC2
or SPOT
) or
* Fargate (FARGATE
or FARGATE_SPOT
); EC2 and Fargate
* compute environments can't be mixed.
All compute environments that * are associated with a job queue must share the same architecture. Batch doesn't * support mixing compute environment architecture types in a single job queue.
* */ inline CreateJobQueueRequest& WithComputeEnvironmentOrder(const Aws::VectorThe set of compute environments mapped to a job queue and their order
* relative to each other. The job scheduler uses this parameter to determine which
* compute environment runs a specific job. Compute environments must be in the
* VALID
state before you can associate them with a job queue. You can
* associate up to three compute environments with a job queue. All of the compute
* environments must be either EC2 (EC2
or SPOT
) or
* Fargate (FARGATE
or FARGATE_SPOT
); EC2 and Fargate
* compute environments can't be mixed.
All compute environments that * are associated with a job queue must share the same architecture. Batch doesn't * support mixing compute environment architecture types in a single job queue.
* */ inline CreateJobQueueRequest& WithComputeEnvironmentOrder(Aws::VectorThe set of compute environments mapped to a job queue and their order
* relative to each other. The job scheduler uses this parameter to determine which
* compute environment runs a specific job. Compute environments must be in the
* VALID
state before you can associate them with a job queue. You can
* associate up to three compute environments with a job queue. All of the compute
* environments must be either EC2 (EC2
or SPOT
) or
* Fargate (FARGATE
or FARGATE_SPOT
); EC2 and Fargate
* compute environments can't be mixed.
All compute environments that * are associated with a job queue must share the same architecture. Batch doesn't * support mixing compute environment architecture types in a single job queue.
* */ inline CreateJobQueueRequest& AddComputeEnvironmentOrder(const ComputeEnvironmentOrder& value) { m_computeEnvironmentOrderHasBeenSet = true; m_computeEnvironmentOrder.push_back(value); return *this; } /** *The set of compute environments mapped to a job queue and their order
* relative to each other. The job scheduler uses this parameter to determine which
* compute environment runs a specific job. Compute environments must be in the
* VALID
state before you can associate them with a job queue. You can
* associate up to three compute environments with a job queue. All of the compute
* environments must be either EC2 (EC2
or SPOT
) or
* Fargate (FARGATE
or FARGATE_SPOT
); EC2 and Fargate
* compute environments can't be mixed.
All compute environments that * are associated with a job queue must share the same architecture. Batch doesn't * support mixing compute environment architecture types in a single job queue.
* */ inline CreateJobQueueRequest& AddComputeEnvironmentOrder(ComputeEnvironmentOrder&& value) { m_computeEnvironmentOrderHasBeenSet = true; m_computeEnvironmentOrder.push_back(std::move(value)); return *this; } /** *The tags that you apply to the job queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline const Aws::MapThe tags that you apply to the job queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *The tags that you apply to the job queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline void SetTags(const Aws::MapThe tags that you apply to the job queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline void SetTags(Aws::MapThe tags that you apply to the job queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& WithTags(const Aws::MapThe tags that you apply to the job queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& WithTags(Aws::MapThe tags that you apply to the job queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& 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 queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& 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 queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& 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 queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& 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 queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& 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 queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& 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 queue to help you categorize and organize * your resources. Each tag consists of a key and an optional value. For more * information, see Tagging * your Batch resources in Batch User Guide.
*/ inline CreateJobQueueRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } private: Aws::String m_jobQueueName; bool m_jobQueueNameHasBeenSet = false; JQState m_state; bool m_stateHasBeenSet = false; Aws::String m_schedulingPolicyArn; bool m_schedulingPolicyArnHasBeenSet = false; int m_priority; bool m_priorityHasBeenSet = false; Aws::Vector