/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the compute-optimizer-2019-11-01.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ComputeOptimizer.Model
{
///
/// Describes a recommendation option for an Amazon Elastic Block Store (Amazon EBS) instance.
///
public partial class VolumeRecommendationOption
{
private VolumeConfiguration _configuration;
private double? _performanceRisk;
private int? _rank;
private SavingsOpportunity _savingsOpportunity;
///
/// Gets and sets the property Configuration.
///
/// An array of objects that describe a volume configuration.
///
///
public VolumeConfiguration Configuration
{
get { return this._configuration; }
set { this._configuration = value; }
}
// Check to see if Configuration property is set
internal bool IsSetConfiguration()
{
return this._configuration != null;
}
///
/// Gets and sets the property PerformanceRisk.
///
/// The performance risk of the volume recommendation option.
///
///
///
/// Performance risk is the likelihood of the recommended volume type meeting the performance
/// requirement of your workload.
///
///
///
/// The value ranges from 0
- 4
, with 0
meaning
/// that the recommended resource is predicted to always provide enough hardware capability.
/// The higher the performance risk is, the more likely you should validate whether the
/// recommendation will meet the performance requirements of your workload before migrating
/// your resource.
///
///
[AWSProperty(Min=0, Max=4)]
public double PerformanceRisk
{
get { return this._performanceRisk.GetValueOrDefault(); }
set { this._performanceRisk = value; }
}
// Check to see if PerformanceRisk property is set
internal bool IsSetPerformanceRisk()
{
return this._performanceRisk.HasValue;
}
///
/// Gets and sets the property Rank.
///
/// The rank of the volume recommendation option.
///
///
///
/// The top recommendation option is ranked as 1
.
///
///
public int Rank
{
get { return this._rank.GetValueOrDefault(); }
set { this._rank = value; }
}
// Check to see if Rank property is set
internal bool IsSetRank()
{
return this._rank.HasValue;
}
///
/// Gets and sets the property SavingsOpportunity.
///
/// An object that describes the savings opportunity for the EBS volume recommendation
/// option. Savings opportunity includes the estimated monthly savings amount and percentage.
///
///
public SavingsOpportunity SavingsOpportunity
{
get { return this._savingsOpportunity; }
set { this._savingsOpportunity = value; }
}
// Check to see if SavingsOpportunity property is set
internal bool IsSetSavingsOpportunity()
{
return this._savingsOpportunity != null;
}
}
}