/**
* 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 a fleet. Fleet names do not need * to be unique.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *A descriptive label that is associated with a fleet. Fleet names do not need * to be unique.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *A descriptive label that is associated with a fleet. Fleet names do not need * to be unique.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *A descriptive label that is associated with a fleet. Fleet names do not need * to be unique.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *A descriptive label that is associated with a fleet. Fleet names do not need * to be unique.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *A descriptive label that is associated with a fleet. Fleet names do not need * to be unique.
*/ inline CreateFleetRequest& WithName(const Aws::String& value) { SetName(value); return *this;} /** *A descriptive label that is associated with a fleet. Fleet names do not need * to be unique.
*/ inline CreateFleetRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *A descriptive label that is associated with a fleet. Fleet names do not need * to be unique.
*/ inline CreateFleetRequest& WithName(const char* value) { SetName(value); return *this;} /** *A human-readable description of a fleet.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *A human-readable description of a fleet.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *A human-readable description of a fleet.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *A human-readable description of a fleet.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *A human-readable description of a fleet.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *A human-readable description of a fleet.
*/ inline CreateFleetRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *A human-readable description of a fleet.
*/ inline CreateFleetRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *A human-readable description of a fleet.
*/ inline CreateFleetRequest& WithDescription(const char* value) { SetDescription(value); return *this;} /** *A unique identifier for a build to be deployed on the new fleet. You can use
* either the build ID or ARN value. The custom game server build must have been
* successfully uploaded to Amazon GameLift and be in a READY status.
* This fleet setting cannot be changed once the fleet is created.
A unique identifier for a build to be deployed on the new fleet. You can use
* either the build ID or ARN value. The custom game server build must have been
* successfully uploaded to Amazon GameLift and be in a READY status.
* This fleet setting cannot be changed once the fleet is created.
A unique identifier for a build to be deployed on the new fleet. You can use
* either the build ID or ARN value. The custom game server build must have been
* successfully uploaded to Amazon GameLift and be in a READY status.
* This fleet setting cannot be changed once the fleet is created.
A unique identifier for a build to be deployed on the new fleet. You can use
* either the build ID or ARN value. The custom game server build must have been
* successfully uploaded to Amazon GameLift and be in a READY status.
* This fleet setting cannot be changed once the fleet is created.
A unique identifier for a build to be deployed on the new fleet. You can use
* either the build ID or ARN value. The custom game server build must have been
* successfully uploaded to Amazon GameLift and be in a READY status.
* This fleet setting cannot be changed once the fleet is created.
A unique identifier for a build to be deployed on the new fleet. You can use
* either the build ID or ARN value. The custom game server build must have been
* successfully uploaded to Amazon GameLift and be in a READY status.
* This fleet setting cannot be changed once the fleet is created.
A unique identifier for a build to be deployed on the new fleet. You can use
* either the build ID or ARN value. The custom game server build must have been
* successfully uploaded to Amazon GameLift and be in a READY status.
* This fleet setting cannot be changed once the fleet is created.
A unique identifier for a build to be deployed on the new fleet. You can use
* either the build ID or ARN value. The custom game server build must have been
* successfully uploaded to Amazon GameLift and be in a READY status.
* This fleet setting cannot be changed once the fleet is created.
A unique identifier for a Realtime script to be deployed on the new fleet. * You can use either the script ID or ARN value. The Realtime script must have * been successfully uploaded to Amazon GameLift. This fleet setting cannot be * changed once the fleet is created.
*/ inline const Aws::String& GetScriptId() const{ return m_scriptId; } /** *A unique identifier for a Realtime script to be deployed on the new fleet. * You can use either the script ID or ARN value. The Realtime script must have * been successfully uploaded to Amazon GameLift. This fleet setting cannot be * changed once the fleet is created.
*/ inline bool ScriptIdHasBeenSet() const { return m_scriptIdHasBeenSet; } /** *A unique identifier for a Realtime script to be deployed on the new fleet. * You can use either the script ID or ARN value. The Realtime script must have * been successfully uploaded to Amazon GameLift. This fleet setting cannot be * changed once the fleet is created.
*/ inline void SetScriptId(const Aws::String& value) { m_scriptIdHasBeenSet = true; m_scriptId = value; } /** *A unique identifier for a Realtime script to be deployed on the new fleet. * You can use either the script ID or ARN value. The Realtime script must have * been successfully uploaded to Amazon GameLift. This fleet setting cannot be * changed once the fleet is created.
*/ inline void SetScriptId(Aws::String&& value) { m_scriptIdHasBeenSet = true; m_scriptId = std::move(value); } /** *A unique identifier for a Realtime script to be deployed on the new fleet. * You can use either the script ID or ARN value. The Realtime script must have * been successfully uploaded to Amazon GameLift. This fleet setting cannot be * changed once the fleet is created.
*/ inline void SetScriptId(const char* value) { m_scriptIdHasBeenSet = true; m_scriptId.assign(value); } /** *A unique identifier for a Realtime script to be deployed on the new fleet. * You can use either the script ID or ARN value. The Realtime script must have * been successfully uploaded to Amazon GameLift. This fleet setting cannot be * changed once the fleet is created.
*/ inline CreateFleetRequest& WithScriptId(const Aws::String& value) { SetScriptId(value); return *this;} /** *A unique identifier for a Realtime script to be deployed on the new fleet. * You can use either the script ID or ARN value. The Realtime script must have * been successfully uploaded to Amazon GameLift. This fleet setting cannot be * changed once the fleet is created.
*/ inline CreateFleetRequest& WithScriptId(Aws::String&& value) { SetScriptId(std::move(value)); return *this;} /** *A unique identifier for a Realtime script to be deployed on the new fleet. * You can use either the script ID or ARN value. The Realtime script must have * been successfully uploaded to Amazon GameLift. This fleet setting cannot be * changed once the fleet is created.
*/ inline CreateFleetRequest& WithScriptId(const char* value) { SetScriptId(value); return *this;} /** *This parameter is no longer used. Instead, specify a server launch path using
* the RuntimeConfiguration parameter. Requests that specify a server
* launch path and launch parameters instead of a runtime configuration will
* continue to work.
This parameter is no longer used. Instead, specify a server launch path using
* the RuntimeConfiguration parameter. Requests that specify a server
* launch path and launch parameters instead of a runtime configuration will
* continue to work.
This parameter is no longer used. Instead, specify a server launch path using
* the RuntimeConfiguration parameter. Requests that specify a server
* launch path and launch parameters instead of a runtime configuration will
* continue to work.
This parameter is no longer used. Instead, specify a server launch path using
* the RuntimeConfiguration parameter. Requests that specify a server
* launch path and launch parameters instead of a runtime configuration will
* continue to work.
This parameter is no longer used. Instead, specify a server launch path using
* the RuntimeConfiguration parameter. Requests that specify a server
* launch path and launch parameters instead of a runtime configuration will
* continue to work.
This parameter is no longer used. Instead, specify a server launch path using
* the RuntimeConfiguration parameter. Requests that specify a server
* launch path and launch parameters instead of a runtime configuration will
* continue to work.
This parameter is no longer used. Instead, specify a server launch path using
* the RuntimeConfiguration parameter. Requests that specify a server
* launch path and launch parameters instead of a runtime configuration will
* continue to work.
This parameter is no longer used. Instead, specify a server launch path using
* the RuntimeConfiguration parameter. Requests that specify a server
* launch path and launch parameters instead of a runtime configuration will
* continue to work.
This parameter is no longer used. Instead, specify server launch parameters
* in the RuntimeConfiguration parameter. (Requests that specify a
* server launch path and launch parameters instead of a runtime configuration will
* continue to work.)
This parameter is no longer used. Instead, specify server launch parameters
* in the RuntimeConfiguration parameter. (Requests that specify a
* server launch path and launch parameters instead of a runtime configuration will
* continue to work.)
This parameter is no longer used. Instead, specify server launch parameters
* in the RuntimeConfiguration parameter. (Requests that specify a
* server launch path and launch parameters instead of a runtime configuration will
* continue to work.)
This parameter is no longer used. Instead, specify server launch parameters
* in the RuntimeConfiguration parameter. (Requests that specify a
* server launch path and launch parameters instead of a runtime configuration will
* continue to work.)
This parameter is no longer used. Instead, specify server launch parameters
* in the RuntimeConfiguration parameter. (Requests that specify a
* server launch path and launch parameters instead of a runtime configuration will
* continue to work.)
This parameter is no longer used. Instead, specify server launch parameters
* in the RuntimeConfiguration parameter. (Requests that specify a
* server launch path and launch parameters instead of a runtime configuration will
* continue to work.)
This parameter is no longer used. Instead, specify server launch parameters
* in the RuntimeConfiguration parameter. (Requests that specify a
* server launch path and launch parameters instead of a runtime configuration will
* continue to work.)
This parameter is no longer used. Instead, specify server launch parameters
* in the RuntimeConfiguration parameter. (Requests that specify a
* server launch path and launch parameters instead of a runtime configuration will
* continue to work.)
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
This parameter is no longer used. Instead, to specify where Amazon GameLift
* should store log files once a server process shuts down, use the Amazon GameLift
* server API ProcessReady() and specify one or more directory paths
* in logParameters. See more information in the Server
* API Reference.
The name of an EC2 instance type that is supported in Amazon GameLift. A * fleet instance type determines the computing resources of each instance in the * fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift * supports the following EC2 instance types. See Amazon EC2 Instance Types * for detailed descriptions.
*/ inline const EC2InstanceType& GetEC2InstanceType() const{ return m_eC2InstanceType; } /** *The name of an EC2 instance type that is supported in Amazon GameLift. A * fleet instance type determines the computing resources of each instance in the * fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift * supports the following EC2 instance types. See Amazon EC2 Instance Types * for detailed descriptions.
*/ inline bool EC2InstanceTypeHasBeenSet() const { return m_eC2InstanceTypeHasBeenSet; } /** *The name of an EC2 instance type that is supported in Amazon GameLift. A * fleet instance type determines the computing resources of each instance in the * fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift * supports the following EC2 instance types. See Amazon EC2 Instance Types * for detailed descriptions.
*/ inline void SetEC2InstanceType(const EC2InstanceType& value) { m_eC2InstanceTypeHasBeenSet = true; m_eC2InstanceType = value; } /** *The name of an EC2 instance type that is supported in Amazon GameLift. A * fleet instance type determines the computing resources of each instance in the * fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift * supports the following EC2 instance types. See Amazon EC2 Instance Types * for detailed descriptions.
*/ inline void SetEC2InstanceType(EC2InstanceType&& value) { m_eC2InstanceTypeHasBeenSet = true; m_eC2InstanceType = std::move(value); } /** *The name of an EC2 instance type that is supported in Amazon GameLift. A * fleet instance type determines the computing resources of each instance in the * fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift * supports the following EC2 instance types. See Amazon EC2 Instance Types * for detailed descriptions.
*/ inline CreateFleetRequest& WithEC2InstanceType(const EC2InstanceType& value) { SetEC2InstanceType(value); return *this;} /** *The name of an EC2 instance type that is supported in Amazon GameLift. A * fleet instance type determines the computing resources of each instance in the * fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift * supports the following EC2 instance types. See Amazon EC2 Instance Types * for detailed descriptions.
*/ inline CreateFleetRequest& WithEC2InstanceType(EC2InstanceType&& value) { SetEC2InstanceType(std::move(value)); return *this;} /** *Range of IP addresses and port settings that permit inbound traffic to access * game sessions that are running on the fleet. For fleets using a custom game * build, this parameter is required before game sessions running on the fleet can * accept connections. For Realtime Servers fleets, Amazon GameLift automatically * sets TCP and UDP ranges for use by the Realtime servers. You can specify * multiple permission settings or add more by updating the fleet.
*/ inline const Aws::VectorRange of IP addresses and port settings that permit inbound traffic to access * game sessions that are running on the fleet. For fleets using a custom game * build, this parameter is required before game sessions running on the fleet can * accept connections. For Realtime Servers fleets, Amazon GameLift automatically * sets TCP and UDP ranges for use by the Realtime servers. You can specify * multiple permission settings or add more by updating the fleet.
*/ inline bool EC2InboundPermissionsHasBeenSet() const { return m_eC2InboundPermissionsHasBeenSet; } /** *Range of IP addresses and port settings that permit inbound traffic to access * game sessions that are running on the fleet. For fleets using a custom game * build, this parameter is required before game sessions running on the fleet can * accept connections. For Realtime Servers fleets, Amazon GameLift automatically * sets TCP and UDP ranges for use by the Realtime servers. You can specify * multiple permission settings or add more by updating the fleet.
*/ inline void SetEC2InboundPermissions(const Aws::VectorRange of IP addresses and port settings that permit inbound traffic to access * game sessions that are running on the fleet. For fleets using a custom game * build, this parameter is required before game sessions running on the fleet can * accept connections. For Realtime Servers fleets, Amazon GameLift automatically * sets TCP and UDP ranges for use by the Realtime servers. You can specify * multiple permission settings or add more by updating the fleet.
*/ inline void SetEC2InboundPermissions(Aws::VectorRange of IP addresses and port settings that permit inbound traffic to access * game sessions that are running on the fleet. For fleets using a custom game * build, this parameter is required before game sessions running on the fleet can * accept connections. For Realtime Servers fleets, Amazon GameLift automatically * sets TCP and UDP ranges for use by the Realtime servers. You can specify * multiple permission settings or add more by updating the fleet.
*/ inline CreateFleetRequest& WithEC2InboundPermissions(const Aws::VectorRange of IP addresses and port settings that permit inbound traffic to access * game sessions that are running on the fleet. For fleets using a custom game * build, this parameter is required before game sessions running on the fleet can * accept connections. For Realtime Servers fleets, Amazon GameLift automatically * sets TCP and UDP ranges for use by the Realtime servers. You can specify * multiple permission settings or add more by updating the fleet.
*/ inline CreateFleetRequest& WithEC2InboundPermissions(Aws::VectorRange of IP addresses and port settings that permit inbound traffic to access * game sessions that are running on the fleet. For fleets using a custom game * build, this parameter is required before game sessions running on the fleet can * accept connections. For Realtime Servers fleets, Amazon GameLift automatically * sets TCP and UDP ranges for use by the Realtime servers. You can specify * multiple permission settings or add more by updating the fleet.
*/ inline CreateFleetRequest& AddEC2InboundPermissions(const IpPermission& value) { m_eC2InboundPermissionsHasBeenSet = true; m_eC2InboundPermissions.push_back(value); return *this; } /** *Range of IP addresses and port settings that permit inbound traffic to access * game sessions that are running on the fleet. For fleets using a custom game * build, this parameter is required before game sessions running on the fleet can * accept connections. For Realtime Servers fleets, Amazon GameLift automatically * sets TCP and UDP ranges for use by the Realtime servers. You can specify * multiple permission settings or add more by updating the fleet.
*/ inline CreateFleetRequest& AddEC2InboundPermissions(IpPermission&& value) { m_eC2InboundPermissionsHasBeenSet = true; m_eC2InboundPermissions.push_back(std::move(value)); return *this; } /** *A game session protection policy to apply to all instances in this fleet. If * this parameter is not set, instances in this fleet default to no protection. You * can change a fleet's protection policy using UpdateFleetAttributes, but * this change will only affect sessions created after the policy change. You can * also set protection for individual instances using UpdateGameSession.
*NoProtection - The game session can be terminated during a * scale-down event.
FullProtection - If the game session
* is in an ACTIVE status, it cannot be terminated during a scale-down
* event.
A game session protection policy to apply to all instances in this fleet. If * this parameter is not set, instances in this fleet default to no protection. You * can change a fleet's protection policy using UpdateFleetAttributes, but * this change will only affect sessions created after the policy change. You can * also set protection for individual instances using UpdateGameSession.
*NoProtection - The game session can be terminated during a * scale-down event.
FullProtection - If the game session
* is in an ACTIVE status, it cannot be terminated during a scale-down
* event.
A game session protection policy to apply to all instances in this fleet. If * this parameter is not set, instances in this fleet default to no protection. You * can change a fleet's protection policy using UpdateFleetAttributes, but * this change will only affect sessions created after the policy change. You can * also set protection for individual instances using UpdateGameSession.
*NoProtection - The game session can be terminated during a * scale-down event.
FullProtection - If the game session
* is in an ACTIVE status, it cannot be terminated during a scale-down
* event.
A game session protection policy to apply to all instances in this fleet. If * this parameter is not set, instances in this fleet default to no protection. You * can change a fleet's protection policy using UpdateFleetAttributes, but * this change will only affect sessions created after the policy change. You can * also set protection for individual instances using UpdateGameSession.
*NoProtection - The game session can be terminated during a * scale-down event.
FullProtection - If the game session
* is in an ACTIVE status, it cannot be terminated during a scale-down
* event.
A game session protection policy to apply to all instances in this fleet. If * this parameter is not set, instances in this fleet default to no protection. You * can change a fleet's protection policy using UpdateFleetAttributes, but * this change will only affect sessions created after the policy change. You can * also set protection for individual instances using UpdateGameSession.
*NoProtection - The game session can be terminated during a * scale-down event.
FullProtection - If the game session
* is in an ACTIVE status, it cannot be terminated during a scale-down
* event.
A game session protection policy to apply to all instances in this fleet. If * this parameter is not set, instances in this fleet default to no protection. You * can change a fleet's protection policy using UpdateFleetAttributes, but * this change will only affect sessions created after the policy change. You can * also set protection for individual instances using UpdateGameSession.
*NoProtection - The game session can be terminated during a * scale-down event.
FullProtection - If the game session
* is in an ACTIVE status, it cannot be terminated during a scale-down
* event.
Instructions for launching server processes on each instance in the fleet.
* Server processes run either a custom game build executable or a Realtime script.
* The runtime configuration defines the server executables or launch script file,
* launch parameters, and the number of processes to run concurrently on each
* instance. When creating a fleet, the runtime configuration must have at least
* one server process configuration; otherwise the request fails with an invalid
* request exception. (This parameter replaces the parameters
* ServerLaunchPath and ServerLaunchParameters, although
* requests that contain values for these parameters instead of a runtime
* configuration will continue to work.) This parameter is required unless the
* parameters ServerLaunchPath and ServerLaunchParameters
* are defined. Runtime configuration replaced these parameters, but fleets that
* use them will continue to work.
Instructions for launching server processes on each instance in the fleet.
* Server processes run either a custom game build executable or a Realtime script.
* The runtime configuration defines the server executables or launch script file,
* launch parameters, and the number of processes to run concurrently on each
* instance. When creating a fleet, the runtime configuration must have at least
* one server process configuration; otherwise the request fails with an invalid
* request exception. (This parameter replaces the parameters
* ServerLaunchPath and ServerLaunchParameters, although
* requests that contain values for these parameters instead of a runtime
* configuration will continue to work.) This parameter is required unless the
* parameters ServerLaunchPath and ServerLaunchParameters
* are defined. Runtime configuration replaced these parameters, but fleets that
* use them will continue to work.
Instructions for launching server processes on each instance in the fleet.
* Server processes run either a custom game build executable or a Realtime script.
* The runtime configuration defines the server executables or launch script file,
* launch parameters, and the number of processes to run concurrently on each
* instance. When creating a fleet, the runtime configuration must have at least
* one server process configuration; otherwise the request fails with an invalid
* request exception. (This parameter replaces the parameters
* ServerLaunchPath and ServerLaunchParameters, although
* requests that contain values for these parameters instead of a runtime
* configuration will continue to work.) This parameter is required unless the
* parameters ServerLaunchPath and ServerLaunchParameters
* are defined. Runtime configuration replaced these parameters, but fleets that
* use them will continue to work.
Instructions for launching server processes on each instance in the fleet.
* Server processes run either a custom game build executable or a Realtime script.
* The runtime configuration defines the server executables or launch script file,
* launch parameters, and the number of processes to run concurrently on each
* instance. When creating a fleet, the runtime configuration must have at least
* one server process configuration; otherwise the request fails with an invalid
* request exception. (This parameter replaces the parameters
* ServerLaunchPath and ServerLaunchParameters, although
* requests that contain values for these parameters instead of a runtime
* configuration will continue to work.) This parameter is required unless the
* parameters ServerLaunchPath and ServerLaunchParameters
* are defined. Runtime configuration replaced these parameters, but fleets that
* use them will continue to work.
Instructions for launching server processes on each instance in the fleet.
* Server processes run either a custom game build executable or a Realtime script.
* The runtime configuration defines the server executables or launch script file,
* launch parameters, and the number of processes to run concurrently on each
* instance. When creating a fleet, the runtime configuration must have at least
* one server process configuration; otherwise the request fails with an invalid
* request exception. (This parameter replaces the parameters
* ServerLaunchPath and ServerLaunchParameters, although
* requests that contain values for these parameters instead of a runtime
* configuration will continue to work.) This parameter is required unless the
* parameters ServerLaunchPath and ServerLaunchParameters
* are defined. Runtime configuration replaced these parameters, but fleets that
* use them will continue to work.
Instructions for launching server processes on each instance in the fleet.
* Server processes run either a custom game build executable or a Realtime script.
* The runtime configuration defines the server executables or launch script file,
* launch parameters, and the number of processes to run concurrently on each
* instance. When creating a fleet, the runtime configuration must have at least
* one server process configuration; otherwise the request fails with an invalid
* request exception. (This parameter replaces the parameters
* ServerLaunchPath and ServerLaunchParameters, although
* requests that contain values for these parameters instead of a runtime
* configuration will continue to work.) This parameter is required unless the
* parameters ServerLaunchPath and ServerLaunchParameters
* are defined. Runtime configuration replaced these parameters, but fleets that
* use them will continue to work.
A policy that limits the number of game sessions an individual player can * create over a span of time for this fleet.
*/ inline const ResourceCreationLimitPolicy& GetResourceCreationLimitPolicy() const{ return m_resourceCreationLimitPolicy; } /** *A policy that limits the number of game sessions an individual player can * create over a span of time for this fleet.
*/ inline bool ResourceCreationLimitPolicyHasBeenSet() const { return m_resourceCreationLimitPolicyHasBeenSet; } /** *A policy that limits the number of game sessions an individual player can * create over a span of time for this fleet.
*/ inline void SetResourceCreationLimitPolicy(const ResourceCreationLimitPolicy& value) { m_resourceCreationLimitPolicyHasBeenSet = true; m_resourceCreationLimitPolicy = value; } /** *A policy that limits the number of game sessions an individual player can * create over a span of time for this fleet.
*/ inline void SetResourceCreationLimitPolicy(ResourceCreationLimitPolicy&& value) { m_resourceCreationLimitPolicyHasBeenSet = true; m_resourceCreationLimitPolicy = std::move(value); } /** *A policy that limits the number of game sessions an individual player can * create over a span of time for this fleet.
*/ inline CreateFleetRequest& WithResourceCreationLimitPolicy(const ResourceCreationLimitPolicy& value) { SetResourceCreationLimitPolicy(value); return *this;} /** *A policy that limits the number of game sessions an individual player can * create over a span of time for this fleet.
*/ inline CreateFleetRequest& WithResourceCreationLimitPolicy(ResourceCreationLimitPolicy&& value) { SetResourceCreationLimitPolicy(std::move(value)); return *this;} /** *The name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline const Aws::VectorThe name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline bool MetricGroupsHasBeenSet() const { return m_metricGroupsHasBeenSet; } /** *The name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline void SetMetricGroups(const Aws::VectorThe name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline void SetMetricGroups(Aws::VectorThe name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline CreateFleetRequest& WithMetricGroups(const Aws::VectorThe name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline CreateFleetRequest& WithMetricGroups(Aws::VectorThe name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline CreateFleetRequest& AddMetricGroups(const Aws::String& value) { m_metricGroupsHasBeenSet = true; m_metricGroups.push_back(value); return *this; } /** *The name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline CreateFleetRequest& AddMetricGroups(Aws::String&& value) { m_metricGroupsHasBeenSet = true; m_metricGroups.push_back(std::move(value)); return *this; } /** *The name of an Amazon CloudWatch metric group to add this fleet to. A metric * group aggregates the metrics for all fleets in the group. Specify an existing * metric group name, or provide a new name to create a new metric group. A fleet * can only be included in one metric group at a time.
*/ inline CreateFleetRequest& AddMetricGroups(const char* value) { m_metricGroupsHasBeenSet = true; m_metricGroups.push_back(value); return *this; } /** *A unique identifier for the AWS account with the VPC that you want to peer * your Amazon GameLift fleet with. You can find your account ID in the AWS * Management Console under account settings.
*/ inline const Aws::String& GetPeerVpcAwsAccountId() const{ return m_peerVpcAwsAccountId; } /** *A unique identifier for the AWS account with the VPC that you want to peer * your Amazon GameLift fleet with. You can find your account ID in the AWS * Management Console under account settings.
*/ inline bool PeerVpcAwsAccountIdHasBeenSet() const { return m_peerVpcAwsAccountIdHasBeenSet; } /** *A unique identifier for the AWS account with the VPC that you want to peer * your Amazon GameLift fleet with. You can find your account ID in the AWS * Management Console under account settings.
*/ inline void SetPeerVpcAwsAccountId(const Aws::String& value) { m_peerVpcAwsAccountIdHasBeenSet = true; m_peerVpcAwsAccountId = value; } /** *A unique identifier for the AWS account with the VPC that you want to peer * your Amazon GameLift fleet with. You can find your account ID in the AWS * Management Console under account settings.
*/ inline void SetPeerVpcAwsAccountId(Aws::String&& value) { m_peerVpcAwsAccountIdHasBeenSet = true; m_peerVpcAwsAccountId = std::move(value); } /** *A unique identifier for the AWS account with the VPC that you want to peer * your Amazon GameLift fleet with. You can find your account ID in the AWS * Management Console under account settings.
*/ inline void SetPeerVpcAwsAccountId(const char* value) { m_peerVpcAwsAccountIdHasBeenSet = true; m_peerVpcAwsAccountId.assign(value); } /** *A unique identifier for the AWS account with the VPC that you want to peer * your Amazon GameLift fleet with. You can find your account ID in the AWS * Management Console under account settings.
*/ inline CreateFleetRequest& WithPeerVpcAwsAccountId(const Aws::String& value) { SetPeerVpcAwsAccountId(value); return *this;} /** *A unique identifier for the AWS account with the VPC that you want to peer * your Amazon GameLift fleet with. You can find your account ID in the AWS * Management Console under account settings.
*/ inline CreateFleetRequest& WithPeerVpcAwsAccountId(Aws::String&& value) { SetPeerVpcAwsAccountId(std::move(value)); return *this;} /** *A unique identifier for the AWS account with the VPC that you want to peer * your Amazon GameLift fleet with. You can find your account ID in the AWS * Management Console under account settings.
*/ inline CreateFleetRequest& WithPeerVpcAwsAccountId(const char* value) { SetPeerVpcAwsAccountId(value); return *this;} /** *A unique identifier for a VPC with resources to be accessed by your Amazon * GameLift fleet. The VPC must be in the same Region as your fleet. To look up a * VPC ID, use the VPC Dashboard * in the AWS Management Console. Learn more about VPC peering in VPC * Peering with Amazon GameLift Fleets.
*/ inline const Aws::String& GetPeerVpcId() const{ return m_peerVpcId; } /** *A unique identifier for a VPC with resources to be accessed by your Amazon * GameLift fleet. The VPC must be in the same Region as your fleet. To look up a * VPC ID, use the VPC Dashboard * in the AWS Management Console. Learn more about VPC peering in VPC * Peering with Amazon GameLift Fleets.
*/ inline bool PeerVpcIdHasBeenSet() const { return m_peerVpcIdHasBeenSet; } /** *A unique identifier for a VPC with resources to be accessed by your Amazon * GameLift fleet. The VPC must be in the same Region as your fleet. To look up a * VPC ID, use the VPC Dashboard * in the AWS Management Console. Learn more about VPC peering in VPC * Peering with Amazon GameLift Fleets.
*/ inline void SetPeerVpcId(const Aws::String& value) { m_peerVpcIdHasBeenSet = true; m_peerVpcId = value; } /** *A unique identifier for a VPC with resources to be accessed by your Amazon * GameLift fleet. The VPC must be in the same Region as your fleet. To look up a * VPC ID, use the VPC Dashboard * in the AWS Management Console. Learn more about VPC peering in VPC * Peering with Amazon GameLift Fleets.
*/ inline void SetPeerVpcId(Aws::String&& value) { m_peerVpcIdHasBeenSet = true; m_peerVpcId = std::move(value); } /** *A unique identifier for a VPC with resources to be accessed by your Amazon * GameLift fleet. The VPC must be in the same Region as your fleet. To look up a * VPC ID, use the VPC Dashboard * in the AWS Management Console. Learn more about VPC peering in VPC * Peering with Amazon GameLift Fleets.
*/ inline void SetPeerVpcId(const char* value) { m_peerVpcIdHasBeenSet = true; m_peerVpcId.assign(value); } /** *A unique identifier for a VPC with resources to be accessed by your Amazon * GameLift fleet. The VPC must be in the same Region as your fleet. To look up a * VPC ID, use the VPC Dashboard * in the AWS Management Console. Learn more about VPC peering in VPC * Peering with Amazon GameLift Fleets.
*/ inline CreateFleetRequest& WithPeerVpcId(const Aws::String& value) { SetPeerVpcId(value); return *this;} /** *A unique identifier for a VPC with resources to be accessed by your Amazon * GameLift fleet. The VPC must be in the same Region as your fleet. To look up a * VPC ID, use the VPC Dashboard * in the AWS Management Console. Learn more about VPC peering in VPC * Peering with Amazon GameLift Fleets.
*/ inline CreateFleetRequest& WithPeerVpcId(Aws::String&& value) { SetPeerVpcId(std::move(value)); return *this;} /** *A unique identifier for a VPC with resources to be accessed by your Amazon * GameLift fleet. The VPC must be in the same Region as your fleet. To look up a * VPC ID, use the VPC Dashboard * in the AWS Management Console. Learn more about VPC peering in VPC * Peering with Amazon GameLift Fleets.
*/ inline CreateFleetRequest& WithPeerVpcId(const char* value) { SetPeerVpcId(value); return *this;} /** *Indicates whether to use On-Demand instances or Spot instances for this
* fleet. If empty, the default is ON_DEMAND. Both categories of
* instances use identical hardware and configurations based on the instance type
* selected for this fleet. Learn more about
* On-Demand versus Spot Instances.
Indicates whether to use On-Demand instances or Spot instances for this
* fleet. If empty, the default is ON_DEMAND. Both categories of
* instances use identical hardware and configurations based on the instance type
* selected for this fleet. Learn more about
* On-Demand versus Spot Instances.
Indicates whether to use On-Demand instances or Spot instances for this
* fleet. If empty, the default is ON_DEMAND. Both categories of
* instances use identical hardware and configurations based on the instance type
* selected for this fleet. Learn more about
* On-Demand versus Spot Instances.
Indicates whether to use On-Demand instances or Spot instances for this
* fleet. If empty, the default is ON_DEMAND. Both categories of
* instances use identical hardware and configurations based on the instance type
* selected for this fleet. Learn more about
* On-Demand versus Spot Instances.
Indicates whether to use On-Demand instances or Spot instances for this
* fleet. If empty, the default is ON_DEMAND. Both categories of
* instances use identical hardware and configurations based on the instance type
* selected for this fleet. Learn more about
* On-Demand versus Spot Instances.
Indicates whether to use On-Demand instances or Spot instances for this
* fleet. If empty, the default is ON_DEMAND. Both categories of
* instances use identical hardware and configurations based on the instance type
* selected for this fleet. Learn more about
* On-Demand versus Spot Instances.
A unique identifier for an AWS IAM role that manages access to your AWS * services. With an instance role ARN set, any application that runs on an * instance in this fleet can assume the role, including install scripts, server * processes, and daemons (background processes). Create a role or look up a role's * ARN from the IAM dashboard in * the AWS Management Console. Learn more about using on-box credentials for your * game servers at * Access external resources from a game server.
*/ inline const Aws::String& GetInstanceRoleArn() const{ return m_instanceRoleArn; } /** *A unique identifier for an AWS IAM role that manages access to your AWS * services. With an instance role ARN set, any application that runs on an * instance in this fleet can assume the role, including install scripts, server * processes, and daemons (background processes). Create a role or look up a role's * ARN from the IAM dashboard in * the AWS Management Console. Learn more about using on-box credentials for your * game servers at * Access external resources from a game server.
*/ inline bool InstanceRoleArnHasBeenSet() const { return m_instanceRoleArnHasBeenSet; } /** *A unique identifier for an AWS IAM role that manages access to your AWS * services. With an instance role ARN set, any application that runs on an * instance in this fleet can assume the role, including install scripts, server * processes, and daemons (background processes). Create a role or look up a role's * ARN from the IAM dashboard in * the AWS Management Console. Learn more about using on-box credentials for your * game servers at * Access external resources from a game server.
*/ inline void SetInstanceRoleArn(const Aws::String& value) { m_instanceRoleArnHasBeenSet = true; m_instanceRoleArn = value; } /** *A unique identifier for an AWS IAM role that manages access to your AWS * services. With an instance role ARN set, any application that runs on an * instance in this fleet can assume the role, including install scripts, server * processes, and daemons (background processes). Create a role or look up a role's * ARN from the IAM dashboard in * the AWS Management Console. Learn more about using on-box credentials for your * game servers at * Access external resources from a game server.
*/ inline void SetInstanceRoleArn(Aws::String&& value) { m_instanceRoleArnHasBeenSet = true; m_instanceRoleArn = std::move(value); } /** *A unique identifier for an AWS IAM role that manages access to your AWS * services. With an instance role ARN set, any application that runs on an * instance in this fleet can assume the role, including install scripts, server * processes, and daemons (background processes). Create a role or look up a role's * ARN from the IAM dashboard in * the AWS Management Console. Learn more about using on-box credentials for your * game servers at * Access external resources from a game server.
*/ inline void SetInstanceRoleArn(const char* value) { m_instanceRoleArnHasBeenSet = true; m_instanceRoleArn.assign(value); } /** *A unique identifier for an AWS IAM role that manages access to your AWS * services. With an instance role ARN set, any application that runs on an * instance in this fleet can assume the role, including install scripts, server * processes, and daemons (background processes). Create a role or look up a role's * ARN from the IAM dashboard in * the AWS Management Console. Learn more about using on-box credentials for your * game servers at * Access external resources from a game server.
*/ inline CreateFleetRequest& WithInstanceRoleArn(const Aws::String& value) { SetInstanceRoleArn(value); return *this;} /** *A unique identifier for an AWS IAM role that manages access to your AWS * services. With an instance role ARN set, any application that runs on an * instance in this fleet can assume the role, including install scripts, server * processes, and daemons (background processes). Create a role or look up a role's * ARN from the IAM dashboard in * the AWS Management Console. Learn more about using on-box credentials for your * game servers at * Access external resources from a game server.
*/ inline CreateFleetRequest& WithInstanceRoleArn(Aws::String&& value) { SetInstanceRoleArn(std::move(value)); return *this;} /** *A unique identifier for an AWS IAM role that manages access to your AWS * services. With an instance role ARN set, any application that runs on an * instance in this fleet can assume the role, including install scripts, server * processes, and daemons (background processes). Create a role or look up a role's * ARN from the IAM dashboard in * the AWS Management Console. Learn more about using on-box credentials for your * game servers at * Access external resources from a game server.
*/ inline CreateFleetRequest& WithInstanceRoleArn(const char* value) { SetInstanceRoleArn(value); return *this;} /** *Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS * certificates are used for encrypting traffic between game clients and game * servers running on GameLift. If this parameter is not specified, the default * value, DISABLED, is used. This fleet setting cannot be changed once the fleet is * created. Learn more at Securing * Client/Server Communication.
Note: This feature requires the AWS * Certificate Manager (ACM) service, which is available in the AWS global * partition but not in all other partitions. When working in a partition that does * not support this feature, a request for a new fleet with certificate generation * results fails with a 4xx unsupported Region error.
Valid values include: *
GENERATED - Generate a TLS/SSL certificate for this * fleet.
DISABLED - (default) Do not generate a TLS/SSL * certificate for this fleet.
Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS * certificates are used for encrypting traffic between game clients and game * servers running on GameLift. If this parameter is not specified, the default * value, DISABLED, is used. This fleet setting cannot be changed once the fleet is * created. Learn more at Securing * Client/Server Communication.
Note: This feature requires the AWS * Certificate Manager (ACM) service, which is available in the AWS global * partition but not in all other partitions. When working in a partition that does * not support this feature, a request for a new fleet with certificate generation * results fails with a 4xx unsupported Region error.
Valid values include: *
GENERATED - Generate a TLS/SSL certificate for this * fleet.
DISABLED - (default) Do not generate a TLS/SSL * certificate for this fleet.
Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS * certificates are used for encrypting traffic between game clients and game * servers running on GameLift. If this parameter is not specified, the default * value, DISABLED, is used. This fleet setting cannot be changed once the fleet is * created. Learn more at Securing * Client/Server Communication.
Note: This feature requires the AWS * Certificate Manager (ACM) service, which is available in the AWS global * partition but not in all other partitions. When working in a partition that does * not support this feature, a request for a new fleet with certificate generation * results fails with a 4xx unsupported Region error.
Valid values include: *
GENERATED - Generate a TLS/SSL certificate for this * fleet.
DISABLED - (default) Do not generate a TLS/SSL * certificate for this fleet.
Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS * certificates are used for encrypting traffic between game clients and game * servers running on GameLift. If this parameter is not specified, the default * value, DISABLED, is used. This fleet setting cannot be changed once the fleet is * created. Learn more at Securing * Client/Server Communication.
Note: This feature requires the AWS * Certificate Manager (ACM) service, which is available in the AWS global * partition but not in all other partitions. When working in a partition that does * not support this feature, a request for a new fleet with certificate generation * results fails with a 4xx unsupported Region error.
Valid values include: *
GENERATED - Generate a TLS/SSL certificate for this * fleet.
DISABLED - (default) Do not generate a TLS/SSL * certificate for this fleet.
Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS * certificates are used for encrypting traffic between game clients and game * servers running on GameLift. If this parameter is not specified, the default * value, DISABLED, is used. This fleet setting cannot be changed once the fleet is * created. Learn more at Securing * Client/Server Communication.
Note: This feature requires the AWS * Certificate Manager (ACM) service, which is available in the AWS global * partition but not in all other partitions. When working in a partition that does * not support this feature, a request for a new fleet with certificate generation * results fails with a 4xx unsupported Region error.
Valid values include: *
GENERATED - Generate a TLS/SSL certificate for this * fleet.
DISABLED - (default) Do not generate a TLS/SSL * certificate for this fleet.
Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS * certificates are used for encrypting traffic between game clients and game * servers running on GameLift. If this parameter is not specified, the default * value, DISABLED, is used. This fleet setting cannot be changed once the fleet is * created. Learn more at Securing * Client/Server Communication.
Note: This feature requires the AWS * Certificate Manager (ACM) service, which is available in the AWS global * partition but not in all other partitions. When working in a partition that does * not support this feature, a request for a new fleet with certificate generation * results fails with a 4xx unsupported Region error.
Valid values include: *
GENERATED - Generate a TLS/SSL certificate for this * fleet.
DISABLED - (default) Do not generate a TLS/SSL * certificate for this fleet.
A list of labels to assign to the new fleet 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 fleet 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 fleet 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 fleet 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 fleet 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 CreateFleetRequest& WithTags(const Aws::VectorA list of labels to assign to the new fleet 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 CreateFleetRequest& WithTags(Aws::VectorA list of labels to assign to the new fleet 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 CreateFleetRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *A list of labels to assign to the new fleet 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 CreateFleetRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_name; bool m_nameHasBeenSet; Aws::String m_description; bool m_descriptionHasBeenSet; Aws::String m_buildId; bool m_buildIdHasBeenSet; Aws::String m_scriptId; bool m_scriptIdHasBeenSet; Aws::String m_serverLaunchPath; bool m_serverLaunchPathHasBeenSet; Aws::String m_serverLaunchParameters; bool m_serverLaunchParametersHasBeenSet; Aws::Vector