Class SavingsPlansPurchaseAnalysisDetails

java.lang.Object
software.amazon.awssdk.services.costexplorer.model.SavingsPlansPurchaseAnalysisDetails
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<SavingsPlansPurchaseAnalysisDetails.Builder,SavingsPlansPurchaseAnalysisDetails>

@Generated("software.amazon.awssdk:codegen") public final class SavingsPlansPurchaseAnalysisDetails extends Object implements SdkPojo, Serializable, ToCopyableBuilder<SavingsPlansPurchaseAnalysisDetails.Builder,SavingsPlansPurchaseAnalysisDetails>

Details about the Savings Plans purchase analysis.

See Also:
  • Method Details

    • currencyCode

      public final String currencyCode()

      The currency code used for the analysis.

      Returns:
      The currency code used for the analysis.
    • lookbackPeriodInHours

      public final String lookbackPeriodInHours()

      The lookback period in hours that's used to generate the analysis.

      Returns:
      The lookback period in hours that's used to generate the analysis.
    • currentAverageCoverage

      public final String currentAverageCoverage()

      The average value of hourly coverage over the lookback period.

      Returns:
      The average value of hourly coverage over the lookback period.
    • currentAverageHourlyOnDemandSpend

      public final String currentAverageHourlyOnDemandSpend()

      The average value of hourly On-Demand spend over the lookback period.

      Returns:
      The average value of hourly On-Demand spend over the lookback period.
    • currentMaximumHourlyOnDemandSpend

      public final String currentMaximumHourlyOnDemandSpend()

      The highest value of hourly On-Demand spend over the lookback period.

      Returns:
      The highest value of hourly On-Demand spend over the lookback period.
    • currentMinimumHourlyOnDemandSpend

      public final String currentMinimumHourlyOnDemandSpend()

      The lowest value of hourly On-Demand spend over the lookback period.

      Returns:
      The lowest value of hourly On-Demand spend over the lookback period.
    • currentOnDemandSpend

      public final String currentOnDemandSpend()

      The current total On-Demand spend over the lookback period.

      Returns:
      The current total On-Demand spend over the lookback period.
    • existingHourlyCommitment

      public final String existingHourlyCommitment()

      The existing hourly commitment for the Savings Plan type.

      Returns:
      The existing hourly commitment for the Savings Plan type.
    • hourlyCommitmentToPurchase

      public final String hourlyCommitmentToPurchase()

      The recommended or custom hourly commitment.

      Returns:
      The recommended or custom hourly commitment.
    • estimatedAverageCoverage

      public final String estimatedAverageCoverage()

      The estimated coverage of the Savings Plan.

      Returns:
      The estimated coverage of the Savings Plan.
    • estimatedAverageUtilization

      public final String estimatedAverageUtilization()

      The estimated utilization of the Savings Plan.

      Returns:
      The estimated utilization of the Savings Plan.
    • estimatedMonthlySavingsAmount

      public final String estimatedMonthlySavingsAmount()

      The estimated monthly savings amount based on the Savings Plan.

      Returns:
      The estimated monthly savings amount based on the Savings Plan.
    • estimatedOnDemandCost

      public final String estimatedOnDemandCost()

      The remaining On-Demand cost estimated to not be covered by the Savings Plan over the length of the lookback period.

      Returns:
      The remaining On-Demand cost estimated to not be covered by the Savings Plan over the length of the lookback period.
    • estimatedOnDemandCostWithCurrentCommitment

      public final String estimatedOnDemandCostWithCurrentCommitment()

      The estimated On-Demand cost you expect with no additional commitment based on your usage of the selected time period and the Savings Plan you own.

      Returns:
      The estimated On-Demand cost you expect with no additional commitment based on your usage of the selected time period and the Savings Plan you own.
    • estimatedROI

      public final String estimatedROI()

      The estimated return on investment that's based on the Savings Plan and estimated savings. This is calculated as estimatedSavingsAmount/estimatedSPCost*100.

      Returns:
      The estimated return on investment that's based on the Savings Plan and estimated savings. This is calculated as estimatedSavingsAmount/estimatedSPCost*100.
    • estimatedSavingsAmount

      public final String estimatedSavingsAmount()

      The estimated savings amount that's based on the Savings Plan over the length of the lookback period.

      Returns:
      The estimated savings amount that's based on the Savings Plan over the length of the lookback period.
    • estimatedSavingsPercentage

      public final String estimatedSavingsPercentage()

      The estimated savings percentage relative to the total cost over the cost calculation lookback period.

      Returns:
      The estimated savings percentage relative to the total cost over the cost calculation lookback period.
    • estimatedCommitmentCost

      public final String estimatedCommitmentCost()

      The estimated cost of the Savings Plan over the length of the lookback period.

      Returns:
      The estimated cost of the Savings Plan over the length of the lookback period.
    • latestUsageTimestamp

      public final String latestUsageTimestamp()

      The date and time of the last hour that went into the analysis.

      Returns:
      The date and time of the last hour that went into the analysis.
    • upfrontCost

      public final String upfrontCost()

      The upfront cost of the Savings Plan based on the selected payment option.

      Returns:
      The upfront cost of the Savings Plan based on the selected payment option.
    • additionalMetadata

      public final String additionalMetadata()

      Additional metadata that might be applicable to the commitment.

      Returns:
      Additional metadata that might be applicable to the commitment.
    • hasMetricsOverLookbackPeriod

      public final boolean hasMetricsOverLookbackPeriod()
      For responses, this returns true if the service returned a value for the MetricsOverLookbackPeriod property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • metricsOverLookbackPeriod

      public final List<RecommendationDetailHourlyMetrics> metricsOverLookbackPeriod()

      The related hourly cost, coverage, and utilization metrics over the lookback period.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasMetricsOverLookbackPeriod() method.

      Returns:
      The related hourly cost, coverage, and utilization metrics over the lookback period.
    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<SavingsPlansPurchaseAnalysisDetails.Builder,SavingsPlansPurchaseAnalysisDetails>
      Returns:
      a builder for type T
    • builder

    • serializableBuilderClass

      public static Class<? extends SavingsPlansPurchaseAnalysisDetails.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      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.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.