/** * 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 { /** *

Hardware specifications for the service that you want recommendations * for.

See Also:

AWS * API Reference

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

The Amazon EC2 hardware specifications that you want Amazon Web Services to * provide recommendations for.

*/ inline const EC2Specification& GetEC2Specification() const{ return m_eC2Specification; } /** *

The Amazon EC2 hardware specifications that you want Amazon Web Services to * provide recommendations for.

*/ inline bool EC2SpecificationHasBeenSet() const { return m_eC2SpecificationHasBeenSet; } /** *

The Amazon EC2 hardware specifications that you want Amazon Web Services to * provide recommendations for.

*/ inline void SetEC2Specification(const EC2Specification& value) { m_eC2SpecificationHasBeenSet = true; m_eC2Specification = value; } /** *

The Amazon EC2 hardware specifications that you want Amazon Web Services to * provide recommendations for.

*/ inline void SetEC2Specification(EC2Specification&& value) { m_eC2SpecificationHasBeenSet = true; m_eC2Specification = std::move(value); } /** *

The Amazon EC2 hardware specifications that you want Amazon Web Services to * provide recommendations for.

*/ inline ServiceSpecification& WithEC2Specification(const EC2Specification& value) { SetEC2Specification(value); return *this;} /** *

The Amazon EC2 hardware specifications that you want Amazon Web Services to * provide recommendations for.

*/ inline ServiceSpecification& WithEC2Specification(EC2Specification&& value) { SetEC2Specification(std::move(value)); return *this;} private: EC2Specification m_eC2Specification; bool m_eC2SpecificationHasBeenSet = false; }; } // namespace Model } // namespace CostExplorer } // namespace Aws