Class Session

java.lang.Object
org.shredzone.acme4j.Session

public class Session extends Object
A session stores the ACME server URI. It also tracks communication parameters.
  • Field Details

  • Constructor Details

  • Method Details

    • login

      public Login login(URL accountLocation, KeyPair accountKeyPair)
      Logs into an existing account.
      Parameters:
      accountLocation - Location URL of the account
      accountKeyPair - Account KeyPair
      Returns:
      Login to this account
    • getServerUri

      public URI getServerUri()
      Gets the ACME server URI of this session.
    • getNonce

      @Nullable public String getNonce()
      Gets the last base64 encoded nonce, or null if the session is new.
    • setNonce

      public void setNonce(@Nullable String nonce)
      Sets the base64 encoded nonce received by the server.
    • getLocale

      public Locale getLocale()
      Gets the current locale of this session.
    • setLocale

      public void setLocale(@Nullable Locale locale)
      Sets the locale used in this session. The locale is passed to the server as Accept-Language header. The server may respond with localized messages.
    • getProxy

      Deprecated.
      Use networkSettings().getProxy()
      Gets the Proxy to be used for connections.
    • setProxy

      @Deprecated public void setProxy(@Nullable Proxy proxy)
      Deprecated.
      Use networkSettings().setProxy(Proxy)
      Sets a Proxy that is to be used for all connections. If null, Proxy.NO_PROXY is used, which is also the default.
    • networkSettings

      Returns the current NetworkSettings.
      Returns:
      NetworkSettings
      Since:
      2.8
    • provider

      Returns the AcmeProvider that is used for this session.
      Returns:
      AcmeProvider
    • connect

      public Connection connect()
      Returns a new Connection to the ACME server.
      Returns:
      Connection
    • resourceUrl

      public URL resourceUrl(Resource resource) throws AcmeException
      Gets the URL of the given Resource. This may involve connecting to the server and getting a directory. The result is cached.
      Parameters:
      resource - Resource to get the URL of
      Returns:
      URL of the resource
      Throws:
      AcmeException - if the server does not offer the Resource
    • getMetadata

      Gets the metadata of the provider's directory. This may involve connecting to the server and getting a directory. The result is cached.
      Returns:
      Metadata. May contain no data, but is never null.
      Throws:
      AcmeException
    • getDirectoryLastModified

      Returns the date when the directory has been modified the last time.
      Returns:
      The last modification date of the directory, or null if unknown (directory has not been read yet or did not provide this information).
      Since:
      2.10
    • setDirectoryLastModified

      public void setDirectoryLastModified(@Nullable ZonedDateTime directoryLastModified)
      Sets the date when the directory has been modified the last time. Should only be invoked by AcmeProvider implementations.
      Parameters:
      directoryLastModified - The last modification date of the directory, or null if unknown (directory has not been read yet or did not provide this information).
      Since:
      2.10
    • getDirectoryExpires

      @Nullable public ZonedDateTime getDirectoryExpires()
      Returns the date when the current directory records will expire. A fresh copy of the directory will be fetched automatically after that instant.
      Returns:
      The expiration date, or null if the server did not provide this information.
      Since:
      2.10
    • setDirectoryExpires

      public void setDirectoryExpires(@Nullable ZonedDateTime directoryExpires)
      Sets the date when the current directory will expire. Should only be invoked by AcmeProvider implementations.
      Parameters:
      directoryExpires - Expiration date, or null if the server did not provide this information.
      Since:
      2.10
    • hasDirectory

      public boolean hasDirectory()
      Returns true if a directory is available. Should only be invoked by AcmeProvider implementations.
      Returns:
      true if a directory is available.
      Since:
      2.10