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

How long a running instance either used a reservation or was * On-Demand.

See Also:

AWS * API Reference

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

The number of instance running hours that On-Demand Instances covered.

*/ inline const Aws::String& GetOnDemandHours() const{ return m_onDemandHours; } /** *

The number of instance running hours that On-Demand Instances covered.

*/ inline bool OnDemandHoursHasBeenSet() const { return m_onDemandHoursHasBeenSet; } /** *

The number of instance running hours that On-Demand Instances covered.

*/ inline void SetOnDemandHours(const Aws::String& value) { m_onDemandHoursHasBeenSet = true; m_onDemandHours = value; } /** *

The number of instance running hours that On-Demand Instances covered.

*/ inline void SetOnDemandHours(Aws::String&& value) { m_onDemandHoursHasBeenSet = true; m_onDemandHours = std::move(value); } /** *

The number of instance running hours that On-Demand Instances covered.

*/ inline void SetOnDemandHours(const char* value) { m_onDemandHoursHasBeenSet = true; m_onDemandHours.assign(value); } /** *

The number of instance running hours that On-Demand Instances covered.

*/ inline CoverageHours& WithOnDemandHours(const Aws::String& value) { SetOnDemandHours(value); return *this;} /** *

The number of instance running hours that On-Demand Instances covered.

*/ inline CoverageHours& WithOnDemandHours(Aws::String&& value) { SetOnDemandHours(std::move(value)); return *this;} /** *

The number of instance running hours that On-Demand Instances covered.

*/ inline CoverageHours& WithOnDemandHours(const char* value) { SetOnDemandHours(value); return *this;} /** *

The number of instance running hours that reservations covered.

*/ inline const Aws::String& GetReservedHours() const{ return m_reservedHours; } /** *

The number of instance running hours that reservations covered.

*/ inline bool ReservedHoursHasBeenSet() const { return m_reservedHoursHasBeenSet; } /** *

The number of instance running hours that reservations covered.

*/ inline void SetReservedHours(const Aws::String& value) { m_reservedHoursHasBeenSet = true; m_reservedHours = value; } /** *

The number of instance running hours that reservations covered.

*/ inline void SetReservedHours(Aws::String&& value) { m_reservedHoursHasBeenSet = true; m_reservedHours = std::move(value); } /** *

The number of instance running hours that reservations covered.

*/ inline void SetReservedHours(const char* value) { m_reservedHoursHasBeenSet = true; m_reservedHours.assign(value); } /** *

The number of instance running hours that reservations covered.

*/ inline CoverageHours& WithReservedHours(const Aws::String& value) { SetReservedHours(value); return *this;} /** *

The number of instance running hours that reservations covered.

*/ inline CoverageHours& WithReservedHours(Aws::String&& value) { SetReservedHours(std::move(value)); return *this;} /** *

The number of instance running hours that reservations covered.

*/ inline CoverageHours& WithReservedHours(const char* value) { SetReservedHours(value); return *this;} /** *

The total instance usage, in hours.

*/ inline const Aws::String& GetTotalRunningHours() const{ return m_totalRunningHours; } /** *

The total instance usage, in hours.

*/ inline bool TotalRunningHoursHasBeenSet() const { return m_totalRunningHoursHasBeenSet; } /** *

The total instance usage, in hours.

*/ inline void SetTotalRunningHours(const Aws::String& value) { m_totalRunningHoursHasBeenSet = true; m_totalRunningHours = value; } /** *

The total instance usage, in hours.

*/ inline void SetTotalRunningHours(Aws::String&& value) { m_totalRunningHoursHasBeenSet = true; m_totalRunningHours = std::move(value); } /** *

The total instance usage, in hours.

*/ inline void SetTotalRunningHours(const char* value) { m_totalRunningHoursHasBeenSet = true; m_totalRunningHours.assign(value); } /** *

The total instance usage, in hours.

*/ inline CoverageHours& WithTotalRunningHours(const Aws::String& value) { SetTotalRunningHours(value); return *this;} /** *

The total instance usage, in hours.

*/ inline CoverageHours& WithTotalRunningHours(Aws::String&& value) { SetTotalRunningHours(std::move(value)); return *this;} /** *

The total instance usage, in hours.

*/ inline CoverageHours& WithTotalRunningHours(const char* value) { SetTotalRunningHours(value); return *this;} /** *

The percentage of instance hours that a reservation covered.

*/ inline const Aws::String& GetCoverageHoursPercentage() const{ return m_coverageHoursPercentage; } /** *

The percentage of instance hours that a reservation covered.

*/ inline bool CoverageHoursPercentageHasBeenSet() const { return m_coverageHoursPercentageHasBeenSet; } /** *

The percentage of instance hours that a reservation covered.

*/ inline void SetCoverageHoursPercentage(const Aws::String& value) { m_coverageHoursPercentageHasBeenSet = true; m_coverageHoursPercentage = value; } /** *

The percentage of instance hours that a reservation covered.

*/ inline void SetCoverageHoursPercentage(Aws::String&& value) { m_coverageHoursPercentageHasBeenSet = true; m_coverageHoursPercentage = std::move(value); } /** *

The percentage of instance hours that a reservation covered.

*/ inline void SetCoverageHoursPercentage(const char* value) { m_coverageHoursPercentageHasBeenSet = true; m_coverageHoursPercentage.assign(value); } /** *

The percentage of instance hours that a reservation covered.

*/ inline CoverageHours& WithCoverageHoursPercentage(const Aws::String& value) { SetCoverageHoursPercentage(value); return *this;} /** *

The percentage of instance hours that a reservation covered.

*/ inline CoverageHours& WithCoverageHoursPercentage(Aws::String&& value) { SetCoverageHoursPercentage(std::move(value)); return *this;} /** *

The percentage of instance hours that a reservation covered.

*/ inline CoverageHours& WithCoverageHoursPercentage(const char* value) { SetCoverageHoursPercentage(value); return *this;} private: Aws::String m_onDemandHours; bool m_onDemandHoursHasBeenSet = false; Aws::String m_reservedHours; bool m_reservedHoursHasBeenSet = false; Aws::String m_totalRunningHours; bool m_totalRunningHoursHasBeenSet = false; Aws::String m_coverageHoursPercentage; bool m_coverageHoursPercentageHasBeenSet = false; }; } // namespace Model } // namespace CostExplorer } // namespace Aws