
com.amazonaws.services.costexplorer.model.ReservationPurchaseRecommendationDetail Maven / Gradle / Ivy
Show all versions of aws-java-sdk-costexplorer Show documentation
/*
* Copyright 2020-2025 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.
*/
package com.amazonaws.services.costexplorer.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;
/**
*
* Details about your recommended reservation purchase.
*
*
* @see AWS API Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class ReservationPurchaseRecommendationDetail implements Serializable, Cloneable, StructuredPojo {
/**
*
* The account that this Reserved Instance (RI) recommendation is for.
*
*/
private String accountId;
/**
*
* Details about the reservations that Amazon Web Services recommends that you purchase.
*
*/
private InstanceDetails instanceDetails;
/**
*
* The number of instances that Amazon Web Services recommends that you purchase.
*
*/
private String recommendedNumberOfInstancesToPurchase;
/**
*
* The number of normalized units that Amazon Web Services recommends that you purchase.
*
*/
private String recommendedNormalizedUnitsToPurchase;
/**
*
* The minimum number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*/
private String minimumNumberOfInstancesUsedPerHour;
/**
*
* The minimum number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*/
private String minimumNormalizedUnitsUsedPerHour;
/**
*
* The maximum number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*/
private String maximumNumberOfInstancesUsedPerHour;
/**
*
* The maximum number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*/
private String maximumNormalizedUnitsUsedPerHour;
/**
*
* The average number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*/
private String averageNumberOfInstancesUsedPerHour;
/**
*
* The average number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*/
private String averageNormalizedUnitsUsedPerHour;
/**
*
* The average utilization of your instances. Amazon Web Services uses this to calculate your recommended
* reservation purchases.
*
*/
private String averageUtilization;
/**
*
* How long Amazon Web Services estimates that it takes for this instance to start saving you money, in months.
*
*/
private String estimatedBreakEvenInMonths;
/**
*
* The currency code that Amazon Web Services used to calculate the costs for this instance.
*
*/
private String currencyCode;
/**
*
* How much Amazon Web Services estimates that this specific recommendation might save you in a month.
*
*/
private String estimatedMonthlySavingsAmount;
/**
*
* How much Amazon Web Services estimates that this specific recommendation might save you in a month, as a
* percentage of your overall costs.
*
*/
private String estimatedMonthlySavingsPercentage;
/**
*
* How much Amazon Web Services estimates that you spend on On-Demand Instances in a month.
*
*/
private String estimatedMonthlyOnDemandCost;
/**
*
* How much Amazon Web Services estimates that you might spend for all usage during the specified historical period
* if you had a reservation.
*
*/
private String estimatedReservationCostForLookbackPeriod;
/**
*
* How much purchasing this instance costs you upfront.
*
*/
private String upfrontCost;
/**
*
* How much purchasing this instance costs you on a monthly basis.
*
*/
private String recurringStandardMonthlyCost;
/**
*
* The account that this Reserved Instance (RI) recommendation is for.
*
*
* @param accountId
* The account that this Reserved Instance (RI) recommendation is for.
*/
public void setAccountId(String accountId) {
this.accountId = accountId;
}
/**
*
* The account that this Reserved Instance (RI) recommendation is for.
*
*
* @return The account that this Reserved Instance (RI) recommendation is for.
*/
public String getAccountId() {
return this.accountId;
}
/**
*
* The account that this Reserved Instance (RI) recommendation is for.
*
*
* @param accountId
* The account that this Reserved Instance (RI) recommendation is for.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withAccountId(String accountId) {
setAccountId(accountId);
return this;
}
/**
*
* Details about the reservations that Amazon Web Services recommends that you purchase.
*
*
* @param instanceDetails
* Details about the reservations that Amazon Web Services recommends that you purchase.
*/
public void setInstanceDetails(InstanceDetails instanceDetails) {
this.instanceDetails = instanceDetails;
}
/**
*
* Details about the reservations that Amazon Web Services recommends that you purchase.
*
*
* @return Details about the reservations that Amazon Web Services recommends that you purchase.
*/
public InstanceDetails getInstanceDetails() {
return this.instanceDetails;
}
/**
*
* Details about the reservations that Amazon Web Services recommends that you purchase.
*
*
* @param instanceDetails
* Details about the reservations that Amazon Web Services recommends that you purchase.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withInstanceDetails(InstanceDetails instanceDetails) {
setInstanceDetails(instanceDetails);
return this;
}
/**
*
* The number of instances that Amazon Web Services recommends that you purchase.
*
*
* @param recommendedNumberOfInstancesToPurchase
* The number of instances that Amazon Web Services recommends that you purchase.
*/
public void setRecommendedNumberOfInstancesToPurchase(String recommendedNumberOfInstancesToPurchase) {
this.recommendedNumberOfInstancesToPurchase = recommendedNumberOfInstancesToPurchase;
}
/**
*
* The number of instances that Amazon Web Services recommends that you purchase.
*
*
* @return The number of instances that Amazon Web Services recommends that you purchase.
*/
public String getRecommendedNumberOfInstancesToPurchase() {
return this.recommendedNumberOfInstancesToPurchase;
}
/**
*
* The number of instances that Amazon Web Services recommends that you purchase.
*
*
* @param recommendedNumberOfInstancesToPurchase
* The number of instances that Amazon Web Services recommends that you purchase.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withRecommendedNumberOfInstancesToPurchase(String recommendedNumberOfInstancesToPurchase) {
setRecommendedNumberOfInstancesToPurchase(recommendedNumberOfInstancesToPurchase);
return this;
}
/**
*
* The number of normalized units that Amazon Web Services recommends that you purchase.
*
*
* @param recommendedNormalizedUnitsToPurchase
* The number of normalized units that Amazon Web Services recommends that you purchase.
*/
public void setRecommendedNormalizedUnitsToPurchase(String recommendedNormalizedUnitsToPurchase) {
this.recommendedNormalizedUnitsToPurchase = recommendedNormalizedUnitsToPurchase;
}
/**
*
* The number of normalized units that Amazon Web Services recommends that you purchase.
*
*
* @return The number of normalized units that Amazon Web Services recommends that you purchase.
*/
public String getRecommendedNormalizedUnitsToPurchase() {
return this.recommendedNormalizedUnitsToPurchase;
}
/**
*
* The number of normalized units that Amazon Web Services recommends that you purchase.
*
*
* @param recommendedNormalizedUnitsToPurchase
* The number of normalized units that Amazon Web Services recommends that you purchase.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withRecommendedNormalizedUnitsToPurchase(String recommendedNormalizedUnitsToPurchase) {
setRecommendedNormalizedUnitsToPurchase(recommendedNormalizedUnitsToPurchase);
return this;
}
/**
*
* The minimum number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @param minimumNumberOfInstancesUsedPerHour
* The minimum number of instances that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*/
public void setMinimumNumberOfInstancesUsedPerHour(String minimumNumberOfInstancesUsedPerHour) {
this.minimumNumberOfInstancesUsedPerHour = minimumNumberOfInstancesUsedPerHour;
}
/**
*
* The minimum number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @return The minimum number of instances that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public String getMinimumNumberOfInstancesUsedPerHour() {
return this.minimumNumberOfInstancesUsedPerHour;
}
/**
*
* The minimum number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @param minimumNumberOfInstancesUsedPerHour
* The minimum number of instances that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withMinimumNumberOfInstancesUsedPerHour(String minimumNumberOfInstancesUsedPerHour) {
setMinimumNumberOfInstancesUsedPerHour(minimumNumberOfInstancesUsedPerHour);
return this;
}
/**
*
* The minimum number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @param minimumNormalizedUnitsUsedPerHour
* The minimum number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public void setMinimumNormalizedUnitsUsedPerHour(String minimumNormalizedUnitsUsedPerHour) {
this.minimumNormalizedUnitsUsedPerHour = minimumNormalizedUnitsUsedPerHour;
}
/**
*
* The minimum number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @return The minimum number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public String getMinimumNormalizedUnitsUsedPerHour() {
return this.minimumNormalizedUnitsUsedPerHour;
}
/**
*
* The minimum number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @param minimumNormalizedUnitsUsedPerHour
* The minimum number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withMinimumNormalizedUnitsUsedPerHour(String minimumNormalizedUnitsUsedPerHour) {
setMinimumNormalizedUnitsUsedPerHour(minimumNormalizedUnitsUsedPerHour);
return this;
}
/**
*
* The maximum number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @param maximumNumberOfInstancesUsedPerHour
* The maximum number of instances that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*/
public void setMaximumNumberOfInstancesUsedPerHour(String maximumNumberOfInstancesUsedPerHour) {
this.maximumNumberOfInstancesUsedPerHour = maximumNumberOfInstancesUsedPerHour;
}
/**
*
* The maximum number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @return The maximum number of instances that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public String getMaximumNumberOfInstancesUsedPerHour() {
return this.maximumNumberOfInstancesUsedPerHour;
}
/**
*
* The maximum number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @param maximumNumberOfInstancesUsedPerHour
* The maximum number of instances that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withMaximumNumberOfInstancesUsedPerHour(String maximumNumberOfInstancesUsedPerHour) {
setMaximumNumberOfInstancesUsedPerHour(maximumNumberOfInstancesUsedPerHour);
return this;
}
/**
*
* The maximum number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @param maximumNormalizedUnitsUsedPerHour
* The maximum number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public void setMaximumNormalizedUnitsUsedPerHour(String maximumNormalizedUnitsUsedPerHour) {
this.maximumNormalizedUnitsUsedPerHour = maximumNormalizedUnitsUsedPerHour;
}
/**
*
* The maximum number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @return The maximum number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public String getMaximumNormalizedUnitsUsedPerHour() {
return this.maximumNormalizedUnitsUsedPerHour;
}
/**
*
* The maximum number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @param maximumNormalizedUnitsUsedPerHour
* The maximum number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withMaximumNormalizedUnitsUsedPerHour(String maximumNormalizedUnitsUsedPerHour) {
setMaximumNormalizedUnitsUsedPerHour(maximumNormalizedUnitsUsedPerHour);
return this;
}
/**
*
* The average number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @param averageNumberOfInstancesUsedPerHour
* The average number of instances that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*/
public void setAverageNumberOfInstancesUsedPerHour(String averageNumberOfInstancesUsedPerHour) {
this.averageNumberOfInstancesUsedPerHour = averageNumberOfInstancesUsedPerHour;
}
/**
*
* The average number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @return The average number of instances that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public String getAverageNumberOfInstancesUsedPerHour() {
return this.averageNumberOfInstancesUsedPerHour;
}
/**
*
* The average number of instances that you used in an hour during the historical period. Amazon Web Services uses
* this to calculate your recommended reservation purchases.
*
*
* @param averageNumberOfInstancesUsedPerHour
* The average number of instances that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withAverageNumberOfInstancesUsedPerHour(String averageNumberOfInstancesUsedPerHour) {
setAverageNumberOfInstancesUsedPerHour(averageNumberOfInstancesUsedPerHour);
return this;
}
/**
*
* The average number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @param averageNormalizedUnitsUsedPerHour
* The average number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public void setAverageNormalizedUnitsUsedPerHour(String averageNormalizedUnitsUsedPerHour) {
this.averageNormalizedUnitsUsedPerHour = averageNormalizedUnitsUsedPerHour;
}
/**
*
* The average number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @return The average number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
*/
public String getAverageNormalizedUnitsUsedPerHour() {
return this.averageNormalizedUnitsUsedPerHour;
}
/**
*
* The average number of normalized units that you used in an hour during the historical period. Amazon Web Services
* uses this to calculate your recommended reservation purchases.
*
*
* @param averageNormalizedUnitsUsedPerHour
* The average number of normalized units that you used in an hour during the historical period. Amazon Web
* Services uses this to calculate your recommended reservation purchases.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withAverageNormalizedUnitsUsedPerHour(String averageNormalizedUnitsUsedPerHour) {
setAverageNormalizedUnitsUsedPerHour(averageNormalizedUnitsUsedPerHour);
return this;
}
/**
*
* The average utilization of your instances. Amazon Web Services uses this to calculate your recommended
* reservation purchases.
*
*
* @param averageUtilization
* The average utilization of your instances. Amazon Web Services uses this to calculate your recommended
* reservation purchases.
*/
public void setAverageUtilization(String averageUtilization) {
this.averageUtilization = averageUtilization;
}
/**
*
* The average utilization of your instances. Amazon Web Services uses this to calculate your recommended
* reservation purchases.
*
*
* @return The average utilization of your instances. Amazon Web Services uses this to calculate your recommended
* reservation purchases.
*/
public String getAverageUtilization() {
return this.averageUtilization;
}
/**
*
* The average utilization of your instances. Amazon Web Services uses this to calculate your recommended
* reservation purchases.
*
*
* @param averageUtilization
* The average utilization of your instances. Amazon Web Services uses this to calculate your recommended
* reservation purchases.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withAverageUtilization(String averageUtilization) {
setAverageUtilization(averageUtilization);
return this;
}
/**
*
* How long Amazon Web Services estimates that it takes for this instance to start saving you money, in months.
*
*
* @param estimatedBreakEvenInMonths
* How long Amazon Web Services estimates that it takes for this instance to start saving you money, in
* months.
*/
public void setEstimatedBreakEvenInMonths(String estimatedBreakEvenInMonths) {
this.estimatedBreakEvenInMonths = estimatedBreakEvenInMonths;
}
/**
*
* How long Amazon Web Services estimates that it takes for this instance to start saving you money, in months.
*
*
* @return How long Amazon Web Services estimates that it takes for this instance to start saving you money, in
* months.
*/
public String getEstimatedBreakEvenInMonths() {
return this.estimatedBreakEvenInMonths;
}
/**
*
* How long Amazon Web Services estimates that it takes for this instance to start saving you money, in months.
*
*
* @param estimatedBreakEvenInMonths
* How long Amazon Web Services estimates that it takes for this instance to start saving you money, in
* months.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withEstimatedBreakEvenInMonths(String estimatedBreakEvenInMonths) {
setEstimatedBreakEvenInMonths(estimatedBreakEvenInMonths);
return this;
}
/**
*
* The currency code that Amazon Web Services used to calculate the costs for this instance.
*
*
* @param currencyCode
* The currency code that Amazon Web Services used to calculate the costs for this instance.
*/
public void setCurrencyCode(String currencyCode) {
this.currencyCode = currencyCode;
}
/**
*
* The currency code that Amazon Web Services used to calculate the costs for this instance.
*
*
* @return The currency code that Amazon Web Services used to calculate the costs for this instance.
*/
public String getCurrencyCode() {
return this.currencyCode;
}
/**
*
* The currency code that Amazon Web Services used to calculate the costs for this instance.
*
*
* @param currencyCode
* The currency code that Amazon Web Services used to calculate the costs for this instance.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withCurrencyCode(String currencyCode) {
setCurrencyCode(currencyCode);
return this;
}
/**
*
* How much Amazon Web Services estimates that this specific recommendation might save you in a month.
*
*
* @param estimatedMonthlySavingsAmount
* How much Amazon Web Services estimates that this specific recommendation might save you in a month.
*/
public void setEstimatedMonthlySavingsAmount(String estimatedMonthlySavingsAmount) {
this.estimatedMonthlySavingsAmount = estimatedMonthlySavingsAmount;
}
/**
*
* How much Amazon Web Services estimates that this specific recommendation might save you in a month.
*
*
* @return How much Amazon Web Services estimates that this specific recommendation might save you in a month.
*/
public String getEstimatedMonthlySavingsAmount() {
return this.estimatedMonthlySavingsAmount;
}
/**
*
* How much Amazon Web Services estimates that this specific recommendation might save you in a month.
*
*
* @param estimatedMonthlySavingsAmount
* How much Amazon Web Services estimates that this specific recommendation might save you in a month.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withEstimatedMonthlySavingsAmount(String estimatedMonthlySavingsAmount) {
setEstimatedMonthlySavingsAmount(estimatedMonthlySavingsAmount);
return this;
}
/**
*
* How much Amazon Web Services estimates that this specific recommendation might save you in a month, as a
* percentage of your overall costs.
*
*
* @param estimatedMonthlySavingsPercentage
* How much Amazon Web Services estimates that this specific recommendation might save you in a month, as a
* percentage of your overall costs.
*/
public void setEstimatedMonthlySavingsPercentage(String estimatedMonthlySavingsPercentage) {
this.estimatedMonthlySavingsPercentage = estimatedMonthlySavingsPercentage;
}
/**
*
* How much Amazon Web Services estimates that this specific recommendation might save you in a month, as a
* percentage of your overall costs.
*
*
* @return How much Amazon Web Services estimates that this specific recommendation might save you in a month, as a
* percentage of your overall costs.
*/
public String getEstimatedMonthlySavingsPercentage() {
return this.estimatedMonthlySavingsPercentage;
}
/**
*
* How much Amazon Web Services estimates that this specific recommendation might save you in a month, as a
* percentage of your overall costs.
*
*
* @param estimatedMonthlySavingsPercentage
* How much Amazon Web Services estimates that this specific recommendation might save you in a month, as a
* percentage of your overall costs.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withEstimatedMonthlySavingsPercentage(String estimatedMonthlySavingsPercentage) {
setEstimatedMonthlySavingsPercentage(estimatedMonthlySavingsPercentage);
return this;
}
/**
*
* How much Amazon Web Services estimates that you spend on On-Demand Instances in a month.
*
*
* @param estimatedMonthlyOnDemandCost
* How much Amazon Web Services estimates that you spend on On-Demand Instances in a month.
*/
public void setEstimatedMonthlyOnDemandCost(String estimatedMonthlyOnDemandCost) {
this.estimatedMonthlyOnDemandCost = estimatedMonthlyOnDemandCost;
}
/**
*
* How much Amazon Web Services estimates that you spend on On-Demand Instances in a month.
*
*
* @return How much Amazon Web Services estimates that you spend on On-Demand Instances in a month.
*/
public String getEstimatedMonthlyOnDemandCost() {
return this.estimatedMonthlyOnDemandCost;
}
/**
*
* How much Amazon Web Services estimates that you spend on On-Demand Instances in a month.
*
*
* @param estimatedMonthlyOnDemandCost
* How much Amazon Web Services estimates that you spend on On-Demand Instances in a month.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withEstimatedMonthlyOnDemandCost(String estimatedMonthlyOnDemandCost) {
setEstimatedMonthlyOnDemandCost(estimatedMonthlyOnDemandCost);
return this;
}
/**
*
* How much Amazon Web Services estimates that you might spend for all usage during the specified historical period
* if you had a reservation.
*
*
* @param estimatedReservationCostForLookbackPeriod
* How much Amazon Web Services estimates that you might spend for all usage during the specified historical
* period if you had a reservation.
*/
public void setEstimatedReservationCostForLookbackPeriod(String estimatedReservationCostForLookbackPeriod) {
this.estimatedReservationCostForLookbackPeriod = estimatedReservationCostForLookbackPeriod;
}
/**
*
* How much Amazon Web Services estimates that you might spend for all usage during the specified historical period
* if you had a reservation.
*
*
* @return How much Amazon Web Services estimates that you might spend for all usage during the specified historical
* period if you had a reservation.
*/
public String getEstimatedReservationCostForLookbackPeriod() {
return this.estimatedReservationCostForLookbackPeriod;
}
/**
*
* How much Amazon Web Services estimates that you might spend for all usage during the specified historical period
* if you had a reservation.
*
*
* @param estimatedReservationCostForLookbackPeriod
* How much Amazon Web Services estimates that you might spend for all usage during the specified historical
* period if you had a reservation.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withEstimatedReservationCostForLookbackPeriod(String estimatedReservationCostForLookbackPeriod) {
setEstimatedReservationCostForLookbackPeriod(estimatedReservationCostForLookbackPeriod);
return this;
}
/**
*
* How much purchasing this instance costs you upfront.
*
*
* @param upfrontCost
* How much purchasing this instance costs you upfront.
*/
public void setUpfrontCost(String upfrontCost) {
this.upfrontCost = upfrontCost;
}
/**
*
* How much purchasing this instance costs you upfront.
*
*
* @return How much purchasing this instance costs you upfront.
*/
public String getUpfrontCost() {
return this.upfrontCost;
}
/**
*
* How much purchasing this instance costs you upfront.
*
*
* @param upfrontCost
* How much purchasing this instance costs you upfront.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withUpfrontCost(String upfrontCost) {
setUpfrontCost(upfrontCost);
return this;
}
/**
*
* How much purchasing this instance costs you on a monthly basis.
*
*
* @param recurringStandardMonthlyCost
* How much purchasing this instance costs you on a monthly basis.
*/
public void setRecurringStandardMonthlyCost(String recurringStandardMonthlyCost) {
this.recurringStandardMonthlyCost = recurringStandardMonthlyCost;
}
/**
*
* How much purchasing this instance costs you on a monthly basis.
*
*
* @return How much purchasing this instance costs you on a monthly basis.
*/
public String getRecurringStandardMonthlyCost() {
return this.recurringStandardMonthlyCost;
}
/**
*
* How much purchasing this instance costs you on a monthly basis.
*
*
* @param recurringStandardMonthlyCost
* How much purchasing this instance costs you on a monthly basis.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ReservationPurchaseRecommendationDetail withRecurringStandardMonthlyCost(String recurringStandardMonthlyCost) {
setRecurringStandardMonthlyCost(recurringStandardMonthlyCost);
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getAccountId() != null)
sb.append("AccountId: ").append(getAccountId()).append(",");
if (getInstanceDetails() != null)
sb.append("InstanceDetails: ").append(getInstanceDetails()).append(",");
if (getRecommendedNumberOfInstancesToPurchase() != null)
sb.append("RecommendedNumberOfInstancesToPurchase: ").append(getRecommendedNumberOfInstancesToPurchase()).append(",");
if (getRecommendedNormalizedUnitsToPurchase() != null)
sb.append("RecommendedNormalizedUnitsToPurchase: ").append(getRecommendedNormalizedUnitsToPurchase()).append(",");
if (getMinimumNumberOfInstancesUsedPerHour() != null)
sb.append("MinimumNumberOfInstancesUsedPerHour: ").append(getMinimumNumberOfInstancesUsedPerHour()).append(",");
if (getMinimumNormalizedUnitsUsedPerHour() != null)
sb.append("MinimumNormalizedUnitsUsedPerHour: ").append(getMinimumNormalizedUnitsUsedPerHour()).append(",");
if (getMaximumNumberOfInstancesUsedPerHour() != null)
sb.append("MaximumNumberOfInstancesUsedPerHour: ").append(getMaximumNumberOfInstancesUsedPerHour()).append(",");
if (getMaximumNormalizedUnitsUsedPerHour() != null)
sb.append("MaximumNormalizedUnitsUsedPerHour: ").append(getMaximumNormalizedUnitsUsedPerHour()).append(",");
if (getAverageNumberOfInstancesUsedPerHour() != null)
sb.append("AverageNumberOfInstancesUsedPerHour: ").append(getAverageNumberOfInstancesUsedPerHour()).append(",");
if (getAverageNormalizedUnitsUsedPerHour() != null)
sb.append("AverageNormalizedUnitsUsedPerHour: ").append(getAverageNormalizedUnitsUsedPerHour()).append(",");
if (getAverageUtilization() != null)
sb.append("AverageUtilization: ").append(getAverageUtilization()).append(",");
if (getEstimatedBreakEvenInMonths() != null)
sb.append("EstimatedBreakEvenInMonths: ").append(getEstimatedBreakEvenInMonths()).append(",");
if (getCurrencyCode() != null)
sb.append("CurrencyCode: ").append(getCurrencyCode()).append(",");
if (getEstimatedMonthlySavingsAmount() != null)
sb.append("EstimatedMonthlySavingsAmount: ").append(getEstimatedMonthlySavingsAmount()).append(",");
if (getEstimatedMonthlySavingsPercentage() != null)
sb.append("EstimatedMonthlySavingsPercentage: ").append(getEstimatedMonthlySavingsPercentage()).append(",");
if (getEstimatedMonthlyOnDemandCost() != null)
sb.append("EstimatedMonthlyOnDemandCost: ").append(getEstimatedMonthlyOnDemandCost()).append(",");
if (getEstimatedReservationCostForLookbackPeriod() != null)
sb.append("EstimatedReservationCostForLookbackPeriod: ").append(getEstimatedReservationCostForLookbackPeriod()).append(",");
if (getUpfrontCost() != null)
sb.append("UpfrontCost: ").append(getUpfrontCost()).append(",");
if (getRecurringStandardMonthlyCost() != null)
sb.append("RecurringStandardMonthlyCost: ").append(getRecurringStandardMonthlyCost());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof ReservationPurchaseRecommendationDetail == false)
return false;
ReservationPurchaseRecommendationDetail other = (ReservationPurchaseRecommendationDetail) obj;
if (other.getAccountId() == null ^ this.getAccountId() == null)
return false;
if (other.getAccountId() != null && other.getAccountId().equals(this.getAccountId()) == false)
return false;
if (other.getInstanceDetails() == null ^ this.getInstanceDetails() == null)
return false;
if (other.getInstanceDetails() != null && other.getInstanceDetails().equals(this.getInstanceDetails()) == false)
return false;
if (other.getRecommendedNumberOfInstancesToPurchase() == null ^ this.getRecommendedNumberOfInstancesToPurchase() == null)
return false;
if (other.getRecommendedNumberOfInstancesToPurchase() != null
&& other.getRecommendedNumberOfInstancesToPurchase().equals(this.getRecommendedNumberOfInstancesToPurchase()) == false)
return false;
if (other.getRecommendedNormalizedUnitsToPurchase() == null ^ this.getRecommendedNormalizedUnitsToPurchase() == null)
return false;
if (other.getRecommendedNormalizedUnitsToPurchase() != null
&& other.getRecommendedNormalizedUnitsToPurchase().equals(this.getRecommendedNormalizedUnitsToPurchase()) == false)
return false;
if (other.getMinimumNumberOfInstancesUsedPerHour() == null ^ this.getMinimumNumberOfInstancesUsedPerHour() == null)
return false;
if (other.getMinimumNumberOfInstancesUsedPerHour() != null
&& other.getMinimumNumberOfInstancesUsedPerHour().equals(this.getMinimumNumberOfInstancesUsedPerHour()) == false)
return false;
if (other.getMinimumNormalizedUnitsUsedPerHour() == null ^ this.getMinimumNormalizedUnitsUsedPerHour() == null)
return false;
if (other.getMinimumNormalizedUnitsUsedPerHour() != null
&& other.getMinimumNormalizedUnitsUsedPerHour().equals(this.getMinimumNormalizedUnitsUsedPerHour()) == false)
return false;
if (other.getMaximumNumberOfInstancesUsedPerHour() == null ^ this.getMaximumNumberOfInstancesUsedPerHour() == null)
return false;
if (other.getMaximumNumberOfInstancesUsedPerHour() != null
&& other.getMaximumNumberOfInstancesUsedPerHour().equals(this.getMaximumNumberOfInstancesUsedPerHour()) == false)
return false;
if (other.getMaximumNormalizedUnitsUsedPerHour() == null ^ this.getMaximumNormalizedUnitsUsedPerHour() == null)
return false;
if (other.getMaximumNormalizedUnitsUsedPerHour() != null
&& other.getMaximumNormalizedUnitsUsedPerHour().equals(this.getMaximumNormalizedUnitsUsedPerHour()) == false)
return false;
if (other.getAverageNumberOfInstancesUsedPerHour() == null ^ this.getAverageNumberOfInstancesUsedPerHour() == null)
return false;
if (other.getAverageNumberOfInstancesUsedPerHour() != null
&& other.getAverageNumberOfInstancesUsedPerHour().equals(this.getAverageNumberOfInstancesUsedPerHour()) == false)
return false;
if (other.getAverageNormalizedUnitsUsedPerHour() == null ^ this.getAverageNormalizedUnitsUsedPerHour() == null)
return false;
if (other.getAverageNormalizedUnitsUsedPerHour() != null
&& other.getAverageNormalizedUnitsUsedPerHour().equals(this.getAverageNormalizedUnitsUsedPerHour()) == false)
return false;
if (other.getAverageUtilization() == null ^ this.getAverageUtilization() == null)
return false;
if (other.getAverageUtilization() != null && other.getAverageUtilization().equals(this.getAverageUtilization()) == false)
return false;
if (other.getEstimatedBreakEvenInMonths() == null ^ this.getEstimatedBreakEvenInMonths() == null)
return false;
if (other.getEstimatedBreakEvenInMonths() != null && other.getEstimatedBreakEvenInMonths().equals(this.getEstimatedBreakEvenInMonths()) == false)
return false;
if (other.getCurrencyCode() == null ^ this.getCurrencyCode() == null)
return false;
if (other.getCurrencyCode() != null && other.getCurrencyCode().equals(this.getCurrencyCode()) == false)
return false;
if (other.getEstimatedMonthlySavingsAmount() == null ^ this.getEstimatedMonthlySavingsAmount() == null)
return false;
if (other.getEstimatedMonthlySavingsAmount() != null
&& other.getEstimatedMonthlySavingsAmount().equals(this.getEstimatedMonthlySavingsAmount()) == false)
return false;
if (other.getEstimatedMonthlySavingsPercentage() == null ^ this.getEstimatedMonthlySavingsPercentage() == null)
return false;
if (other.getEstimatedMonthlySavingsPercentage() != null
&& other.getEstimatedMonthlySavingsPercentage().equals(this.getEstimatedMonthlySavingsPercentage()) == false)
return false;
if (other.getEstimatedMonthlyOnDemandCost() == null ^ this.getEstimatedMonthlyOnDemandCost() == null)
return false;
if (other.getEstimatedMonthlyOnDemandCost() != null && other.getEstimatedMonthlyOnDemandCost().equals(this.getEstimatedMonthlyOnDemandCost()) == false)
return false;
if (other.getEstimatedReservationCostForLookbackPeriod() == null ^ this.getEstimatedReservationCostForLookbackPeriod() == null)
return false;
if (other.getEstimatedReservationCostForLookbackPeriod() != null
&& other.getEstimatedReservationCostForLookbackPeriod().equals(this.getEstimatedReservationCostForLookbackPeriod()) == false)
return false;
if (other.getUpfrontCost() == null ^ this.getUpfrontCost() == null)
return false;
if (other.getUpfrontCost() != null && other.getUpfrontCost().equals(this.getUpfrontCost()) == false)
return false;
if (other.getRecurringStandardMonthlyCost() == null ^ this.getRecurringStandardMonthlyCost() == null)
return false;
if (other.getRecurringStandardMonthlyCost() != null && other.getRecurringStandardMonthlyCost().equals(this.getRecurringStandardMonthlyCost()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getAccountId() == null) ? 0 : getAccountId().hashCode());
hashCode = prime * hashCode + ((getInstanceDetails() == null) ? 0 : getInstanceDetails().hashCode());
hashCode = prime * hashCode + ((getRecommendedNumberOfInstancesToPurchase() == null) ? 0 : getRecommendedNumberOfInstancesToPurchase().hashCode());
hashCode = prime * hashCode + ((getRecommendedNormalizedUnitsToPurchase() == null) ? 0 : getRecommendedNormalizedUnitsToPurchase().hashCode());
hashCode = prime * hashCode + ((getMinimumNumberOfInstancesUsedPerHour() == null) ? 0 : getMinimumNumberOfInstancesUsedPerHour().hashCode());
hashCode = prime * hashCode + ((getMinimumNormalizedUnitsUsedPerHour() == null) ? 0 : getMinimumNormalizedUnitsUsedPerHour().hashCode());
hashCode = prime * hashCode + ((getMaximumNumberOfInstancesUsedPerHour() == null) ? 0 : getMaximumNumberOfInstancesUsedPerHour().hashCode());
hashCode = prime * hashCode + ((getMaximumNormalizedUnitsUsedPerHour() == null) ? 0 : getMaximumNormalizedUnitsUsedPerHour().hashCode());
hashCode = prime * hashCode + ((getAverageNumberOfInstancesUsedPerHour() == null) ? 0 : getAverageNumberOfInstancesUsedPerHour().hashCode());
hashCode = prime * hashCode + ((getAverageNormalizedUnitsUsedPerHour() == null) ? 0 : getAverageNormalizedUnitsUsedPerHour().hashCode());
hashCode = prime * hashCode + ((getAverageUtilization() == null) ? 0 : getAverageUtilization().hashCode());
hashCode = prime * hashCode + ((getEstimatedBreakEvenInMonths() == null) ? 0 : getEstimatedBreakEvenInMonths().hashCode());
hashCode = prime * hashCode + ((getCurrencyCode() == null) ? 0 : getCurrencyCode().hashCode());
hashCode = prime * hashCode + ((getEstimatedMonthlySavingsAmount() == null) ? 0 : getEstimatedMonthlySavingsAmount().hashCode());
hashCode = prime * hashCode + ((getEstimatedMonthlySavingsPercentage() == null) ? 0 : getEstimatedMonthlySavingsPercentage().hashCode());
hashCode = prime * hashCode + ((getEstimatedMonthlyOnDemandCost() == null) ? 0 : getEstimatedMonthlyOnDemandCost().hashCode());
hashCode = prime * hashCode
+ ((getEstimatedReservationCostForLookbackPeriod() == null) ? 0 : getEstimatedReservationCostForLookbackPeriod().hashCode());
hashCode = prime * hashCode + ((getUpfrontCost() == null) ? 0 : getUpfrontCost().hashCode());
hashCode = prime * hashCode + ((getRecurringStandardMonthlyCost() == null) ? 0 : getRecurringStandardMonthlyCost().hashCode());
return hashCode;
}
@Override
public ReservationPurchaseRecommendationDetail clone() {
try {
return (ReservationPurchaseRecommendationDetail) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
@com.amazonaws.annotation.SdkInternalApi
@Override
public void marshall(ProtocolMarshaller protocolMarshaller) {
com.amazonaws.services.costexplorer.model.transform.ReservationPurchaseRecommendationDetailMarshaller.getInstance().marshall(this, protocolMarshaller);
}
}