Class AcmeTransport

java.lang.Object
zeroecho.pki.server.http.AcmeTransport
All Implemented Interfaces:
AutoCloseable

public final class AcmeTransport extends Object implements AutoCloseable
Lifecycle owner for the isolated optional ACME HTTPS listener.
  • Method Details

    • start

      public static AcmeTransport start(PkiServerConfiguration.AcmeListener configuration, ServerRealmContext realm, Clock clock, SecureRandom random, ClassLoader loader, BooleanSupplier ready)
      Starts one ACME listener over the lifecycle-owned realm and PKI session.
      Parameters:
      configuration - validated listener configuration
      realm - shared lifecycle-owned realm
      clock - authoritative protocol clock
      random - cryptographically secure entropy source
      loader - provider service class loader
      ready - readiness predicate checked by request handlers
      Returns:
      started ACME listener lifecycle owner
      Throws:
      IllegalStateException - if the listener cannot be initialized
    • start

      public static AcmeTransport start(PkiServerConfiguration.AcmeListener configuration, ServerRealmContext realm, Clock clock, SecureRandom random, ClassLoader loader, BooleanSupplier ready, Runnable reconciliationWake)
      Starts one ACME listener with a payload-free post-commit reconciliation wake callback.
      Parameters:
      configuration - validated listener configuration
      realm - shared lifecycle-owned realm
      clock - authoritative protocol clock
      random - cryptographically secure entropy source
      loader - provider service class loader
      ready - readiness predicate checked by request handlers
      reconciliationWake - callback invoked after a durable signing-state change
      Returns:
      started ACME listener lifecycle owner
      Throws:
      IllegalStateException - if the listener cannot be initialized
    • address

      public InetSocketAddress address()
      Returns the actual listener address, including an allocated ephemeral port.
      Returns:
      bound listener address
    • quiesce

      public void quiesce()
      Rejects new protocol and validation work.
    • shutdown

      public void shutdown(Duration graceful)
      Stops listener admission and all separately bounded ACME lanes.
      Parameters:
      graceful - maximum transport drain duration; whole seconds are passed to the listener
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable