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

The list of processing statuses for Cost Management products for a specific * cost category.

See Also:

AWS * API Reference

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

The Cost Management product name of the applied status.

*/ inline const CostCategoryStatusComponent& GetComponent() const{ return m_component; } /** *

The Cost Management product name of the applied status.

*/ inline bool ComponentHasBeenSet() const { return m_componentHasBeenSet; } /** *

The Cost Management product name of the applied status.

*/ inline void SetComponent(const CostCategoryStatusComponent& value) { m_componentHasBeenSet = true; m_component = value; } /** *

The Cost Management product name of the applied status.

*/ inline void SetComponent(CostCategoryStatusComponent&& value) { m_componentHasBeenSet = true; m_component = std::move(value); } /** *

The Cost Management product name of the applied status.

*/ inline CostCategoryProcessingStatus& WithComponent(const CostCategoryStatusComponent& value) { SetComponent(value); return *this;} /** *

The Cost Management product name of the applied status.

*/ inline CostCategoryProcessingStatus& WithComponent(CostCategoryStatusComponent&& value) { SetComponent(std::move(value)); return *this;} /** *

The process status for a specific cost category.

*/ inline const CostCategoryStatus& GetStatus() const{ return m_status; } /** *

The process status for a specific cost category.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The process status for a specific cost category.

*/ inline void SetStatus(const CostCategoryStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The process status for a specific cost category.

*/ inline void SetStatus(CostCategoryStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The process status for a specific cost category.

*/ inline CostCategoryProcessingStatus& WithStatus(const CostCategoryStatus& value) { SetStatus(value); return *this;} /** *

The process status for a specific cost category.

*/ inline CostCategoryProcessingStatus& WithStatus(CostCategoryStatus&& value) { SetStatus(std::move(value)); return *this;} private: CostCategoryStatusComponent m_component; bool m_componentHasBeenSet = false; CostCategoryStatus m_status; bool m_statusHasBeenSet = false; }; } // namespace Model } // namespace CostExplorer } // namespace Aws