Class RenewalTerm

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

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

Defines that on graceful expiration of the agreement (when the agreement ends on its pre-defined end date), a new agreement will be created using the accepted terms on the existing agreement. In other words, the agreement will be renewed. Presence of RenewalTerm in the offer document means that auto-renewal is allowed. The acceptor will have the option to accept or decline auto-renewal at the offer acceptance/agreement creation. The acceptor can also change this flag from True to False or False to True, within the limits set by LockoutPeriod and MaxRenewals. Setting the flag to True doesn't by itself guarantee that the agreement renews, because the proposer can also opt out.

See Also:
  • Method Details

    • type

      public final String type()

      Category of the term being updated.

      Returns:
      Category of the term being updated.
    • id

      public final String id()

      The unique identifier for the term.

      Returns:
      The unique identifier for the term.
    • configuration

      public final RenewalTermConfiguration configuration()

      Additional parameters specified by the acceptor while accepting the term.

      Returns:
      Additional parameters specified by the acceptor while accepting the term.
    • lockoutPeriod

      public final String lockoutPeriod()

      The renewal decision deadline, measured back from the end date of the agreement. This is the last day either party can opt in to or opt out of the renewal. The duration is represented in the ISO 8601 format in whole days (for example, P30D for 30 days or P60D for 60 days).

      The field is null when no renewal decision deadline is set. In that case, either party can change the auto-renewal decision up to the end date of the agreement.

      Returns:
      The renewal decision deadline, measured back from the end date of the agreement. This is the last day either party can opt in to or opt out of the renewal. The duration is represented in the ISO 8601 format in whole days (for example, P30D for 30 days or P60D for 60 days).

      The field is null when no renewal decision deadline is set. In that case, either party can change the auto-renewal decision up to the end date of the agreement.

    • maxRenewals

      public final Integer maxRenewals()

      The maximum number of times the agreement can be renewed. The field is null when the number of renewals is unlimited.

      After the agreement reaches this limit, it expires on its end date instead of renewing.

      Returns:
      The maximum number of times the agreement can be renewed. The field is null when the number of renewals is unlimited.

      After the agreement reaches this limit, it expires on its end date instead of renewing.

    • adjustmentDeadline

      public final String adjustmentDeadline()

      The date by which the proposer must finalize the price increase for the next renewal, measured back from the end date of the agreement. The duration is represented in the ISO 8601 format in whole days (for example, P30D for 30 days or P60D for 60 days).

      This field applies only when PriceIncrease is a PercentageRange. The field is null when PriceIncrease is a FixedPercentage, because the price increase is already fixed and there is nothing for the proposer to finalize. If the proposer doesn't finalize a value by the adjustment deadline, the DefaultValue of the range applies.

      AdjustmentDeadline must be greater than LockoutPeriod.

      Returns:
      The date by which the proposer must finalize the price increase for the next renewal, measured back from the end date of the agreement. The duration is represented in the ISO 8601 format in whole days (for example, P30D for 30 days or P60D for 60 days).

      This field applies only when PriceIncrease is a PercentageRange. The field is null when PriceIncrease is a FixedPercentage, because the price increase is already fixed and there is nothing for the proposer to finalize. If the proposer doesn't finalize a value by the adjustment deadline, the DefaultValue of the range applies.

      AdjustmentDeadline must be greater than LockoutPeriod.

    • priceIncrease

      public final PriceIncrease priceIncrease()

      The price increase that is applied each time the agreement renews. The field is null when the price doesn't change at renewal.

      Returns:
      The price increase that is applied each time the agreement renews. The field is null when the price doesn't change at renewal.
    • hasTermTemplates

      public final boolean hasTermTemplates()
      For responses, this returns true if the service returned a value for the TermTemplates 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.
    • termTemplates

      public final List<TermTemplate> termTemplates()

      Defines how specific terms change each time the agreement renews. The field is null when no terms change at renewal.

      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 hasTermTemplates() method.

      Returns:
      Defines how specific terms change each time the agreement renews. The field is null when no terms change at renewal.
    • toBuilder

      public RenewalTerm.Builder 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<RenewalTerm.Builder,RenewalTerm>
      Returns:
      a builder for type T
    • builder

      public static RenewalTerm.Builder builder()
    • serializableBuilderClass

      public static Class<? extends RenewalTerm.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.