/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace GameLift { namespace Model { /** *

Resource capacity settings. Fleet capacity is measured in Amazon EC2 * instances. Pending and terminating counts are non-zero when the fleet capacity * is adjusting to a scaling event or if access to resources is temporarily * affected.

See Also:

AWS * API Reference

*/ class EC2InstanceCounts { public: AWS_GAMELIFT_API EC2InstanceCounts(); AWS_GAMELIFT_API EC2InstanceCounts(Aws::Utils::Json::JsonView jsonValue); AWS_GAMELIFT_API EC2InstanceCounts& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_GAMELIFT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Ideal number of active instances. GameLift will always try to maintain the * desired number of instances. Capacity is scaled up or down by changing the * desired instances.

*/ inline int GetDESIRED() const{ return m_dESIRED; } /** *

Ideal number of active instances. GameLift will always try to maintain the * desired number of instances. Capacity is scaled up or down by changing the * desired instances.

*/ inline bool DESIREDHasBeenSet() const { return m_dESIREDHasBeenSet; } /** *

Ideal number of active instances. GameLift will always try to maintain the * desired number of instances. Capacity is scaled up or down by changing the * desired instances.

*/ inline void SetDESIRED(int value) { m_dESIREDHasBeenSet = true; m_dESIRED = value; } /** *

Ideal number of active instances. GameLift will always try to maintain the * desired number of instances. Capacity is scaled up or down by changing the * desired instances.

*/ inline EC2InstanceCounts& WithDESIRED(int value) { SetDESIRED(value); return *this;} /** *

The minimum instance count value allowed.

*/ inline int GetMINIMUM() const{ return m_mINIMUM; } /** *

The minimum instance count value allowed.

*/ inline bool MINIMUMHasBeenSet() const { return m_mINIMUMHasBeenSet; } /** *

The minimum instance count value allowed.

*/ inline void SetMINIMUM(int value) { m_mINIMUMHasBeenSet = true; m_mINIMUM = value; } /** *

The minimum instance count value allowed.

*/ inline EC2InstanceCounts& WithMINIMUM(int value) { SetMINIMUM(value); return *this;} /** *

The maximum instance count value allowed.

*/ inline int GetMAXIMUM() const{ return m_mAXIMUM; } /** *

The maximum instance count value allowed.

*/ inline bool MAXIMUMHasBeenSet() const { return m_mAXIMUMHasBeenSet; } /** *

The maximum instance count value allowed.

*/ inline void SetMAXIMUM(int value) { m_mAXIMUMHasBeenSet = true; m_mAXIMUM = value; } /** *

The maximum instance count value allowed.

*/ inline EC2InstanceCounts& WithMAXIMUM(int value) { SetMAXIMUM(value); return *this;} /** *

Number of instances that are starting but not yet active.

*/ inline int GetPENDING() const{ return m_pENDING; } /** *

Number of instances that are starting but not yet active.

*/ inline bool PENDINGHasBeenSet() const { return m_pENDINGHasBeenSet; } /** *

Number of instances that are starting but not yet active.

*/ inline void SetPENDING(int value) { m_pENDINGHasBeenSet = true; m_pENDING = value; } /** *

Number of instances that are starting but not yet active.

*/ inline EC2InstanceCounts& WithPENDING(int value) { SetPENDING(value); return *this;} /** *

Actual number of instances that are ready to host game sessions.

*/ inline int GetACTIVE() const{ return m_aCTIVE; } /** *

Actual number of instances that are ready to host game sessions.

*/ inline bool ACTIVEHasBeenSet() const { return m_aCTIVEHasBeenSet; } /** *

Actual number of instances that are ready to host game sessions.

*/ inline void SetACTIVE(int value) { m_aCTIVEHasBeenSet = true; m_aCTIVE = value; } /** *

Actual number of instances that are ready to host game sessions.

*/ inline EC2InstanceCounts& WithACTIVE(int value) { SetACTIVE(value); return *this;} /** *

Number of active instances that are not currently hosting a game session.

*/ inline int GetIDLE() const{ return m_iDLE; } /** *

Number of active instances that are not currently hosting a game session.

*/ inline bool IDLEHasBeenSet() const { return m_iDLEHasBeenSet; } /** *

Number of active instances that are not currently hosting a game session.

*/ inline void SetIDLE(int value) { m_iDLEHasBeenSet = true; m_iDLE = value; } /** *

Number of active instances that are not currently hosting a game session.

*/ inline EC2InstanceCounts& WithIDLE(int value) { SetIDLE(value); return *this;} /** *

Number of instances that are no longer active but haven't yet been * terminated.

*/ inline int GetTERMINATING() const{ return m_tERMINATING; } /** *

Number of instances that are no longer active but haven't yet been * terminated.

*/ inline bool TERMINATINGHasBeenSet() const { return m_tERMINATINGHasBeenSet; } /** *

Number of instances that are no longer active but haven't yet been * terminated.

*/ inline void SetTERMINATING(int value) { m_tERMINATINGHasBeenSet = true; m_tERMINATING = value; } /** *

Number of instances that are no longer active but haven't yet been * terminated.

*/ inline EC2InstanceCounts& WithTERMINATING(int value) { SetTERMINATING(value); return *this;} private: int m_dESIRED; bool m_dESIREDHasBeenSet = false; int m_mINIMUM; bool m_mINIMUMHasBeenSet = false; int m_mAXIMUM; bool m_mAXIMUMHasBeenSet = false; int m_pENDING; bool m_pENDINGHasBeenSet = false; int m_aCTIVE; bool m_aCTIVEHasBeenSet = false; int m_iDLE; bool m_iDLEHasBeenSet = false; int m_tERMINATING; bool m_tERMINATINGHasBeenSet = false; }; } // namespace Model } // namespace GameLift } // namespace Aws