Class X509Attributes

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

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

Contains X.509 certificate attributes extracted from the certificate.

See Also:
  • Method Details

    • issuer

      public final DistinguishedName issuer()

      The distinguished name of the certificate issuer.

      Returns:
      The distinguished name of the certificate issuer.
    • subject

      public final DistinguishedName subject()

      The distinguished name of the certificate subject.

      Returns:
      The distinguished name of the certificate subject.
    • hasSubjectAlternativeNames

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

      public final List<GeneralName> subjectAlternativeNames()

      One or more domain names (subject alternative names) included in the certificate. This list contains the domain names that are bound to the public key that is contained in the certificate. The subject alternative names include the canonical domain name (CN) of the certificate and additional domain names that can be used to connect to the website.

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

      Returns:
      One or more domain names (subject alternative names) included in the certificate. This list contains the domain names that are bound to the public key that is contained in the certificate. The subject alternative names include the canonical domain name (CN) of the certificate and additional domain names that can be used to connect to the website.
    • extendedKeyUsages

      public final List<ExtendedKeyUsageName> extendedKeyUsages()

      Contains a list of Extended Key Usage X.509 v3 extension objects. Each object specifies a purpose for which the certificate public key can be used and consists of a name and an object identifier (OID).

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

      Returns:
      Contains a list of Extended Key Usage X.509 v3 extension objects. Each object specifies a purpose for which the certificate public key can be used and consists of a name and an object identifier (OID).
    • hasExtendedKeyUsages

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

      public final List<String> extendedKeyUsagesAsStrings()

      Contains a list of Extended Key Usage X.509 v3 extension objects. Each object specifies a purpose for which the certificate public key can be used and consists of a name and an object identifier (OID).

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

      Returns:
      Contains a list of Extended Key Usage X.509 v3 extension objects. Each object specifies a purpose for which the certificate public key can be used and consists of a name and an object identifier (OID).
    • keyAlgorithm

      public final KeyAlgorithm keyAlgorithm()

      The algorithm that was used to generate the public-private key pair.

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

      Returns:
      The algorithm that was used to generate the public-private key pair.
      See Also:
    • keyAlgorithmAsString

      public final String keyAlgorithmAsString()

      The algorithm that was used to generate the public-private key pair.

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

      Returns:
      The algorithm that was used to generate the public-private key pair.
      See Also:
    • keyUsages

      public final List<KeyUsageName> keyUsages()

      A list of Key Usage X.509 v3 extension objects. Each object is a string value that identifies the purpose of the public key contained in the certificate. Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, NON_REPUDIATION, and more.

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

      Returns:
      A list of Key Usage X.509 v3 extension objects. Each object is a string value that identifies the purpose of the public key contained in the certificate. Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, NON_REPUDIATION, and more.
    • hasKeyUsages

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

      public final List<String> keyUsagesAsStrings()

      A list of Key Usage X.509 v3 extension objects. Each object is a string value that identifies the purpose of the public key contained in the certificate. Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, NON_REPUDIATION, and more.

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

      Returns:
      A list of Key Usage X.509 v3 extension objects. Each object is a string value that identifies the purpose of the public key contained in the certificate. Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, NON_REPUDIATION, and more.
    • serialNumber

      public final String serialNumber()

      The serial number assigned by the certificate authority.

      Returns:
      The serial number assigned by the certificate authority.
    • notAfter

      public final Instant notAfter()

      The time after which the certificate is not valid.

      Returns:
      The time after which the certificate is not valid.
    • notBefore

      public final Instant notBefore()

      The time before which the certificate is not valid.

      Returns:
      The time before which the certificate is not valid.
    • toBuilder

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

      public static X509Attributes.Builder builder()
    • serializableBuilderClass

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