Interface SniConfig

All Superinterfaces:
Prototype.Api
All Known Implementing Classes:
SniConfig.BuilderBase.SniConfigImpl

public interface SniConfig extends Prototype.Api
Client-side TLS SNI configuration.
See Also:
  • Method Details

    • builder

      static SniConfig.Builder builder()
      Create a new fluent API builder to customize configuration.
      Returns:
      a new builder
    • builder

      static SniConfig.Builder builder(SniConfig instance)
      Create a new fluent API builder from an existing instance.
      Parameters:
      instance - an existing instance used as a base for the builder
      Returns:
      a builder based on an instance
    • create

      static SniConfig create(Config config)
      Create a new instance from configuration.
      Parameters:
      config - used to configure the new instance
      Returns:
      a new instance configured from configuration
    • create

      static SniConfig create()
      Create a new instance with default values.
      Returns:
      a new instance
    • mode

      SniMode mode()
      TLS peer host source mode for SNI and endpoint identification: uri-host, host-header, explicit, or disabled.

      DNS names are sent as SNI server names. IP literals are used for endpoint identification without a DNS SNI server name. disabled clears the SNI server name without disabling endpoint identification.

      Returns:
      SNI mode
    • host

      Optional<String> host()
      Explicit TLS peer host used when mode is explicit. DNS hosts are sent as SNI server names and used for endpoint identification. IP literals are used for endpoint identification without a DNS SNI server name.

      The host must be configured only when mode is explicit, and it must not include a port. Bracketed IPv6 literals are accepted and normalized to the host value without brackets.

      Returns:
      explicit TLS peer host