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

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

Validity specifies the period of time during which a certificate is valid. Validity can be expressed as an explicit date and time when the validity of a certificate starts or expires, or as a span of time after issuance, stated in days, months, or years. For more information, see Validity in RFC 5280.

Amazon Web Services Private CA API consumes the Validity data type differently in two distinct parameters of the IssueCertificate action. The required parameter IssueCertificate: Validity specifies the end of a certificate's validity period. The optional parameter IssueCertificate:ValidityNotBefore specifies a customized starting time for the validity period.

See Also:
  • Method Details

    • value

      public final Long value()

      A long integer interpreted according to the value of Type, below.

      Returns:
      A long integer interpreted according to the value of Type, below.
    • type

      public final ValidityPeriodType type()

      Determines how Amazon Web Services Private CA interprets the Value parameter, an integer. Supported validity types include those listed below. Type definitions with values include a sample input value and the resulting output.

      END_DATE: The specific date and time when the certificate will expire, expressed using UTCTime (YYMMDDHHMMSS) or GeneralizedTime (YYYYMMDDHHMMSS) format. When UTCTime is used, if the year field (YY) is greater than or equal to 50, the year is interpreted as 19YY. If the year field is less than 50, the year is interpreted as 20YY.

      • Sample input value: 491231235959 (UTCTime format)

      • Output expiration date/time: 12/31/2049 23:59:59

      ABSOLUTE: The specific date and time when the validity of a certificate will start or expire, expressed in seconds since the Unix Epoch.

      • Sample input value: 2524608000

      • Output expiration date/time: 01/01/2050 00:00:00

      DAYS, MONTHS, YEARS: The relative time from the moment of issuance until the certificate will expire, expressed in days, months, or years.

      Example if DAYS, issued on 10/12/2020 at 12:34:54 UTC:

      • Sample input value: 90

      • Output expiration date: 01/10/2020 12:34:54 UTC

      The minimum validity duration for a certificate using relative time (DAYS) is one day. The minimum validity for a certificate using absolute time (ABSOLUTE or END_DATE) is one second.

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

      Returns:
      Determines how Amazon Web Services Private CA interprets the Value parameter, an integer. Supported validity types include those listed below. Type definitions with values include a sample input value and the resulting output.

      END_DATE: The specific date and time when the certificate will expire, expressed using UTCTime (YYMMDDHHMMSS) or GeneralizedTime (YYYYMMDDHHMMSS) format. When UTCTime is used, if the year field (YY) is greater than or equal to 50, the year is interpreted as 19YY. If the year field is less than 50, the year is interpreted as 20YY.

      • Sample input value: 491231235959 (UTCTime format)

      • Output expiration date/time: 12/31/2049 23:59:59

      ABSOLUTE: The specific date and time when the validity of a certificate will start or expire, expressed in seconds since the Unix Epoch.

      • Sample input value: 2524608000

      • Output expiration date/time: 01/01/2050 00:00:00

      DAYS, MONTHS, YEARS: The relative time from the moment of issuance until the certificate will expire, expressed in days, months, or years.

      Example if DAYS, issued on 10/12/2020 at 12:34:54 UTC:

      • Sample input value: 90

      • Output expiration date: 01/10/2020 12:34:54 UTC

      The minimum validity duration for a certificate using relative time (DAYS) is one day. The minimum validity for a certificate using absolute time (ABSOLUTE or END_DATE) is one second.

      See Also:
    • typeAsString

      public final String typeAsString()

      Determines how Amazon Web Services Private CA interprets the Value parameter, an integer. Supported validity types include those listed below. Type definitions with values include a sample input value and the resulting output.

      END_DATE: The specific date and time when the certificate will expire, expressed using UTCTime (YYMMDDHHMMSS) or GeneralizedTime (YYYYMMDDHHMMSS) format. When UTCTime is used, if the year field (YY) is greater than or equal to 50, the year is interpreted as 19YY. If the year field is less than 50, the year is interpreted as 20YY.

      • Sample input value: 491231235959 (UTCTime format)

      • Output expiration date/time: 12/31/2049 23:59:59

      ABSOLUTE: The specific date and time when the validity of a certificate will start or expire, expressed in seconds since the Unix Epoch.

      • Sample input value: 2524608000

      • Output expiration date/time: 01/01/2050 00:00:00

      DAYS, MONTHS, YEARS: The relative time from the moment of issuance until the certificate will expire, expressed in days, months, or years.

      Example if DAYS, issued on 10/12/2020 at 12:34:54 UTC:

      • Sample input value: 90

      • Output expiration date: 01/10/2020 12:34:54 UTC

      The minimum validity duration for a certificate using relative time (DAYS) is one day. The minimum validity for a certificate using absolute time (ABSOLUTE or END_DATE) is one second.

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

      Returns:
      Determines how Amazon Web Services Private CA interprets the Value parameter, an integer. Supported validity types include those listed below. Type definitions with values include a sample input value and the resulting output.

      END_DATE: The specific date and time when the certificate will expire, expressed using UTCTime (YYMMDDHHMMSS) or GeneralizedTime (YYYYMMDDHHMMSS) format. When UTCTime is used, if the year field (YY) is greater than or equal to 50, the year is interpreted as 19YY. If the year field is less than 50, the year is interpreted as 20YY.

      • Sample input value: 491231235959 (UTCTime format)

      • Output expiration date/time: 12/31/2049 23:59:59

      ABSOLUTE: The specific date and time when the validity of a certificate will start or expire, expressed in seconds since the Unix Epoch.

      • Sample input value: 2524608000

      • Output expiration date/time: 01/01/2050 00:00:00

      DAYS, MONTHS, YEARS: The relative time from the moment of issuance until the certificate will expire, expressed in days, months, or years.

      Example if DAYS, issued on 10/12/2020 at 12:34:54 UTC:

      • Sample input value: 90

      • Output expiration date: 01/10/2020 12:34:54 UTC

      The minimum validity duration for a certificate using relative time (DAYS) is one day. The minimum validity for a certificate using absolute time (ABSOLUTE or END_DATE) is one second.

      See Also:
    • toBuilder

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

      public static Validity.Builder builder()
    • serializableBuilderClass

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