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

Provides information about the required target engine settings.

See * Also:

AWS * API Reference

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

The size of your target instance. Fleet Advisor calculates this value based * on your data collection type, such as total capacity and resource utilization. * Valid values include "total-capacity" and * "utilization".

*/ inline const Aws::String& GetInstanceSizingType() const{ return m_instanceSizingType; } /** *

The size of your target instance. Fleet Advisor calculates this value based * on your data collection type, such as total capacity and resource utilization. * Valid values include "total-capacity" and * "utilization".

*/ inline bool InstanceSizingTypeHasBeenSet() const { return m_instanceSizingTypeHasBeenSet; } /** *

The size of your target instance. Fleet Advisor calculates this value based * on your data collection type, such as total capacity and resource utilization. * Valid values include "total-capacity" and * "utilization".

*/ inline void SetInstanceSizingType(const Aws::String& value) { m_instanceSizingTypeHasBeenSet = true; m_instanceSizingType = value; } /** *

The size of your target instance. Fleet Advisor calculates this value based * on your data collection type, such as total capacity and resource utilization. * Valid values include "total-capacity" and * "utilization".

*/ inline void SetInstanceSizingType(Aws::String&& value) { m_instanceSizingTypeHasBeenSet = true; m_instanceSizingType = std::move(value); } /** *

The size of your target instance. Fleet Advisor calculates this value based * on your data collection type, such as total capacity and resource utilization. * Valid values include "total-capacity" and * "utilization".

*/ inline void SetInstanceSizingType(const char* value) { m_instanceSizingTypeHasBeenSet = true; m_instanceSizingType.assign(value); } /** *

The size of your target instance. Fleet Advisor calculates this value based * on your data collection type, such as total capacity and resource utilization. * Valid values include "total-capacity" and * "utilization".

*/ inline RecommendationSettings& WithInstanceSizingType(const Aws::String& value) { SetInstanceSizingType(value); return *this;} /** *

The size of your target instance. Fleet Advisor calculates this value based * on your data collection type, such as total capacity and resource utilization. * Valid values include "total-capacity" and * "utilization".

*/ inline RecommendationSettings& WithInstanceSizingType(Aws::String&& value) { SetInstanceSizingType(std::move(value)); return *this;} /** *

The size of your target instance. Fleet Advisor calculates this value based * on your data collection type, such as total capacity and resource utilization. * Valid values include "total-capacity" and * "utilization".

*/ inline RecommendationSettings& WithInstanceSizingType(const char* value) { SetInstanceSizingType(value); return *this;} /** *

The deployment option for your target engine. For production databases, Fleet * Advisor chooses Multi-AZ deployment. For development or test databases, Fleet * Advisor chooses Single-AZ deployment. Valid values include * "development" and "production".

*/ inline const Aws::String& GetWorkloadType() const{ return m_workloadType; } /** *

The deployment option for your target engine. For production databases, Fleet * Advisor chooses Multi-AZ deployment. For development or test databases, Fleet * Advisor chooses Single-AZ deployment. Valid values include * "development" and "production".

*/ inline bool WorkloadTypeHasBeenSet() const { return m_workloadTypeHasBeenSet; } /** *

The deployment option for your target engine. For production databases, Fleet * Advisor chooses Multi-AZ deployment. For development or test databases, Fleet * Advisor chooses Single-AZ deployment. Valid values include * "development" and "production".

*/ inline void SetWorkloadType(const Aws::String& value) { m_workloadTypeHasBeenSet = true; m_workloadType = value; } /** *

The deployment option for your target engine. For production databases, Fleet * Advisor chooses Multi-AZ deployment. For development or test databases, Fleet * Advisor chooses Single-AZ deployment. Valid values include * "development" and "production".

*/ inline void SetWorkloadType(Aws::String&& value) { m_workloadTypeHasBeenSet = true; m_workloadType = std::move(value); } /** *

The deployment option for your target engine. For production databases, Fleet * Advisor chooses Multi-AZ deployment. For development or test databases, Fleet * Advisor chooses Single-AZ deployment. Valid values include * "development" and "production".

*/ inline void SetWorkloadType(const char* value) { m_workloadTypeHasBeenSet = true; m_workloadType.assign(value); } /** *

The deployment option for your target engine. For production databases, Fleet * Advisor chooses Multi-AZ deployment. For development or test databases, Fleet * Advisor chooses Single-AZ deployment. Valid values include * "development" and "production".

*/ inline RecommendationSettings& WithWorkloadType(const Aws::String& value) { SetWorkloadType(value); return *this;} /** *

The deployment option for your target engine. For production databases, Fleet * Advisor chooses Multi-AZ deployment. For development or test databases, Fleet * Advisor chooses Single-AZ deployment. Valid values include * "development" and "production".

*/ inline RecommendationSettings& WithWorkloadType(Aws::String&& value) { SetWorkloadType(std::move(value)); return *this;} /** *

The deployment option for your target engine. For production databases, Fleet * Advisor chooses Multi-AZ deployment. For development or test databases, Fleet * Advisor chooses Single-AZ deployment. Valid values include * "development" and "production".

*/ inline RecommendationSettings& WithWorkloadType(const char* value) { SetWorkloadType(value); return *this;} private: Aws::String m_instanceSizingType; bool m_instanceSizingTypeHasBeenSet = false; Aws::String m_workloadType; bool m_workloadTypeHasBeenSet = false; }; } // namespace Model } // namespace DatabaseMigrationService } // namespace Aws