Class Metadata

java.lang.Object
org.shredzone.acme4j.Metadata

public class Metadata extends Object
A collection of metadata related to the CA provider.
  • Constructor Details

    • Metadata

      public Metadata(JSON meta)
      Creates a new Metadata instance.
      Parameters:
      meta - JSON map of metadata
  • Method Details

    • getTermsOfService

      Returns an URI of the current terms of service, or empty if not available.
    • getWebsite

      public Optional<URL> getWebsite()
      Returns an URL of a website providing more information about the ACME server. Empty if not available.
    • getCaaIdentities

      Returns a collection of hostnames, which the ACME server recognises as referring to itself for the purposes of CAA record validation. Empty if not available.
    • isExternalAccountRequired

      public boolean isExternalAccountRequired()
      Returns whether an external account is required by this CA.
    • isAutoRenewalEnabled

      public boolean isAutoRenewalEnabled()
      Returns whether the CA supports short-term auto-renewal of certificates.
      Since:
      2.3
    • getAutoRenewalMinLifetime

      Returns the minimum acceptable value for the maximum validity of a certificate before auto-renewal.
      Throws:
      AcmeNotSupportedException - if the server does not support auto-renewal.
      Since:
      2.3
    • getAutoRenewalMaxDuration

      Returns the maximum delta between auto-renewal end date and auto-renewal start date.
      Throws:
      AcmeNotSupportedException - if the server does not support auto-renewal.
      Since:
      2.3
    • isAutoRenewalGetAllowed

      public boolean isAutoRenewalGetAllowed()
      Returns whether the CA also allows to fetch STAR certificates via GET request.
      Throws:
      AcmeNotSupportedException - if the server does not support auto-renewal.
      Since:
      2.6
    • isProfileAllowed

      public boolean isProfileAllowed()
      Returns whether the CA supports the profile feature.
      Since:
      3.5.0
      Draft:
      This method is currently based on RFC draft draft-aaron-acme-profiles. It may be changed or removed without notice to reflect future changes to the draft. SemVer rules do not apply here.
    • isProfileAllowed

      public boolean isProfileAllowed(String profile)
      Returns whether the CA supports the requested profile.

      Also returns false if profiles are not allowed in general.

      Since:
      3.5.0
      Draft:
      This method is currently based on RFC draft draft-aaron-acme-profiles. It may be changed or removed without notice to reflect future changes to the draft. SemVer rules do not apply here.
    • getProfiles

      public Set<String> getProfiles()
      Returns all profiles supported by the CA. May be empty if the CA does not support profiles.
      Since:
      3.5.0
      Draft:
      This method is currently based on RFC draft draft-aaron-acme-profiles. It may be changed or removed without notice to reflect future changes to the draft. SemVer rules do not apply here.
    • getProfileDescription

      Returns a description of the requested profile. This can be a human-readable string or a URL linking to a documentation.

      Empty if the profile is not allowed.

      Since:
      3.5.0
      Draft:
      This method is currently based on RFC draft draft-aaron-acme-profiles. It may be changed or removed without notice to reflect future changes to the draft. SemVer rules do not apply here.
    • isSubdomainAuthAllowed

      public boolean isSubdomainAuthAllowed()
      Returns whether the CA supports subdomain auth according to RFC9444.
      Since:
      3.3.0
    • getJSON

      public JSON getJSON()
      Returns the JSON representation of the metadata. This is useful for reading proprietary metadata properties.