/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes a fleet.See Also:
AWS API
* Reference
The Amazon Resource Name (ARN) for the fleet.
*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *The Amazon Resource Name (ARN) for the fleet.
*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *The Amazon Resource Name (ARN) for the fleet.
*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *The Amazon Resource Name (ARN) for the fleet.
*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *The Amazon Resource Name (ARN) for the fleet.
*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *The Amazon Resource Name (ARN) for the fleet.
*/ inline Fleet& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *The Amazon Resource Name (ARN) for the fleet.
*/ inline Fleet& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) for the fleet.
*/ inline Fleet& WithArn(const char* value) { SetArn(value); return *this;} /** *The name of the fleet.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the fleet.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the fleet.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the fleet.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the fleet.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the fleet.
*/ inline Fleet& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the fleet.
*/ inline Fleet& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the fleet.
*/ inline Fleet& WithName(const char* value) { SetName(value); return *this;} /** *The fleet name to display.
*/ inline const Aws::String& GetDisplayName() const{ return m_displayName; } /** *The fleet name to display.
*/ inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; } /** *The fleet name to display.
*/ inline void SetDisplayName(const Aws::String& value) { m_displayNameHasBeenSet = true; m_displayName = value; } /** *The fleet name to display.
*/ inline void SetDisplayName(Aws::String&& value) { m_displayNameHasBeenSet = true; m_displayName = std::move(value); } /** *The fleet name to display.
*/ inline void SetDisplayName(const char* value) { m_displayNameHasBeenSet = true; m_displayName.assign(value); } /** *The fleet name to display.
*/ inline Fleet& WithDisplayName(const Aws::String& value) { SetDisplayName(value); return *this;} /** *The fleet name to display.
*/ inline Fleet& WithDisplayName(Aws::String&& value) { SetDisplayName(std::move(value)); return *this;} /** *The fleet name to display.
*/ inline Fleet& WithDisplayName(const char* value) { SetDisplayName(value); return *this;} /** *The description to display.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *The description to display.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *The description to display.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *The description to display.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *The description to display.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *The description to display.
*/ inline Fleet& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *The description to display.
*/ inline Fleet& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *The description to display.
*/ inline Fleet& WithDescription(const char* value) { SetDescription(value); return *this;} /** *The name of the image used to create the fleet.
*/ inline const Aws::String& GetImageName() const{ return m_imageName; } /** *The name of the image used to create the fleet.
*/ inline bool ImageNameHasBeenSet() const { return m_imageNameHasBeenSet; } /** *The name of the image used to create the fleet.
*/ inline void SetImageName(const Aws::String& value) { m_imageNameHasBeenSet = true; m_imageName = value; } /** *The name of the image used to create the fleet.
*/ inline void SetImageName(Aws::String&& value) { m_imageNameHasBeenSet = true; m_imageName = std::move(value); } /** *The name of the image used to create the fleet.
*/ inline void SetImageName(const char* value) { m_imageNameHasBeenSet = true; m_imageName.assign(value); } /** *The name of the image used to create the fleet.
*/ inline Fleet& WithImageName(const Aws::String& value) { SetImageName(value); return *this;} /** *The name of the image used to create the fleet.
*/ inline Fleet& WithImageName(Aws::String&& value) { SetImageName(std::move(value)); return *this;} /** *The name of the image used to create the fleet.
*/ inline Fleet& WithImageName(const char* value) { SetImageName(value); return *this;} /** *The ARN for the public, private, or shared image.
*/ inline const Aws::String& GetImageArn() const{ return m_imageArn; } /** *The ARN for the public, private, or shared image.
*/ inline bool ImageArnHasBeenSet() const { return m_imageArnHasBeenSet; } /** *The ARN for the public, private, or shared image.
*/ inline void SetImageArn(const Aws::String& value) { m_imageArnHasBeenSet = true; m_imageArn = value; } /** *The ARN for the public, private, or shared image.
*/ inline void SetImageArn(Aws::String&& value) { m_imageArnHasBeenSet = true; m_imageArn = std::move(value); } /** *The ARN for the public, private, or shared image.
*/ inline void SetImageArn(const char* value) { m_imageArnHasBeenSet = true; m_imageArn.assign(value); } /** *The ARN for the public, private, or shared image.
*/ inline Fleet& WithImageArn(const Aws::String& value) { SetImageArn(value); return *this;} /** *The ARN for the public, private, or shared image.
*/ inline Fleet& WithImageArn(Aws::String&& value) { SetImageArn(std::move(value)); return *this;} /** *The ARN for the public, private, or shared image.
*/ inline Fleet& WithImageArn(const char* value) { SetImageArn(value); return *this;} /** *The instance type to use when launching fleet instances. The following * instance types are available:
stream.standard.small
stream.standard.medium
stream.standard.large
stream.compute.large
stream.compute.xlarge
stream.compute.2xlarge
stream.compute.4xlarge
*stream.compute.8xlarge
stream.memory.large
*stream.memory.xlarge
stream.memory.2xlarge
*stream.memory.4xlarge
stream.memory.8xlarge
*stream.memory.z1d.large
stream.memory.z1d.xlarge
stream.memory.z1d.2xlarge
*stream.memory.z1d.3xlarge
stream.memory.z1d.6xlarge
stream.memory.z1d.12xlarge
*stream.graphics-design.large
stream.graphics-design.xlarge
stream.graphics-design.2xlarge
stream.graphics-design.4xlarge
stream.graphics-desktop.2xlarge
stream.graphics.g4dn.xlarge
stream.graphics.g4dn.2xlarge
stream.graphics.g4dn.4xlarge
stream.graphics.g4dn.8xlarge
stream.graphics.g4dn.12xlarge
stream.graphics.g4dn.16xlarge
stream.graphics-pro.4xlarge
stream.graphics-pro.8xlarge
*stream.graphics-pro.16xlarge
The instance type to use when launching fleet instances. The following * instance types are available:
stream.standard.small
stream.standard.medium
stream.standard.large
stream.compute.large
stream.compute.xlarge
stream.compute.2xlarge
stream.compute.4xlarge
*stream.compute.8xlarge
stream.memory.large
*stream.memory.xlarge
stream.memory.2xlarge
*stream.memory.4xlarge
stream.memory.8xlarge
*stream.memory.z1d.large
stream.memory.z1d.xlarge
stream.memory.z1d.2xlarge
*stream.memory.z1d.3xlarge
stream.memory.z1d.6xlarge
stream.memory.z1d.12xlarge
*stream.graphics-design.large
stream.graphics-design.xlarge
stream.graphics-design.2xlarge
stream.graphics-design.4xlarge
stream.graphics-desktop.2xlarge
stream.graphics.g4dn.xlarge
stream.graphics.g4dn.2xlarge
stream.graphics.g4dn.4xlarge
stream.graphics.g4dn.8xlarge
stream.graphics.g4dn.12xlarge
stream.graphics.g4dn.16xlarge
stream.graphics-pro.4xlarge
stream.graphics-pro.8xlarge
*stream.graphics-pro.16xlarge
The instance type to use when launching fleet instances. The following * instance types are available:
stream.standard.small
stream.standard.medium
stream.standard.large
stream.compute.large
stream.compute.xlarge
stream.compute.2xlarge
stream.compute.4xlarge
*stream.compute.8xlarge
stream.memory.large
*stream.memory.xlarge
stream.memory.2xlarge
*stream.memory.4xlarge
stream.memory.8xlarge
*stream.memory.z1d.large
stream.memory.z1d.xlarge
stream.memory.z1d.2xlarge
*stream.memory.z1d.3xlarge
stream.memory.z1d.6xlarge
stream.memory.z1d.12xlarge
*stream.graphics-design.large
stream.graphics-design.xlarge
stream.graphics-design.2xlarge
stream.graphics-design.4xlarge
stream.graphics-desktop.2xlarge
stream.graphics.g4dn.xlarge
stream.graphics.g4dn.2xlarge
stream.graphics.g4dn.4xlarge
stream.graphics.g4dn.8xlarge
stream.graphics.g4dn.12xlarge
stream.graphics.g4dn.16xlarge
stream.graphics-pro.4xlarge
stream.graphics-pro.8xlarge
*stream.graphics-pro.16xlarge
The instance type to use when launching fleet instances. The following * instance types are available:
stream.standard.small
stream.standard.medium
stream.standard.large
stream.compute.large
stream.compute.xlarge
stream.compute.2xlarge
stream.compute.4xlarge
*stream.compute.8xlarge
stream.memory.large
*stream.memory.xlarge
stream.memory.2xlarge
*stream.memory.4xlarge
stream.memory.8xlarge
*stream.memory.z1d.large
stream.memory.z1d.xlarge
stream.memory.z1d.2xlarge
*stream.memory.z1d.3xlarge
stream.memory.z1d.6xlarge
stream.memory.z1d.12xlarge
*stream.graphics-design.large
stream.graphics-design.xlarge
stream.graphics-design.2xlarge
stream.graphics-design.4xlarge
stream.graphics-desktop.2xlarge
stream.graphics.g4dn.xlarge
stream.graphics.g4dn.2xlarge
stream.graphics.g4dn.4xlarge
stream.graphics.g4dn.8xlarge
stream.graphics.g4dn.12xlarge
stream.graphics.g4dn.16xlarge
stream.graphics-pro.4xlarge
stream.graphics-pro.8xlarge
*stream.graphics-pro.16xlarge
The instance type to use when launching fleet instances. The following * instance types are available:
stream.standard.small
stream.standard.medium
stream.standard.large
stream.compute.large
stream.compute.xlarge
stream.compute.2xlarge
stream.compute.4xlarge
*stream.compute.8xlarge
stream.memory.large
*stream.memory.xlarge
stream.memory.2xlarge
*stream.memory.4xlarge
stream.memory.8xlarge
*stream.memory.z1d.large
stream.memory.z1d.xlarge
stream.memory.z1d.2xlarge
*stream.memory.z1d.3xlarge
stream.memory.z1d.6xlarge
stream.memory.z1d.12xlarge
*stream.graphics-design.large
stream.graphics-design.xlarge
stream.graphics-design.2xlarge
stream.graphics-design.4xlarge
stream.graphics-desktop.2xlarge
stream.graphics.g4dn.xlarge
stream.graphics.g4dn.2xlarge
stream.graphics.g4dn.4xlarge
stream.graphics.g4dn.8xlarge
stream.graphics.g4dn.12xlarge
stream.graphics.g4dn.16xlarge
stream.graphics-pro.4xlarge
stream.graphics-pro.8xlarge
*stream.graphics-pro.16xlarge
The instance type to use when launching fleet instances. The following * instance types are available:
stream.standard.small
stream.standard.medium
stream.standard.large
stream.compute.large
stream.compute.xlarge
stream.compute.2xlarge
stream.compute.4xlarge
*stream.compute.8xlarge
stream.memory.large
*stream.memory.xlarge
stream.memory.2xlarge
*stream.memory.4xlarge
stream.memory.8xlarge
*stream.memory.z1d.large
stream.memory.z1d.xlarge
stream.memory.z1d.2xlarge
*stream.memory.z1d.3xlarge
stream.memory.z1d.6xlarge
stream.memory.z1d.12xlarge
*stream.graphics-design.large
stream.graphics-design.xlarge
stream.graphics-design.2xlarge
stream.graphics-design.4xlarge
stream.graphics-desktop.2xlarge
stream.graphics.g4dn.xlarge
stream.graphics.g4dn.2xlarge
stream.graphics.g4dn.4xlarge
stream.graphics.g4dn.8xlarge
stream.graphics.g4dn.12xlarge
stream.graphics.g4dn.16xlarge
stream.graphics-pro.4xlarge
stream.graphics-pro.8xlarge
*stream.graphics-pro.16xlarge
The instance type to use when launching fleet instances. The following * instance types are available:
stream.standard.small
stream.standard.medium
stream.standard.large
stream.compute.large
stream.compute.xlarge
stream.compute.2xlarge
stream.compute.4xlarge
*stream.compute.8xlarge
stream.memory.large
*stream.memory.xlarge
stream.memory.2xlarge
*stream.memory.4xlarge
stream.memory.8xlarge
*stream.memory.z1d.large
stream.memory.z1d.xlarge
stream.memory.z1d.2xlarge
*stream.memory.z1d.3xlarge
stream.memory.z1d.6xlarge
stream.memory.z1d.12xlarge
*stream.graphics-design.large
stream.graphics-design.xlarge
stream.graphics-design.2xlarge
stream.graphics-design.4xlarge
stream.graphics-desktop.2xlarge
stream.graphics.g4dn.xlarge
stream.graphics.g4dn.2xlarge
stream.graphics.g4dn.4xlarge
stream.graphics.g4dn.8xlarge
stream.graphics.g4dn.12xlarge
stream.graphics.g4dn.16xlarge
stream.graphics-pro.4xlarge
stream.graphics-pro.8xlarge
*stream.graphics-pro.16xlarge
The instance type to use when launching fleet instances. The following * instance types are available:
stream.standard.small
stream.standard.medium
stream.standard.large
stream.compute.large
stream.compute.xlarge
stream.compute.2xlarge
stream.compute.4xlarge
*stream.compute.8xlarge
stream.memory.large
*stream.memory.xlarge
stream.memory.2xlarge
*stream.memory.4xlarge
stream.memory.8xlarge
*stream.memory.z1d.large
stream.memory.z1d.xlarge
stream.memory.z1d.2xlarge
*stream.memory.z1d.3xlarge
stream.memory.z1d.6xlarge
stream.memory.z1d.12xlarge
*stream.graphics-design.large
stream.graphics-design.xlarge
stream.graphics-design.2xlarge
stream.graphics-design.4xlarge
stream.graphics-desktop.2xlarge
stream.graphics.g4dn.xlarge
stream.graphics.g4dn.2xlarge
stream.graphics.g4dn.4xlarge
stream.graphics.g4dn.8xlarge
stream.graphics.g4dn.12xlarge
stream.graphics.g4dn.16xlarge
stream.graphics-pro.4xlarge
stream.graphics-pro.8xlarge
*stream.graphics-pro.16xlarge
The fleet type.
Provides users with * instant-on access to their apps. You are charged for all running instances in * your fleet, even if no users are streaming apps.
Provide users with access to applications after they connect, which * takes one to two minutes. You are charged for instance streaming when users are * connected and a small hourly fee for instances that are not streaming apps.
*The fleet type.
Provides users with * instant-on access to their apps. You are charged for all running instances in * your fleet, even if no users are streaming apps.
Provide users with access to applications after they connect, which * takes one to two minutes. You are charged for instance streaming when users are * connected and a small hourly fee for instances that are not streaming apps.
*The fleet type.
Provides users with * instant-on access to their apps. You are charged for all running instances in * your fleet, even if no users are streaming apps.
Provide users with access to applications after they connect, which * takes one to two minutes. You are charged for instance streaming when users are * connected and a small hourly fee for instances that are not streaming apps.
*The fleet type.
Provides users with * instant-on access to their apps. You are charged for all running instances in * your fleet, even if no users are streaming apps.
Provide users with access to applications after they connect, which * takes one to two minutes. You are charged for instance streaming when users are * connected and a small hourly fee for instances that are not streaming apps.
*The fleet type.
Provides users with * instant-on access to their apps. You are charged for all running instances in * your fleet, even if no users are streaming apps.
Provide users with access to applications after they connect, which * takes one to two minutes. You are charged for instance streaming when users are * connected and a small hourly fee for instances that are not streaming apps.
*The fleet type.
Provides users with * instant-on access to their apps. You are charged for all running instances in * your fleet, even if no users are streaming apps.
Provide users with access to applications after they connect, which * takes one to two minutes. You are charged for instance streaming when users are * connected and a small hourly fee for instances that are not streaming apps.
*The capacity status for the fleet.
*/ inline const ComputeCapacityStatus& GetComputeCapacityStatus() const{ return m_computeCapacityStatus; } /** *The capacity status for the fleet.
*/ inline bool ComputeCapacityStatusHasBeenSet() const { return m_computeCapacityStatusHasBeenSet; } /** *The capacity status for the fleet.
*/ inline void SetComputeCapacityStatus(const ComputeCapacityStatus& value) { m_computeCapacityStatusHasBeenSet = true; m_computeCapacityStatus = value; } /** *The capacity status for the fleet.
*/ inline void SetComputeCapacityStatus(ComputeCapacityStatus&& value) { m_computeCapacityStatusHasBeenSet = true; m_computeCapacityStatus = std::move(value); } /** *The capacity status for the fleet.
*/ inline Fleet& WithComputeCapacityStatus(const ComputeCapacityStatus& value) { SetComputeCapacityStatus(value); return *this;} /** *The capacity status for the fleet.
*/ inline Fleet& WithComputeCapacityStatus(ComputeCapacityStatus&& value) { SetComputeCapacityStatus(std::move(value)); return *this;} /** *The maximum amount of time that a streaming session can remain active, in * seconds. If users are still connected to a streaming instance five minutes * before this limit is reached, they are prompted to save any open documents * before being disconnected. After this time elapses, the instance is terminated * and replaced by a new instance.
Specify a value between 600 and * 360000.
*/ inline int GetMaxUserDurationInSeconds() const{ return m_maxUserDurationInSeconds; } /** *The maximum amount of time that a streaming session can remain active, in * seconds. If users are still connected to a streaming instance five minutes * before this limit is reached, they are prompted to save any open documents * before being disconnected. After this time elapses, the instance is terminated * and replaced by a new instance.
Specify a value between 600 and * 360000.
*/ inline bool MaxUserDurationInSecondsHasBeenSet() const { return m_maxUserDurationInSecondsHasBeenSet; } /** *The maximum amount of time that a streaming session can remain active, in * seconds. If users are still connected to a streaming instance five minutes * before this limit is reached, they are prompted to save any open documents * before being disconnected. After this time elapses, the instance is terminated * and replaced by a new instance.
Specify a value between 600 and * 360000.
*/ inline void SetMaxUserDurationInSeconds(int value) { m_maxUserDurationInSecondsHasBeenSet = true; m_maxUserDurationInSeconds = value; } /** *The maximum amount of time that a streaming session can remain active, in * seconds. If users are still connected to a streaming instance five minutes * before this limit is reached, they are prompted to save any open documents * before being disconnected. After this time elapses, the instance is terminated * and replaced by a new instance.
Specify a value between 600 and * 360000.
*/ inline Fleet& WithMaxUserDurationInSeconds(int value) { SetMaxUserDurationInSeconds(value); return *this;} /** *The amount of time that a streaming session remains active after users * disconnect. If they try to reconnect to the streaming session after a * disconnection or network interruption within this time interval, they are * connected to their previous session. Otherwise, they are connected to a new * session with a new streaming instance.
Specify a value between 60 and * 360000.
*/ inline int GetDisconnectTimeoutInSeconds() const{ return m_disconnectTimeoutInSeconds; } /** *The amount of time that a streaming session remains active after users * disconnect. If they try to reconnect to the streaming session after a * disconnection or network interruption within this time interval, they are * connected to their previous session. Otherwise, they are connected to a new * session with a new streaming instance.
Specify a value between 60 and * 360000.
*/ inline bool DisconnectTimeoutInSecondsHasBeenSet() const { return m_disconnectTimeoutInSecondsHasBeenSet; } /** *The amount of time that a streaming session remains active after users * disconnect. If they try to reconnect to the streaming session after a * disconnection or network interruption within this time interval, they are * connected to their previous session. Otherwise, they are connected to a new * session with a new streaming instance.
Specify a value between 60 and * 360000.
*/ inline void SetDisconnectTimeoutInSeconds(int value) { m_disconnectTimeoutInSecondsHasBeenSet = true; m_disconnectTimeoutInSeconds = value; } /** *The amount of time that a streaming session remains active after users * disconnect. If they try to reconnect to the streaming session after a * disconnection or network interruption within this time interval, they are * connected to their previous session. Otherwise, they are connected to a new * session with a new streaming instance.
Specify a value between 60 and * 360000.
*/ inline Fleet& WithDisconnectTimeoutInSeconds(int value) { SetDisconnectTimeoutInSeconds(value); return *this;} /** *The current state for the fleet.
*/ inline const FleetState& GetState() const{ return m_state; } /** *The current state for the fleet.
*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *The current state for the fleet.
*/ inline void SetState(const FleetState& value) { m_stateHasBeenSet = true; m_state = value; } /** *The current state for the fleet.
*/ inline void SetState(FleetState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *The current state for the fleet.
*/ inline Fleet& WithState(const FleetState& value) { SetState(value); return *this;} /** *The current state for the fleet.
*/ inline Fleet& WithState(FleetState&& value) { SetState(std::move(value)); return *this;} /** *The VPC configuration for the fleet.
*/ inline const VpcConfig& GetVpcConfig() const{ return m_vpcConfig; } /** *The VPC configuration for the fleet.
*/ inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; } /** *The VPC configuration for the fleet.
*/ inline void SetVpcConfig(const VpcConfig& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; } /** *The VPC configuration for the fleet.
*/ inline void SetVpcConfig(VpcConfig&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); } /** *The VPC configuration for the fleet.
*/ inline Fleet& WithVpcConfig(const VpcConfig& value) { SetVpcConfig(value); return *this;} /** *The VPC configuration for the fleet.
*/ inline Fleet& WithVpcConfig(VpcConfig&& value) { SetVpcConfig(std::move(value)); return *this;} /** *The time the fleet was created.
*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *The time the fleet was created.
*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *The time the fleet was created.
*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *The time the fleet was created.
*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *The time the fleet was created.
*/ inline Fleet& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *The time the fleet was created.
*/ inline Fleet& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *The fleet errors.
*/ inline const Aws::VectorThe fleet errors.
*/ inline bool FleetErrorsHasBeenSet() const { return m_fleetErrorsHasBeenSet; } /** *The fleet errors.
*/ inline void SetFleetErrors(const Aws::VectorThe fleet errors.
*/ inline void SetFleetErrors(Aws::VectorThe fleet errors.
*/ inline Fleet& WithFleetErrors(const Aws::VectorThe fleet errors.
*/ inline Fleet& WithFleetErrors(Aws::VectorThe fleet errors.
*/ inline Fleet& AddFleetErrors(const FleetError& value) { m_fleetErrorsHasBeenSet = true; m_fleetErrors.push_back(value); return *this; } /** *The fleet errors.
*/ inline Fleet& AddFleetErrors(FleetError&& value) { m_fleetErrorsHasBeenSet = true; m_fleetErrors.push_back(std::move(value)); return *this; } /** *Indicates whether default internet access is enabled for the fleet.
*/ inline bool GetEnableDefaultInternetAccess() const{ return m_enableDefaultInternetAccess; } /** *Indicates whether default internet access is enabled for the fleet.
*/ inline bool EnableDefaultInternetAccessHasBeenSet() const { return m_enableDefaultInternetAccessHasBeenSet; } /** *Indicates whether default internet access is enabled for the fleet.
*/ inline void SetEnableDefaultInternetAccess(bool value) { m_enableDefaultInternetAccessHasBeenSet = true; m_enableDefaultInternetAccess = value; } /** *Indicates whether default internet access is enabled for the fleet.
*/ inline Fleet& WithEnableDefaultInternetAccess(bool value) { SetEnableDefaultInternetAccess(value); return *this;} /** *The name of the directory and organizational unit (OU) to use to join the * fleet to a Microsoft Active Directory domain.
*/ inline const DomainJoinInfo& GetDomainJoinInfo() const{ return m_domainJoinInfo; } /** *The name of the directory and organizational unit (OU) to use to join the * fleet to a Microsoft Active Directory domain.
*/ inline bool DomainJoinInfoHasBeenSet() const { return m_domainJoinInfoHasBeenSet; } /** *The name of the directory and organizational unit (OU) to use to join the * fleet to a Microsoft Active Directory domain.
*/ inline void SetDomainJoinInfo(const DomainJoinInfo& value) { m_domainJoinInfoHasBeenSet = true; m_domainJoinInfo = value; } /** *The name of the directory and organizational unit (OU) to use to join the * fleet to a Microsoft Active Directory domain.
*/ inline void SetDomainJoinInfo(DomainJoinInfo&& value) { m_domainJoinInfoHasBeenSet = true; m_domainJoinInfo = std::move(value); } /** *The name of the directory and organizational unit (OU) to use to join the * fleet to a Microsoft Active Directory domain.
*/ inline Fleet& WithDomainJoinInfo(const DomainJoinInfo& value) { SetDomainJoinInfo(value); return *this;} /** *The name of the directory and organizational unit (OU) to use to join the * fleet to a Microsoft Active Directory domain.
*/ inline Fleet& WithDomainJoinInfo(DomainJoinInfo&& value) { SetDomainJoinInfo(std::move(value)); return *this;} /** *The amount of time that users can be idle (inactive) before they are
* disconnected from their streaming session and the
* DisconnectTimeoutInSeconds
time interval begins. Users are notified
* before they are disconnected due to inactivity. If users try to reconnect to the
* streaming session before the time interval specified in
* DisconnectTimeoutInSeconds
elapses, they are connected to their
* previous session. Users are considered idle when they stop providing keyboard or
* mouse input during their streaming session. File uploads and downloads, audio
* in, audio out, and pixels changing do not qualify as user activity. If users
* continue to be idle after the time interval in
* IdleDisconnectTimeoutInSeconds
elapses, they are disconnected.
To prevent users from being disconnected due to inactivity, specify a value * of 0. Otherwise, specify a value between 60 and 3600. The default value is * 0.
If you enable this feature, we recommend that you specify a * value that corresponds exactly to a whole number of minutes (for example, 60, * 120, and 180). If you don't do this, the value is rounded to the nearest minute. * For example, if you specify a value of 70, users are disconnected after 1 minute * of inactivity. If you specify a value that is at the midpoint between two * different minutes, the value is rounded up. For example, if you specify a value * of 90, users are disconnected after 2 minutes of inactivity.
*/ inline int GetIdleDisconnectTimeoutInSeconds() const{ return m_idleDisconnectTimeoutInSeconds; } /** *The amount of time that users can be idle (inactive) before they are
* disconnected from their streaming session and the
* DisconnectTimeoutInSeconds
time interval begins. Users are notified
* before they are disconnected due to inactivity. If users try to reconnect to the
* streaming session before the time interval specified in
* DisconnectTimeoutInSeconds
elapses, they are connected to their
* previous session. Users are considered idle when they stop providing keyboard or
* mouse input during their streaming session. File uploads and downloads, audio
* in, audio out, and pixels changing do not qualify as user activity. If users
* continue to be idle after the time interval in
* IdleDisconnectTimeoutInSeconds
elapses, they are disconnected.
To prevent users from being disconnected due to inactivity, specify a value * of 0. Otherwise, specify a value between 60 and 3600. The default value is * 0.
If you enable this feature, we recommend that you specify a * value that corresponds exactly to a whole number of minutes (for example, 60, * 120, and 180). If you don't do this, the value is rounded to the nearest minute. * For example, if you specify a value of 70, users are disconnected after 1 minute * of inactivity. If you specify a value that is at the midpoint between two * different minutes, the value is rounded up. For example, if you specify a value * of 90, users are disconnected after 2 minutes of inactivity.
*/ inline bool IdleDisconnectTimeoutInSecondsHasBeenSet() const { return m_idleDisconnectTimeoutInSecondsHasBeenSet; } /** *The amount of time that users can be idle (inactive) before they are
* disconnected from their streaming session and the
* DisconnectTimeoutInSeconds
time interval begins. Users are notified
* before they are disconnected due to inactivity. If users try to reconnect to the
* streaming session before the time interval specified in
* DisconnectTimeoutInSeconds
elapses, they are connected to their
* previous session. Users are considered idle when they stop providing keyboard or
* mouse input during their streaming session. File uploads and downloads, audio
* in, audio out, and pixels changing do not qualify as user activity. If users
* continue to be idle after the time interval in
* IdleDisconnectTimeoutInSeconds
elapses, they are disconnected.
To prevent users from being disconnected due to inactivity, specify a value * of 0. Otherwise, specify a value between 60 and 3600. The default value is * 0.
If you enable this feature, we recommend that you specify a * value that corresponds exactly to a whole number of minutes (for example, 60, * 120, and 180). If you don't do this, the value is rounded to the nearest minute. * For example, if you specify a value of 70, users are disconnected after 1 minute * of inactivity. If you specify a value that is at the midpoint between two * different minutes, the value is rounded up. For example, if you specify a value * of 90, users are disconnected after 2 minutes of inactivity.
*/ inline void SetIdleDisconnectTimeoutInSeconds(int value) { m_idleDisconnectTimeoutInSecondsHasBeenSet = true; m_idleDisconnectTimeoutInSeconds = value; } /** *The amount of time that users can be idle (inactive) before they are
* disconnected from their streaming session and the
* DisconnectTimeoutInSeconds
time interval begins. Users are notified
* before they are disconnected due to inactivity. If users try to reconnect to the
* streaming session before the time interval specified in
* DisconnectTimeoutInSeconds
elapses, they are connected to their
* previous session. Users are considered idle when they stop providing keyboard or
* mouse input during their streaming session. File uploads and downloads, audio
* in, audio out, and pixels changing do not qualify as user activity. If users
* continue to be idle after the time interval in
* IdleDisconnectTimeoutInSeconds
elapses, they are disconnected.
To prevent users from being disconnected due to inactivity, specify a value * of 0. Otherwise, specify a value between 60 and 3600. The default value is * 0.
If you enable this feature, we recommend that you specify a * value that corresponds exactly to a whole number of minutes (for example, 60, * 120, and 180). If you don't do this, the value is rounded to the nearest minute. * For example, if you specify a value of 70, users are disconnected after 1 minute * of inactivity. If you specify a value that is at the midpoint between two * different minutes, the value is rounded up. For example, if you specify a value * of 90, users are disconnected after 2 minutes of inactivity.
*/ inline Fleet& WithIdleDisconnectTimeoutInSeconds(int value) { SetIdleDisconnectTimeoutInSeconds(value); return *this;} /** *The ARN of the IAM role that is applied to the fleet. To assume a role, the
* fleet instance calls the AWS Security Token Service (STS)
* AssumeRole
API operation and passes the ARN of the role to use. The
* operation creates a new session with temporary credentials. AppStream 2.0
* retrieves the temporary credentials and creates the
* appstream_machine_role credential profile on the instance.
For * more information, see Using * an IAM Role to Grant Permissions to Applications and Scripts Running on * AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 * Administration Guide.
*/ inline const Aws::String& GetIamRoleArn() const{ return m_iamRoleArn; } /** *The ARN of the IAM role that is applied to the fleet. To assume a role, the
* fleet instance calls the AWS Security Token Service (STS)
* AssumeRole
API operation and passes the ARN of the role to use. The
* operation creates a new session with temporary credentials. AppStream 2.0
* retrieves the temporary credentials and creates the
* appstream_machine_role credential profile on the instance.
For * more information, see Using * an IAM Role to Grant Permissions to Applications and Scripts Running on * AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 * Administration Guide.
*/ inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; } /** *The ARN of the IAM role that is applied to the fleet. To assume a role, the
* fleet instance calls the AWS Security Token Service (STS)
* AssumeRole
API operation and passes the ARN of the role to use. The
* operation creates a new session with temporary credentials. AppStream 2.0
* retrieves the temporary credentials and creates the
* appstream_machine_role credential profile on the instance.
For * more information, see Using * an IAM Role to Grant Permissions to Applications and Scripts Running on * AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 * Administration Guide.
*/ inline void SetIamRoleArn(const Aws::String& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = value; } /** *The ARN of the IAM role that is applied to the fleet. To assume a role, the
* fleet instance calls the AWS Security Token Service (STS)
* AssumeRole
API operation and passes the ARN of the role to use. The
* operation creates a new session with temporary credentials. AppStream 2.0
* retrieves the temporary credentials and creates the
* appstream_machine_role credential profile on the instance.
For * more information, see Using * an IAM Role to Grant Permissions to Applications and Scripts Running on * AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 * Administration Guide.
*/ inline void SetIamRoleArn(Aws::String&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::move(value); } /** *The ARN of the IAM role that is applied to the fleet. To assume a role, the
* fleet instance calls the AWS Security Token Service (STS)
* AssumeRole
API operation and passes the ARN of the role to use. The
* operation creates a new session with temporary credentials. AppStream 2.0
* retrieves the temporary credentials and creates the
* appstream_machine_role credential profile on the instance.
For * more information, see Using * an IAM Role to Grant Permissions to Applications and Scripts Running on * AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 * Administration Guide.
*/ inline void SetIamRoleArn(const char* value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn.assign(value); } /** *The ARN of the IAM role that is applied to the fleet. To assume a role, the
* fleet instance calls the AWS Security Token Service (STS)
* AssumeRole
API operation and passes the ARN of the role to use. The
* operation creates a new session with temporary credentials. AppStream 2.0
* retrieves the temporary credentials and creates the
* appstream_machine_role credential profile on the instance.
For * more information, see Using * an IAM Role to Grant Permissions to Applications and Scripts Running on * AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 * Administration Guide.
*/ inline Fleet& WithIamRoleArn(const Aws::String& value) { SetIamRoleArn(value); return *this;} /** *The ARN of the IAM role that is applied to the fleet. To assume a role, the
* fleet instance calls the AWS Security Token Service (STS)
* AssumeRole
API operation and passes the ARN of the role to use. The
* operation creates a new session with temporary credentials. AppStream 2.0
* retrieves the temporary credentials and creates the
* appstream_machine_role credential profile on the instance.
For * more information, see Using * an IAM Role to Grant Permissions to Applications and Scripts Running on * AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 * Administration Guide.
*/ inline Fleet& WithIamRoleArn(Aws::String&& value) { SetIamRoleArn(std::move(value)); return *this;} /** *The ARN of the IAM role that is applied to the fleet. To assume a role, the
* fleet instance calls the AWS Security Token Service (STS)
* AssumeRole
API operation and passes the ARN of the role to use. The
* operation creates a new session with temporary credentials. AppStream 2.0
* retrieves the temporary credentials and creates the
* appstream_machine_role credential profile on the instance.
For * more information, see Using * an IAM Role to Grant Permissions to Applications and Scripts Running on * AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 * Administration Guide.
*/ inline Fleet& WithIamRoleArn(const char* value) { SetIamRoleArn(value); return *this;} /** *The AppStream 2.0 view that is displayed to your users when they stream from
* the fleet. When APP
is specified, only the windows of applications
* opened by users display. When DESKTOP
is specified, the standard
* desktop that is provided by the operating system displays.
The default
* value is APP
.
The AppStream 2.0 view that is displayed to your users when they stream from
* the fleet. When APP
is specified, only the windows of applications
* opened by users display. When DESKTOP
is specified, the standard
* desktop that is provided by the operating system displays.
The default
* value is APP
.
The AppStream 2.0 view that is displayed to your users when they stream from
* the fleet. When APP
is specified, only the windows of applications
* opened by users display. When DESKTOP
is specified, the standard
* desktop that is provided by the operating system displays.
The default
* value is APP
.
The AppStream 2.0 view that is displayed to your users when they stream from
* the fleet. When APP
is specified, only the windows of applications
* opened by users display. When DESKTOP
is specified, the standard
* desktop that is provided by the operating system displays.
The default
* value is APP
.
The AppStream 2.0 view that is displayed to your users when they stream from
* the fleet. When APP
is specified, only the windows of applications
* opened by users display. When DESKTOP
is specified, the standard
* desktop that is provided by the operating system displays.
The default
* value is APP
.
The AppStream 2.0 view that is displayed to your users when they stream from
* the fleet. When APP
is specified, only the windows of applications
* opened by users display. When DESKTOP
is specified, the standard
* desktop that is provided by the operating system displays.
The default
* value is APP
.
The platform of the fleet.
*/ inline const PlatformType& GetPlatform() const{ return m_platform; } /** *The platform of the fleet.
*/ inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; } /** *The platform of the fleet.
*/ inline void SetPlatform(const PlatformType& value) { m_platformHasBeenSet = true; m_platform = value; } /** *The platform of the fleet.
*/ inline void SetPlatform(PlatformType&& value) { m_platformHasBeenSet = true; m_platform = std::move(value); } /** *The platform of the fleet.
*/ inline Fleet& WithPlatform(const PlatformType& value) { SetPlatform(value); return *this;} /** *The platform of the fleet.
*/ inline Fleet& WithPlatform(PlatformType&& value) { SetPlatform(std::move(value)); return *this;} /** *The maximum number of concurrent sessions for the fleet.
*/ inline int GetMaxConcurrentSessions() const{ return m_maxConcurrentSessions; } /** *The maximum number of concurrent sessions for the fleet.
*/ inline bool MaxConcurrentSessionsHasBeenSet() const { return m_maxConcurrentSessionsHasBeenSet; } /** *The maximum number of concurrent sessions for the fleet.
*/ inline void SetMaxConcurrentSessions(int value) { m_maxConcurrentSessionsHasBeenSet = true; m_maxConcurrentSessions = value; } /** *The maximum number of concurrent sessions for the fleet.
*/ inline Fleet& WithMaxConcurrentSessions(int value) { SetMaxConcurrentSessions(value); return *this;} /** *The USB device filter strings associated with the fleet.
*/ inline const Aws::VectorThe USB device filter strings associated with the fleet.
*/ inline bool UsbDeviceFilterStringsHasBeenSet() const { return m_usbDeviceFilterStringsHasBeenSet; } /** *The USB device filter strings associated with the fleet.
*/ inline void SetUsbDeviceFilterStrings(const Aws::VectorThe USB device filter strings associated with the fleet.
*/ inline void SetUsbDeviceFilterStrings(Aws::VectorThe USB device filter strings associated with the fleet.
*/ inline Fleet& WithUsbDeviceFilterStrings(const Aws::VectorThe USB device filter strings associated with the fleet.
*/ inline Fleet& WithUsbDeviceFilterStrings(Aws::VectorThe USB device filter strings associated with the fleet.
*/ inline Fleet& AddUsbDeviceFilterStrings(const Aws::String& value) { m_usbDeviceFilterStringsHasBeenSet = true; m_usbDeviceFilterStrings.push_back(value); return *this; } /** *The USB device filter strings associated with the fleet.
*/ inline Fleet& AddUsbDeviceFilterStrings(Aws::String&& value) { m_usbDeviceFilterStringsHasBeenSet = true; m_usbDeviceFilterStrings.push_back(std::move(value)); return *this; } /** *The USB device filter strings associated with the fleet.
*/ inline Fleet& AddUsbDeviceFilterStrings(const char* value) { m_usbDeviceFilterStringsHasBeenSet = true; m_usbDeviceFilterStrings.push_back(value); return *this; } /** *The S3 location of the session scripts configuration zip file. This only * applies to Elastic fleets.
*/ inline const S3Location& GetSessionScriptS3Location() const{ return m_sessionScriptS3Location; } /** *The S3 location of the session scripts configuration zip file. This only * applies to Elastic fleets.
*/ inline bool SessionScriptS3LocationHasBeenSet() const { return m_sessionScriptS3LocationHasBeenSet; } /** *The S3 location of the session scripts configuration zip file. This only * applies to Elastic fleets.
*/ inline void SetSessionScriptS3Location(const S3Location& value) { m_sessionScriptS3LocationHasBeenSet = true; m_sessionScriptS3Location = value; } /** *The S3 location of the session scripts configuration zip file. This only * applies to Elastic fleets.
*/ inline void SetSessionScriptS3Location(S3Location&& value) { m_sessionScriptS3LocationHasBeenSet = true; m_sessionScriptS3Location = std::move(value); } /** *The S3 location of the session scripts configuration zip file. This only * applies to Elastic fleets.
*/ inline Fleet& WithSessionScriptS3Location(const S3Location& value) { SetSessionScriptS3Location(value); return *this;} /** *The S3 location of the session scripts configuration zip file. This only * applies to Elastic fleets.
*/ inline Fleet& WithSessionScriptS3Location(S3Location&& value) { SetSessionScriptS3Location(std::move(value)); return *this;} private: Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_displayName; bool m_displayNameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_imageName; bool m_imageNameHasBeenSet = false; Aws::String m_imageArn; bool m_imageArnHasBeenSet = false; Aws::String m_instanceType; bool m_instanceTypeHasBeenSet = false; FleetType m_fleetType; bool m_fleetTypeHasBeenSet = false; ComputeCapacityStatus m_computeCapacityStatus; bool m_computeCapacityStatusHasBeenSet = false; int m_maxUserDurationInSeconds; bool m_maxUserDurationInSecondsHasBeenSet = false; int m_disconnectTimeoutInSeconds; bool m_disconnectTimeoutInSecondsHasBeenSet = false; FleetState m_state; bool m_stateHasBeenSet = false; VpcConfig m_vpcConfig; bool m_vpcConfigHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::Vector