Class RetentionOptions

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

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

Controls how long the cluster that you cut over from is kept after cutover completes. Specify exactly one of RetentionInHours or RetentionAction.

See Also:
  • Method Details

    • retentionInHours

      public final Integer retentionInHours()

      The number of hours to keep the cluster that you cut over from. The retention period starts when cutover completes. The minimum is 1 hour. In an UpdateClone response after cutover completes, this value is the number of hours remaining in the retention period, rounded up.

      Returns:
      The number of hours to keep the cluster that you cut over from. The retention period starts when cutover completes. The minimum is 1 hour. In an UpdateClone response after cutover completes, this value is the number of hours remaining in the retention period, rounded up.
    • retentionAction

      public final RetentionAction retentionAction()

      Ends the retention period now. Valid only after cutover completes.

      If the service returns an enum value that is not available in the current SDK version, retentionAction will return RetentionAction.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from retentionActionAsString().

      Returns:
      Ends the retention period now. Valid only after cutover completes.
      See Also:
    • retentionActionAsString

      public final String retentionActionAsString()

      Ends the retention period now. Valid only after cutover completes.

      If the service returns an enum value that is not available in the current SDK version, retentionAction will return RetentionAction.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from retentionActionAsString().

      Returns:
      Ends the retention period now. Valid only after cutover completes.
      See Also:
    • toBuilder

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

      public static RetentionOptions.Builder builder()
    • serializableBuilderClass

      public static Class<? extends RetentionOptions.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)
    • fromRetentionInHours

      public static RetentionOptions fromRetentionInHours(Integer retentionInHours)
      Create an instance of this class with retentionInHours() initialized to the given value.

      The number of hours to keep the cluster that you cut over from. The retention period starts when cutover completes. The minimum is 1 hour. In an UpdateClone response after cutover completes, this value is the number of hours remaining in the retention period, rounded up.

      Parameters:
      retentionInHours - The number of hours to keep the cluster that you cut over from. The retention period starts when cutover completes. The minimum is 1 hour. In an UpdateClone response after cutover completes, this value is the number of hours remaining in the retention period, rounded up.
    • fromRetentionAction

      public static RetentionOptions fromRetentionAction(String retentionAction)
      Create an instance of this class with retentionActionAsString() initialized to the given value.

      Ends the retention period now. Valid only after cutover completes.

      Parameters:
      retentionAction - Ends the retention period now. Valid only after cutover completes.
      See Also:
    • fromRetentionAction

      public static RetentionOptions fromRetentionAction(RetentionAction retentionAction)
      Create an instance of this class with retentionActionAsString() initialized to the given value.

      Ends the retention period now. Valid only after cutover completes.

      Parameters:
      retentionAction - Ends the retention period now. Valid only after cutover completes.
      See Also:
    • type

      public RetentionOptions.Type type()
      Retrieve an enum value representing which member of this object is populated. When this class is returned in a service response, this will be RetentionOptions.Type.UNKNOWN_TO_SDK_VERSION if the service returned a member that is only known to a newer SDK version. When this class is created directly in your code, this will be RetentionOptions.Type.UNKNOWN_TO_SDK_VERSION if zero members are set, and null if more than one member is set.
    • 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.