/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the recommendation options for an Amazon ECS service.
* See Also:
AWS
* API Reference
The memory size of the Amazon ECS service recommendation option.
*/ inline int GetMemory() const{ return m_memory; } /** *The memory size of the Amazon ECS service recommendation option.
*/ inline bool MemoryHasBeenSet() const { return m_memoryHasBeenSet; } /** *The memory size of the Amazon ECS service recommendation option.
*/ inline void SetMemory(int value) { m_memoryHasBeenSet = true; m_memory = value; } /** *The memory size of the Amazon ECS service recommendation option.
*/ inline ECSServiceRecommendationOption& WithMemory(int value) { SetMemory(value); return *this;} /** *The CPU size of the Amazon ECS service recommendation option.
*/ inline int GetCpu() const{ return m_cpu; } /** *The CPU size of the Amazon ECS service recommendation option.
*/ inline bool CpuHasBeenSet() const { return m_cpuHasBeenSet; } /** *The CPU size of the Amazon ECS service recommendation option.
*/ inline void SetCpu(int value) { m_cpuHasBeenSet = true; m_cpu = value; } /** *The CPU size of the Amazon ECS service recommendation option.
*/ inline ECSServiceRecommendationOption& WithCpu(int value) { SetCpu(value); return *this;} inline const SavingsOpportunity& GetSavingsOpportunity() const{ return m_savingsOpportunity; } inline bool SavingsOpportunityHasBeenSet() const { return m_savingsOpportunityHasBeenSet; } inline void SetSavingsOpportunity(const SavingsOpportunity& value) { m_savingsOpportunityHasBeenSet = true; m_savingsOpportunity = value; } inline void SetSavingsOpportunity(SavingsOpportunity&& value) { m_savingsOpportunityHasBeenSet = true; m_savingsOpportunity = std::move(value); } inline ECSServiceRecommendationOption& WithSavingsOpportunity(const SavingsOpportunity& value) { SetSavingsOpportunity(value); return *this;} inline ECSServiceRecommendationOption& WithSavingsOpportunity(SavingsOpportunity&& value) { SetSavingsOpportunity(std::move(value)); return *this;} /** *An array of objects that describe the projected utilization metrics of the * Amazon ECS service recommendation option.
*/ inline const Aws::VectorAn array of objects that describe the projected utilization metrics of the * Amazon ECS service recommendation option.
*/ inline bool ProjectedUtilizationMetricsHasBeenSet() const { return m_projectedUtilizationMetricsHasBeenSet; } /** *An array of objects that describe the projected utilization metrics of the * Amazon ECS service recommendation option.
*/ inline void SetProjectedUtilizationMetrics(const Aws::VectorAn array of objects that describe the projected utilization metrics of the * Amazon ECS service recommendation option.
*/ inline void SetProjectedUtilizationMetrics(Aws::VectorAn array of objects that describe the projected utilization metrics of the * Amazon ECS service recommendation option.
*/ inline ECSServiceRecommendationOption& WithProjectedUtilizationMetrics(const Aws::VectorAn array of objects that describe the projected utilization metrics of the * Amazon ECS service recommendation option.
*/ inline ECSServiceRecommendationOption& WithProjectedUtilizationMetrics(Aws::VectorAn array of objects that describe the projected utilization metrics of the * Amazon ECS service recommendation option.
*/ inline ECSServiceRecommendationOption& AddProjectedUtilizationMetrics(const ECSServiceProjectedUtilizationMetric& value) { m_projectedUtilizationMetricsHasBeenSet = true; m_projectedUtilizationMetrics.push_back(value); return *this; } /** *An array of objects that describe the projected utilization metrics of the * Amazon ECS service recommendation option.
*/ inline ECSServiceRecommendationOption& AddProjectedUtilizationMetrics(ECSServiceProjectedUtilizationMetric&& value) { m_projectedUtilizationMetricsHasBeenSet = true; m_projectedUtilizationMetrics.push_back(std::move(value)); return *this; } /** *The CPU and memory size recommendations for the containers within the task * of your Amazon ECS service.
*/ inline const Aws::VectorThe CPU and memory size recommendations for the containers within the task * of your Amazon ECS service.
*/ inline bool ContainerRecommendationsHasBeenSet() const { return m_containerRecommendationsHasBeenSet; } /** *The CPU and memory size recommendations for the containers within the task * of your Amazon ECS service.
*/ inline void SetContainerRecommendations(const Aws::VectorThe CPU and memory size recommendations for the containers within the task * of your Amazon ECS service.
*/ inline void SetContainerRecommendations(Aws::VectorThe CPU and memory size recommendations for the containers within the task * of your Amazon ECS service.
*/ inline ECSServiceRecommendationOption& WithContainerRecommendations(const Aws::VectorThe CPU and memory size recommendations for the containers within the task * of your Amazon ECS service.
*/ inline ECSServiceRecommendationOption& WithContainerRecommendations(Aws::VectorThe CPU and memory size recommendations for the containers within the task * of your Amazon ECS service.
*/ inline ECSServiceRecommendationOption& AddContainerRecommendations(const ContainerRecommendation& value) { m_containerRecommendationsHasBeenSet = true; m_containerRecommendations.push_back(value); return *this; } /** *The CPU and memory size recommendations for the containers within the task * of your Amazon ECS service.
*/ inline ECSServiceRecommendationOption& AddContainerRecommendations(ContainerRecommendation&& value) { m_containerRecommendationsHasBeenSet = true; m_containerRecommendations.push_back(std::move(value)); return *this; } private: int m_memory; bool m_memoryHasBeenSet = false; int m_cpu; bool m_cpuHasBeenSet = false; SavingsOpportunity m_savingsOpportunity; bool m_savingsOpportunityHasBeenSet = false; Aws::Vector