/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents the input for a request action.See Also:
AWS
* API Reference
A descriptive label that is associated with game session queue. Queue names * must be unique within each Region.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *A descriptive label that is associated with game session queue. Queue names * must be unique within each Region.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *A descriptive label that is associated with game session queue. Queue names * must be unique within each Region.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *A descriptive label that is associated with game session queue. Queue names * must be unique within each Region.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *A descriptive label that is associated with game session queue. Queue names * must be unique within each Region.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *A descriptive label that is associated with game session queue. Queue names * must be unique within each Region.
*/ inline CreateGameSessionQueueRequest& WithName(const Aws::String& value) { SetName(value); return *this;} /** *A descriptive label that is associated with game session queue. Queue names * must be unique within each Region.
*/ inline CreateGameSessionQueueRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *A descriptive label that is associated with game session queue. Queue names * must be unique within each Region.
*/ inline CreateGameSessionQueueRequest& WithName(const char* value) { SetName(value); return *this;} /** *The maximum time, in seconds, that a new game session placement request
* remains in the queue. When a request exceeds this time, the game session
* placement changes to a TIMED_OUT status.
The maximum time, in seconds, that a new game session placement request
* remains in the queue. When a request exceeds this time, the game session
* placement changes to a TIMED_OUT status.
The maximum time, in seconds, that a new game session placement request
* remains in the queue. When a request exceeds this time, the game session
* placement changes to a TIMED_OUT status.
The maximum time, in seconds, that a new game session placement request
* remains in the queue. When a request exceeds this time, the game session
* placement changes to a TIMED_OUT status.
A collection of latency policies to apply when processing game sessions
* placement requests with player latency information. Multiple policies are
* evaluated in order of the maximum latency value, starting with the lowest
* latency values. With just one policy, the policy is enforced at the start of the
* game session placement for the duration period. With multiple policies, each
* policy is enforced consecutively for its duration period. For example, a queue
* might enforce a 60-second policy followed by a 120-second policy, and then no
* policy for the remainder of the placement. A player latency policy must set a
* value for MaximumIndividualPlayerLatencyMilliseconds. If none is
* set, this API request fails.
A collection of latency policies to apply when processing game sessions
* placement requests with player latency information. Multiple policies are
* evaluated in order of the maximum latency value, starting with the lowest
* latency values. With just one policy, the policy is enforced at the start of the
* game session placement for the duration period. With multiple policies, each
* policy is enforced consecutively for its duration period. For example, a queue
* might enforce a 60-second policy followed by a 120-second policy, and then no
* policy for the remainder of the placement. A player latency policy must set a
* value for MaximumIndividualPlayerLatencyMilliseconds. If none is
* set, this API request fails.
A collection of latency policies to apply when processing game sessions
* placement requests with player latency information. Multiple policies are
* evaluated in order of the maximum latency value, starting with the lowest
* latency values. With just one policy, the policy is enforced at the start of the
* game session placement for the duration period. With multiple policies, each
* policy is enforced consecutively for its duration period. For example, a queue
* might enforce a 60-second policy followed by a 120-second policy, and then no
* policy for the remainder of the placement. A player latency policy must set a
* value for MaximumIndividualPlayerLatencyMilliseconds. If none is
* set, this API request fails.
A collection of latency policies to apply when processing game sessions
* placement requests with player latency information. Multiple policies are
* evaluated in order of the maximum latency value, starting with the lowest
* latency values. With just one policy, the policy is enforced at the start of the
* game session placement for the duration period. With multiple policies, each
* policy is enforced consecutively for its duration period. For example, a queue
* might enforce a 60-second policy followed by a 120-second policy, and then no
* policy for the remainder of the placement. A player latency policy must set a
* value for MaximumIndividualPlayerLatencyMilliseconds. If none is
* set, this API request fails.
A collection of latency policies to apply when processing game sessions
* placement requests with player latency information. Multiple policies are
* evaluated in order of the maximum latency value, starting with the lowest
* latency values. With just one policy, the policy is enforced at the start of the
* game session placement for the duration period. With multiple policies, each
* policy is enforced consecutively for its duration period. For example, a queue
* might enforce a 60-second policy followed by a 120-second policy, and then no
* policy for the remainder of the placement. A player latency policy must set a
* value for MaximumIndividualPlayerLatencyMilliseconds. If none is
* set, this API request fails.
A collection of latency policies to apply when processing game sessions
* placement requests with player latency information. Multiple policies are
* evaluated in order of the maximum latency value, starting with the lowest
* latency values. With just one policy, the policy is enforced at the start of the
* game session placement for the duration period. With multiple policies, each
* policy is enforced consecutively for its duration period. For example, a queue
* might enforce a 60-second policy followed by a 120-second policy, and then no
* policy for the remainder of the placement. A player latency policy must set a
* value for MaximumIndividualPlayerLatencyMilliseconds. If none is
* set, this API request fails.
A collection of latency policies to apply when processing game sessions
* placement requests with player latency information. Multiple policies are
* evaluated in order of the maximum latency value, starting with the lowest
* latency values. With just one policy, the policy is enforced at the start of the
* game session placement for the duration period. With multiple policies, each
* policy is enforced consecutively for its duration period. For example, a queue
* might enforce a 60-second policy followed by a 120-second policy, and then no
* policy for the remainder of the placement. A player latency policy must set a
* value for MaximumIndividualPlayerLatencyMilliseconds. If none is
* set, this API request fails.
A collection of latency policies to apply when processing game sessions
* placement requests with player latency information. Multiple policies are
* evaluated in order of the maximum latency value, starting with the lowest
* latency values. With just one policy, the policy is enforced at the start of the
* game session placement for the duration period. With multiple policies, each
* policy is enforced consecutively for its duration period. For example, a queue
* might enforce a 60-second policy followed by a 120-second policy, and then no
* policy for the remainder of the placement. A player latency policy must set a
* value for MaximumIndividualPlayerLatencyMilliseconds. If none is
* set, this API request fails.
A list of fleets that can be used to fulfill game session placement requests * in the queue. Fleets are identified by either a fleet ARN or a fleet alias ARN. * Destinations are listed in default preference order.
*/ inline const Aws::VectorA list of fleets that can be used to fulfill game session placement requests * in the queue. Fleets are identified by either a fleet ARN or a fleet alias ARN. * Destinations are listed in default preference order.
*/ inline bool DestinationsHasBeenSet() const { return m_destinationsHasBeenSet; } /** *A list of fleets that can be used to fulfill game session placement requests * in the queue. Fleets are identified by either a fleet ARN or a fleet alias ARN. * Destinations are listed in default preference order.
*/ inline void SetDestinations(const Aws::VectorA list of fleets that can be used to fulfill game session placement requests * in the queue. Fleets are identified by either a fleet ARN or a fleet alias ARN. * Destinations are listed in default preference order.
*/ inline void SetDestinations(Aws::VectorA list of fleets that can be used to fulfill game session placement requests * in the queue. Fleets are identified by either a fleet ARN or a fleet alias ARN. * Destinations are listed in default preference order.
*/ inline CreateGameSessionQueueRequest& WithDestinations(const Aws::VectorA list of fleets that can be used to fulfill game session placement requests * in the queue. Fleets are identified by either a fleet ARN or a fleet alias ARN. * Destinations are listed in default preference order.
*/ inline CreateGameSessionQueueRequest& WithDestinations(Aws::VectorA list of fleets that can be used to fulfill game session placement requests * in the queue. Fleets are identified by either a fleet ARN or a fleet alias ARN. * Destinations are listed in default preference order.
*/ inline CreateGameSessionQueueRequest& AddDestinations(const GameSessionQueueDestination& value) { m_destinationsHasBeenSet = true; m_destinations.push_back(value); return *this; } /** *A list of fleets that can be used to fulfill game session placement requests * in the queue. Fleets are identified by either a fleet ARN or a fleet alias ARN. * Destinations are listed in default preference order.
*/ inline CreateGameSessionQueueRequest& AddDestinations(GameSessionQueueDestination&& value) { m_destinationsHasBeenSet = true; m_destinations.push_back(std::move(value)); return *this; } /** *A list of labels to assign to the new game session queue resource. Tags are * developer-defined key-value pairs. Tagging AWS resources are useful for resource * management, access management and cost allocation. For more information, see Tagging * AWS Resources in the AWS General Reference. Once the resource is * created, you can use TagResource, UntagResource, and * ListTagsForResource to add, remove, and view tags. The maximum tag limit * may be lower than stated. See the AWS General Reference for actual tagging * limits.
*/ inline const Aws::VectorA list of labels to assign to the new game session queue resource. Tags are * developer-defined key-value pairs. Tagging AWS resources are useful for resource * management, access management and cost allocation. For more information, see Tagging * AWS Resources in the AWS General Reference. Once the resource is * created, you can use TagResource, UntagResource, and * ListTagsForResource to add, remove, and view tags. The maximum tag limit * may be lower than stated. See the AWS General Reference for actual tagging * limits.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *A list of labels to assign to the new game session queue resource. Tags are * developer-defined key-value pairs. Tagging AWS resources are useful for resource * management, access management and cost allocation. For more information, see Tagging * AWS Resources in the AWS General Reference. Once the resource is * created, you can use TagResource, UntagResource, and * ListTagsForResource to add, remove, and view tags. The maximum tag limit * may be lower than stated. See the AWS General Reference for actual tagging * limits.
*/ inline void SetTags(const Aws::VectorA list of labels to assign to the new game session queue resource. Tags are * developer-defined key-value pairs. Tagging AWS resources are useful for resource * management, access management and cost allocation. For more information, see Tagging * AWS Resources in the AWS General Reference. Once the resource is * created, you can use TagResource, UntagResource, and * ListTagsForResource to add, remove, and view tags. The maximum tag limit * may be lower than stated. See the AWS General Reference for actual tagging * limits.
*/ inline void SetTags(Aws::VectorA list of labels to assign to the new game session queue resource. Tags are * developer-defined key-value pairs. Tagging AWS resources are useful for resource * management, access management and cost allocation. For more information, see Tagging * AWS Resources in the AWS General Reference. Once the resource is * created, you can use TagResource, UntagResource, and * ListTagsForResource to add, remove, and view tags. The maximum tag limit * may be lower than stated. See the AWS General Reference for actual tagging * limits.
*/ inline CreateGameSessionQueueRequest& WithTags(const Aws::VectorA list of labels to assign to the new game session queue resource. Tags are * developer-defined key-value pairs. Tagging AWS resources are useful for resource * management, access management and cost allocation. For more information, see Tagging * AWS Resources in the AWS General Reference. Once the resource is * created, you can use TagResource, UntagResource, and * ListTagsForResource to add, remove, and view tags. The maximum tag limit * may be lower than stated. See the AWS General Reference for actual tagging * limits.
*/ inline CreateGameSessionQueueRequest& WithTags(Aws::VectorA list of labels to assign to the new game session queue resource. Tags are * developer-defined key-value pairs. Tagging AWS resources are useful for resource * management, access management and cost allocation. For more information, see Tagging * AWS Resources in the AWS General Reference. Once the resource is * created, you can use TagResource, UntagResource, and * ListTagsForResource to add, remove, and view tags. The maximum tag limit * may be lower than stated. See the AWS General Reference for actual tagging * limits.
*/ inline CreateGameSessionQueueRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *A list of labels to assign to the new game session queue resource. Tags are * developer-defined key-value pairs. Tagging AWS resources are useful for resource * management, access management and cost allocation. For more information, see Tagging * AWS Resources in the AWS General Reference. Once the resource is * created, you can use TagResource, UntagResource, and * ListTagsForResource to add, remove, and view tags. The maximum tag limit * may be lower than stated. See the AWS General Reference for actual tagging * limits.
*/ inline CreateGameSessionQueueRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_name; bool m_nameHasBeenSet; int m_timeoutInSeconds; bool m_timeoutInSecondsHasBeenSet; Aws::Vector