/** * 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 AppStream { namespace Model { /** *

Describes the capacity status for a fleet.

See Also:

AWS * API Reference

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

The desired number of streaming instances.

*/ inline int GetDesired() const{ return m_desired; } /** *

The desired number of streaming instances.

*/ inline bool DesiredHasBeenSet() const { return m_desiredHasBeenSet; } /** *

The desired number of streaming instances.

*/ inline void SetDesired(int value) { m_desiredHasBeenSet = true; m_desired = value; } /** *

The desired number of streaming instances.

*/ inline ComputeCapacityStatus& WithDesired(int value) { SetDesired(value); return *this;} /** *

The total number of simultaneous streaming instances that are running.

*/ inline int GetRunning() const{ return m_running; } /** *

The total number of simultaneous streaming instances that are running.

*/ inline bool RunningHasBeenSet() const { return m_runningHasBeenSet; } /** *

The total number of simultaneous streaming instances that are running.

*/ inline void SetRunning(int value) { m_runningHasBeenSet = true; m_running = value; } /** *

The total number of simultaneous streaming instances that are running.

*/ inline ComputeCapacityStatus& WithRunning(int value) { SetRunning(value); return *this;} /** *

The number of instances in use for streaming.

*/ inline int GetInUse() const{ return m_inUse; } /** *

The number of instances in use for streaming.

*/ inline bool InUseHasBeenSet() const { return m_inUseHasBeenSet; } /** *

The number of instances in use for streaming.

*/ inline void SetInUse(int value) { m_inUseHasBeenSet = true; m_inUse = value; } /** *

The number of instances in use for streaming.

*/ inline ComputeCapacityStatus& WithInUse(int value) { SetInUse(value); return *this;} /** *

The number of currently available instances that can be used to stream * sessions.

*/ inline int GetAvailable() const{ return m_available; } /** *

The number of currently available instances that can be used to stream * sessions.

*/ inline bool AvailableHasBeenSet() const { return m_availableHasBeenSet; } /** *

The number of currently available instances that can be used to stream * sessions.

*/ inline void SetAvailable(int value) { m_availableHasBeenSet = true; m_available = value; } /** *

The number of currently available instances that can be used to stream * sessions.

*/ inline ComputeCapacityStatus& WithAvailable(int value) { SetAvailable(value); return *this;} private: int m_desired; bool m_desiredHasBeenSet = false; int m_running; bool m_runningHasBeenSet = false; int m_inUse; bool m_inUseHasBeenSet = false; int m_available; bool m_availableHasBeenSet = false; }; } // namespace Model } // namespace AppStream } // namespace Aws